一、基本语法
# firewall-cmd 【选项】 命令 常见选项有: --list-all:列出区域的所有已存在的规则 --reload:重新加载防火墙配置文件 --zone:指定要操作的区域(如 Public/DMZ/Trusted/Block等) --add-port:添加端口,没有指定操作区域的话,默认为Public区域 --remove-port:移除端口,没有指定操作区域的话,默认为Public区域 --add-service:添加服务,没有指定操作区域的话,默认为Public区域 --remove-service:移除服务,没有指定操作区域的话,默认为Public区域 --permanent:使配置永久生效(包括重启) ### 列出所有可用的区域 # firewall-cmd --get-zones block dmz drop external home internal nm-shared public trusted work 各区域功能说明如下: ### block:用于阻止特定流量或访问 ### dmz:常用于放置对外提供服务的服务器,与内部网络隔离,比如web网站,ftp网站等 ### drop:通常用于丢弃不符合安全策略的数据包 ### external:表示外部网络,可能是互联网或其他外部连接 ### home:适用于家庭网络环境 ### internal:用于内部网络,保护敏感信息和资源 ### nm-shared:可能用于共享网络资源的区域 ### public:提供公共访问的区域,如网站等 ### trusted:表示信任的区域,通常包含受信任的设备或用户 ### work:适用于工作场所的网络区域
二、查看firewalld是否运行
# systemctl status firewalld ● firewalld.service - firewalld - dynamic firewall daemon Loaded: loaded (/usr/lib/systemd/system/firewalld.service; enabled; preset: enabled) Active: active (running) since Sat 2024-11-23 14:10:32 CST; 2 weeks 0 days ago Docs: man:firewalld(1) Main PID: 1303 (firewalld) Tasks: 3 (limit: 1235012) Memory: 46.8M CPU: 4.178s CGroup: /system.slice/firewalld.service └─1303 /usr/bin/python3 -s /usr/sbin/firewalld --nofork --nopid Nov 23 14:10:30 jyjf241 systemd[1]: Starting firewalld - dynamic firewall daemon... Nov 23 14:10:32 jyjf241 systemd[1]: Started firewalld - dynamic firewall daemon.
三、启停firewalld
systemctl start firewalld systemctl enable firewalld systemctl stop firewalld
四、添加端口到区域
### 临时添加,不需要重载防火墙配置 firewall-cmd --add-port=80/tcp #打开tcp 80端口 firewall-cmd --remove-port 21/tcp #移除tcp 21端口 firewall-cmd --zone=dmz --add-port=8080/tcp #加入一个8080端口到DMZ区域
五、添加服务到区域
### 临时添加,不需要重载防火墙配置 firewall-cmd --zone=public --add-service=http #将http服务添加到public区域,--zone=public一般情况下可以省略 firewall-cmd --zone=public --remove-service=http #将http服务从public区域删除,--zone=public一般情况下可以省略
六、永久添加
firewall-cmd --add-port=80/tcp --permanent #打开tcp 80端口 firewall-cmd --add-service=http --permanent #永久将http服务添加到public区域 firewall-cmd --reload #重新加载防火墙配置 firewall-cmd --list-all #列出public区域的所有规则
七、富规则
firewall-cmd --add-rich-rule='rule family=ipv4 source address=192.168.1.66/32 port port="22" protocol="tcp" reject' --permanent firewall-cmd --zone=public --add-rich-rule="rule family=ipv4 source address='10.10.10.0/24' service name='ssh' drop" --permanent firewall-cmd --zone=public --add-rich-rule="rule family=ipv4 source address='172.25.25.25/32' port port=22 procotol=tcp accept" --permanent firewall-cmd --reload drop与reject的区别。drop是直接丢弃数据,不向客户端反馈数据,有点像黑洞,reject会返回一个拒绝的数据包。一般边界防火墙用dorp比较好,内部主机网络用reject比较好。
声明:欢迎大家光临本站,学习IT运维技术,转载本站内容,请注明内容出处”来源刘国华教育“。如若本站内容侵犯了原著者的合法权益,请联系我们进行处理。