自從Linux升級到7後,Linux的防火牆就從原來的iptables改成了firewalldcentos
一、安裝服務器
$ yum install -y firewalld
二、基本命令的使用tcp
$ systemctl status firewalld # 查看狀態 $ systemctl start firewalld # 啓動 $ systemctl stop firewalld #關閉 $ systemctl enable firewalld # 開機啓動 $ systemctl disable firewalld # 取消開機啓動
三、開放端口ide
# 開放單個端口 $ firewall-cmd --zone=public --add-port=80/tcp --permanent # 開放端口範圍 $ firewall-cmd --zone=public --add-port=8388-8389/tcp --permanent # 對 147.152.139.197 開放10000端口 $ firewall-cmd --permanent --zone=public --add-rich-rule=' rule family="ipv4" source address="147.152.139.197/32" port protocol="tcp" port="10000" accept' # 拒絕端口: $ firewall-cmd --permanent --zone=public --add-rich-rule=' rule family="ipv4" source address="47.52.39.197/32" port protocol="tcp" port="10000" reject' # 開放所有端口給IP $ firewall-cmd --permanent --zone=public --add-rich-rule=' rule family="ipv4" source address="192.168.0.1/32" accept'; # 開放所有端口給網段 $ firewall-cmd --permanent --zone=public --add-rich-rule=' rule family="ipv4" source address="192.168.0.0/16" accept';
四、查看開放及添加的服務工具
# 查看所有支持的服務 $ firewall-cmd --get-service # 查看開放的服務 $ firewall-cmd --list-service # 添加服務,添加https $ firewall-cmd --add-service=https --permanent # 修改對應的配置文件是/etc/firewalld/zones/public.xml
五、移除端口centos7
# 移除添加的端口 $ firewall-cmd --zone=public --remove-port=80/tcp --permanent
六、從新裝載rest
# 對路由規則進行修改後,須要從新加載規則才能使規則生效 $ firewall-cmd --reload
最後在此以前介紹centos7中摒棄service工具,採用systemctl這個更強的服務管理工具的使用方法。code
注一、systemctl的基本使用方法xml
啓動一個服務:systemctl start firewalld.service 關閉一個服務:systemctl stop firewalld.service 重啓一個服務:systemctl restart firewalld.service 顯示一個服務的狀態:systemctl status firewalld.service 在開機時啓用一個服務:systemctl enable firewalld.service 在開機時禁用一個服務:systemctl disable firewalld.service 查看服務是否開機啓動:systemctl is-enabled firewalld.service 查看已啓動的服務列表:systemctl list-unit-files|grep enabled 查看啓動失敗的服務列表:systemctl --failed
注二、配置firewalld-cmd命令的基本使用方法接口
查看版本:firewall-cmd --version 查看幫助:firewall-cmd --help 顯示狀態:firewall-cmd --state 查看全部打開的端口:firewall-cmd --zone=public --list-ports 更新防火牆規則: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
注三、如何容許80端口訪問服務器?
# 添加 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