linux中防火墙的配置
1.首先根据自己的系统 安装防火墙
在 CentOS 或 RHEL 系统中,firewalld
通常默认已经安装。若你不确定是否安装或者需要重新安装,可通过以下命令操作:
# 检查是否安装
rpm -q firewalld
# 若未安装,使用以下命令安装
sudo yum install firewalld
# 安装完成后,启动并设置开机自启
sudo systemctl start firewalld
sudo systemctl enable firewalld
Ubuntu 和 Debian 默认使用 ufw
作为防火墙管理工具,不过也能安装 firewalld
。可以使用以下命令来安装:
# 添加 EPEL 源
sudo apt-get update
sudo apt-get install firewalld
下面介绍如何使用
1.设置开启自启动
可以使用 systemctl
命令来设置 firewalld
开机自启,在终端输入以下命令:
sudo systemctl enable firewalld
查询是否正在运行
可以使用 systemctl
命令查看 firewalld
服务的运行状态,在终端输入以下命令:
sudo systemctl status firewalld
使用 firewalld(适用于 CentOS 7 及以上版本、Fedora 等)
开启端口
# 开启端口,以开启 8080 端口为例
sudo firewall-cmd --zone=public --add-port=8080/tcp --permanent
# 重新加载防火墙规则
sudo firewall-cmd --reload
就比如如果你下载了数据库想要让你的防火墙不要拦截3306 就把8080换成3306即可 必须输入重新加载防火墙规则 这段代码 不输入将不会生效
关闭端口
# 关闭端口,以关闭 8080 端口为例
sudo firewall-cmd --zone=public --remove-port=8080/tcp --permanent
# 重新加载防火墙规则
sudo firewall-cmd --reload
查看开放的端口
sudo firewall-cmd --zone=public --list-ports
注:详细解释一下这几个命令
sudo 用于以超级管理员权限执行命令 防火墙一般属于系统级的操作 ,通常要用超级管理员的权限
filewall-cmd 防火墙的命令行管理工具 用于配置和管理防火墙的规则
--zone=public filewall 采用区域来管理防火墙规则 ,不用的区域可以设置不同的安全就级别 public 就是公共网络
--add-port=8080/tcp 就是添加一个开放端口的规则 tcp是指传输层协议
--permanent 表示是永久性的 --remove 与 --add相反