關於firewall防火牆一些常用方法

關於從學習Linux開始,我對防火牆防火牆一直很迷惑我接觸的有firewall\iptalbe\selinux,這幾者的關係一直沒搞清楚,而且在centos裏它們還同時存在。上網查了半天只搞清如下關係:

SELinux、Netfilter、iptables、firewall和UFW五者關係
1、SELinux是美國國家安全局發佈的一個強制訪問控制系統
2、Netfilter是Linux 2.4.x引入的一個子系統,作爲一個通用的、抽象的框架,提供一整套的hook函數的管理機制
3、iptables是Linux下功能強大的應用層防火牆工具。
4、firewall是centos7裏面新的防火牆管理命令
5、ufw是Ubuntu下的一個簡易的防火牆配置工具。

其他系統我不太瞭解,但好象在centos7中可以這麼理解,selinux沒什麼用,關了吧,firewall是iptable的代替品,雖然firewall最終還是做iptable的活,所有應該只學firewall就可以了。(我也不知道對不對)下面只對firewall使用總結一下:
1、運行、停止、禁用firewalld

啓動: systemctl start firewalld
查看狀態: systemctl status firewalld 或者 firewall-cmd --state
停止: systemctl disable firewalld
禁用: systemctl stop firewalld
查看firewall是否運行,下面兩個命令都可以
systemctl status firewalld.service
firewall-cmd --state

2、查看default zone和active zone

我們還沒有做任何配置,default zone和active zone都應該是public
firewall-cmd --get-default-zone
firewall-cmd --get-active-zones
(至於這個public是什麼意思還不清楚)

3、查看當前開了哪些端口

firewall-cmd --list-services
其實一個服務對應一個端口,每個服務對應/usr/lib/firewalld/services下面一個xml文件。
(但有一個問題,我的ssh端口已經改爲3384,但在ssh.xml裏面還是顯示:,這是怎麼回事?現在也還不清楚)

4、永久打開關閉端口

永久打開端口3384
firewall-cmd --zone=public --add-port=3384/tcp --permanent
永久關閉端口3384
firewall-cmd --permanent --zone=public --remove-port=3384/tcp
–permanent 表示永久的意思。

5、查看還有哪些服務可以打開

firewall-cmd --get-services
可以看到有一大堆的內容,但哪個管什麼還是不知道。

6、查看所有打開的端口:

firewall-cmd --zone=public --list-ports
我的是顯示:3384/tcp 445/tcp,因爲我只開了這兩個。

7、查詢某一端口是否打開。

firewall-cmd --query-port=3384/tcp

8、更新防火牆規則:

firewall-cmd --reload

我感覺常用的就這些了。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章