centos7 Firewalld操做集合

===============================================html

 2019/4/15_第1次修改                       ccb_warlockcentos

 

===============================================ssh

因爲一直使用centos7的環境,因此接觸的防火牆比較多的是firewalld而不是iptable,以前一直沒有好好總結過firewalld的用法,此次作個整理。tcp

我將firewall-cmd命令的操做分紅了2部分:經常使用和其餘。其中經常使用是我在最近幾年使用centos7時用的次數較多的操做。centos7

 


1、經常使用操做

1)從新加載配置

firewall-cmd --reload

 

2)查看全部配置

firewall-cmd --list-all

 

3)查看當前開放的端口(容許任意IP訪問)

firewall-cmd --zone=public --list-ports

 

4)開放指定端口(容許任意IP訪問)

以開放80端口爲例spa

firewall-cmd --zone=public --add-port=80/tcp --permanent
firewall-cmd --reload

PS. --permanent爲永久生效,沒有此參數centos重啓後該配置將失效.net

 

5)移除端口(容許任意IP訪問的端口)

以撤銷80端口的開放爲例code

firewall-cmd --zone=public --remove-port=80/tcp --permanent
firewall-cmd --reload

PS. --permanent爲永久生效,沒有此參數centos重啓後該配置將失效htm

 

6)查看容許指定IP訪問端口的規則

firewall-cmd --zone=public --list-rich-rules

 

7)開放指定端口(只容許指定IP訪問)

以「只容許192.168.1.1的主機鏈接3306端口」爲例blog

firewall-cmd --add-rich-rule="rule family="ipv4" source address="192.168.1.1" port protocol="tcp" port="3306" accept" --permanent
firewall-cmd --reload

PS. --permanent爲永久生效,沒有此參數centos重啓後該配置將失效

 

8)移除規則(只容許指定IP訪問的端口)

以「移除只容許192.168.1.1的主機鏈接3306端口」爲例

firewall-cmd --remove-rich-rule="rule family="ipv4" source address="192.168.1.1" port protocol="tcp" port="3306" accept" --permanent
firewall-cmd --reload

PS. --permanent爲永久生效,沒有此參數centos重啓後該配置將失效

 

9)移除默認的ssh服務

移除默認的ssh服務前,先確認是否已經額外開放了22端口,不然會致使沒法使用ssh遠程鏈接。

firewall-cmd --remove-service=ssh --permanent
firewall-cmd --reload

PS. --permanent爲永久生效,沒有此參數centos重啓後該配置將失效 

 

10)查看某個端口是否開放

以檢查80端口爲例(yes:開放;no:未開放)

firewall-cmd --zone=public --query-port=80/tcp

 

11)TCP端口轉發 

# 容許防火牆假裝IP

firewall-cmd --add-masquerade

 

# 將本地80端口的流量轉發到192.168.1.1的80端口

firewall-cmd --add-forward-port=port=80:proto=tcp:toaddr=192.168.1.1:toport=80 --permanent

PS. --permanent爲永久生效,沒有此參數centos重啓後該配置將失效

 


2、其它操做

查看版本:firewall-cmd --version

查看幫助: firewall-cmd --help

查看狀態: firewall-cmd --state

查看區域信息: firewall-cmd --get-active-zones

查看指定接口所屬區域: firewall-cmd --get-zone-of-interface=eth0

拒絕全部包:firewall-cmd --panic-on

取消拒絕狀態: firewall-cmd --panic-off

查看是否拒絕: firewall-cmd --query-panic

 


參考資料:

1.http://www.javashuo.com/article/p-vzorjblk-dt.html

2.https://blog.csdn.net/qguanri/article/details/51673845

相關文章
相關標籤/搜索