簡單使用
1.查看firewalld.service服務狀態
systemctl status firewalld
2.查看firewall運行狀態
firewall-cmd --state
3.firewalld.service服務
# 啟動firewalld service firewalld start # 停止firewalld service firewalld stop # 重啟firewalld service firewalld restart
4.查看firewall規則
# 查詢所有規則 firewall-cmd --list-all # 查詢端口是否開放 firewall-cmd --query-port=8080/tcp # 新建永久規則,開放8080端口(TCP協議) firewall-cmd --permanent --add-port=8080/tcp # 移除上述規則 firewall-cmd --permanent --remove-port=8080/tcp # 新建永久規則,批量開放一段端口(TCP協議) firewall-cmd --permanent --add-port=9001-9100/tcp
配置
1.開放IP
# 新建永久規則,開放192.168.1.1單個源IP的訪問 firewall-cmd --permanent --add-source=192.168.1.1 # 新建永久規則,開放192.168.1.0/24整個源IP段的訪問 firewall-cmd --permanent --add-source=192.168.1.0/24 # 移除上述規則 firewall-cmd --permanent --remove-source=192.168.1.1
2.開放系統服務
# 開放http服務 firewall-cmd --permanent --add-service=http # 移除上述規則 firewall-cmd --permanent --remove-service=http
3.自定義規則
# 允許指定IP訪問本機8080端口 firewall-cmd --permanent --add-rich-rule='rule family="ipv4" source address="192.168.1.1" port protocol="tcp" port="8080" accept' # 允許指定IP段訪問本機8080-8090端口 firewall-cmd --permanent --add-rich-rule='rule family="ipv4" source address="192.168.1.0/24" port protocol="tcp" port="8080-8090" accept' # 禁止指定IP訪問本機8080端口 firewall-cmd --permanent --add-rich-rule='rule family="ipv4" source address="192.168.1.1" port protocol="tcp" port="8080" reject' # 移除以上添加操作,將--add-rich-rule 替換成--remove-rich-rule
以上命令執行后,都會寫入到/etc/firewalld/zones/public.xml。也可以直接修改該文件。
注意:任何修改操作,配置完成后,需要重新裝載firewall。或重新啟動firewalld服務。
firewall-cmd --reload
service firewalld restart