1、firewalld的基本使用
啟動: systemctl start firewalld
查看狀態: systemctl status firewalld
停止: systemctl disable firewalld
禁用: systemctl stop firewalld
2.systemctl是CentOS7的服務管理工具中主要的工具,它融合之前service和chkconfig的功能於一體。
啟動一個服務:systemctl start firewalld.service
關閉一個服務:systemctl stop firewalld.service
重啟一個服務:systemctl restart firewalld.service
顯示一個服務的狀態:systemctl status firewalld.service
在開機時啟用一個服務:systemctl enable firewalld.service
在開機時禁用一個服務:systemctl disable firewalld.service
查看服務是否開機啟動:systemctlis-enabled firewalld.service
查看已啟動的服務列表:systemctllist-unit-files|grep enabled
查看啟動失敗的服務列表:systemctl--failed
3.配置firewalld-cmd
查看版本: firewall-cmd --version
查看幫助: firewall-cmd --help
顯示狀態: firewall-cmd --state
查看所有打開的端口: firewall-cmd --zone=public --list-ports
firewall-cmd --list-all
更新防火牆規則: firewall-cmd --reload
查看區域信息: firewall-cmd--get-active-zones
查看指定接口所屬區域: firewall-cmd--get-zone-of-interface=eth0
拒絕所有包:firewall-cmd --panic-on
取消拒絕狀態: firewall-cmd --panic-off
查看是否拒絕: firewall-cmd --query-panic
那怎么開啟一個端口呢
添加
firewall-cmd --zone=public --add-port=80/tcp --permanent (--permanent永久生效,沒有此參數重啟后失效)
重新載入
firewall-cmd --reload
查看
firewall-cmd --zone=public --query-port=80/tcp
刪除
firewall-cmd --zone=public --remove-port=80/tcp --permanent
針對IP開放端口
firewall-cmd --permanent --add-rich-rule="rule family="ipv4" source address="192.168.142.166" port protocol="tcp" port="6379" accept"
firewall-cmd --permanent --add-rich-rule="rule family="ipv4" source address="192.168.0.233" accept"
刪除某個IP
firewall-cmd --permanent --remove-rich-rule="rule family="ipv4" source address="192.168.1.51" accept"
針對一個ip段訪問
firewall-cmd --permanent --add-rich-rule="rule family="ipv4" source address="192.168.0.0/16" accept"
firewall-cmd --permanent --add-rich-rule="rule family="ipv4" source address="192.168.1.0/24" port protocol="tcp" port="9200" accept"
添加操作后別忘了執行重載
firewall-cmd --reload
查看firewall是否運行,下面兩個命令都可以
systemctl status firewalld.service
firewall-cmd --state
查看當前開了哪些端口
其實一個服務對應一個端口,每個服務對應/usr/lib/firewalld/services下面一個xml文件。
firewall-cmd --list-services
查看還有哪些服務可以打開
firewall-cmd --get-services
查看所有打開的端口:
firewall-cmd --zone=public --list-ports
更新防火牆規則:
firewall-cmd --reload