新聞中心
防火墻是一種位于內(nèi)部網(wǎng)絡(luò)與外部網(wǎng)絡(luò)之間的網(wǎng)絡(luò)安全系統(tǒng)。一項信息安全的防護系統(tǒng),依照特定的規(guī)則,允許或是限制傳輸?shù)臄?shù)據(jù)通過。防火墻通常工作在網(wǎng)絡(luò)層,也即IPv4或IPv6的IP包上。

華陰ssl適用于網(wǎng)站、小程序/APP、API接口等需要進行數(shù)據(jù)傳輸應(yīng)用場景,ssl證書未來市場廣闊!成為創(chuàng)新互聯(lián)的ssl證書銷售渠道,可以享受市場價格4-6折優(yōu)惠!如果有意向歡迎電話聯(lián)系或者加微信:18980820575(備注:SSL證書合作)期待與您的合作!
是否允許包通過防火墻,取決于防火墻配置的規(guī)則。這些規(guī)則既可以是內(nèi)建的,也可以是用戶自定義的。每一個包要進出防火墻,均需要滿足防火墻配置的規(guī)則。
每一條規(guī)則均有一個目標(biāo)動作,具有相同動作的規(guī)則可以分組在一起。對于linux系統(tǒng),最常用的防火墻有:FirewallD或iptables。Linux的發(fā)行版種類極多,但是公認(rèn)的仍然是這兩種。
1、什么是FirewallD
FirewallD即Dynamic Firewall Manager of Linux systems,Linux系統(tǒng)的動態(tài)防火墻管理器。FirewallD是一個服務(wù),用于配置網(wǎng)絡(luò)連接,從而哪些內(nèi)外部網(wǎng)絡(luò)的數(shù)據(jù)包可以允許穿過網(wǎng)絡(luò)或阻止穿過網(wǎng)絡(luò)。
FirewallD允許兩種類型的配置:永久類型和運行時類型。運行時類型的配置在防火墻被重啟后會丟失相應(yīng)的規(guī)則配置;而永久類型的配置即使遇到系統(tǒng)重啟,也會保留生效。
對應(yīng)于上面兩種類型的配置,F(xiàn)irewallD相應(yīng)的有兩個目錄:針對運行時類型配置的目錄/usr/lib/firewall;以及針對永久類型配置的目錄/etc/firewall.在RHEL/CentOS 7或Fedora 18的默認(rèn)服務(wù)可以看到。
2、什么是iptables
iptables是另一種服務(wù),它可以決定是否允許、刪除或返回IP數(shù)據(jù)包。iptables服務(wù)管理IPv4數(shù)據(jù)包,而ip6tables則管理IPv6數(shù)據(jù)包。此服務(wù)管理了一堆規(guī)則表,其中每個表分別用于維護不同的目的,比如過濾表(filter table)為防火墻規(guī)則,NAT表供新連接查詢使用,mangle表用于數(shù)據(jù)包的轉(zhuǎn)換等。
更進一步,每個表還具有規(guī)則鏈,規(guī)則鏈可以是內(nèi)建的或是用戶自定義的,它表示適用于一個數(shù)據(jù)包的規(guī)則集合,從而決定數(shù)據(jù)包應(yīng)該執(zhí)行哪些目標(biāo)動作,比如允許ALLOWED、阻塞BLOCKED或返回RETURNED。iptables服務(wù)在RHEL/CentOS 6/5、Fedora、ArchLinux、Ubuntu等Linux發(fā)行版中是系統(tǒng)默認(rèn)的服務(wù)。
3、FirewallD服務(wù)的基本操作
對于CentOS/RHEL 7或Fedora 18以上版本的系統(tǒng),要管理FirewallD服務(wù),使用如下命令。
啟動FirewallD服務(wù)
# systemctl firewalld start
停止FirewallD服務(wù)
# systemctl firewalld stop
檢查FirewallD服務(wù)的狀態(tài)
# systemctl status firewalld
檢查FirewallD服務(wù)的狀態(tài)
# firewall-cmd --state
可能會返回running,表示正在運行。
還可以禁用FirewallD服務(wù),關(guān)閉那些規(guī)則。
禁用FirewallD服務(wù)
# systemctl disable firewalld
啟用FirewallD服務(wù)
# systemctl enable firewalld
屏蔽FirewallD服務(wù)
# systemctl mask firewalld
還可以通過創(chuàng)建一個firewall.service到/dev/null的符號連接來屏蔽防火墻服務(wù)。
反屏蔽FirewallD服務(wù)
# systemctl unmask firewalld
這是反屏蔽FirewallD服務(wù),它會移除屏蔽FirewallD服務(wù)時創(chuàng)建的符號鏈接,故能重新啟用服務(wù)。
檢查是否已安裝防火墻
# yum install firewalld firewall-config
4、iptables服務(wù)的基本操作
在RHEL/CentOS 6/5/4系統(tǒng)和Fedora 12-18系統(tǒng)中,iptables是默認(rèn)的防火墻,如果服務(wù)不存在,可以這樣安裝:
# yum install iptables-services
然后就可以對iptables服務(wù)進行啟動、停止、重啟等操作了。
啟動iptables服務(wù)
# systemctl start iptables
或
# service iptables start
停止iptables服務(wù)
# systemctl stop iptables
或
# service iptables stop
禁用iptables服務(wù)
# systemctl disable iptables
或
# service iptables save
# service iptables stop
啟用iptables服務(wù)
# systemctl enable iptables
或
# service iptables start
檢查iptables服務(wù)的狀態(tài)
# systemctl status iptables
或
# service iptables status
在Ubuntu及其它Linux發(fā)行版中,ufw是用于管理iptables防火墻服務(wù)的工具。ufw提供了一個簡易的界面讓用戶可以很方便的處理iptables防火墻服務(wù)。
啟用ufw iptables防火墻服務(wù)
$ sudo ufw enable
禁用ufw iptables防火墻服務(wù)
$ sudo ufw disable
檢查ufw iptables防火墻服務(wù)的狀態(tài)
$ sudo ufw status
但是,如果想列出iptables包含的所有規(guī)則鏈列表,應(yīng)使用如下命令:
$ iptables -L -n -v
5、理解網(wǎng)絡(luò)區(qū)
在CentOS/RHEL 7系統(tǒng)中,基于用戶對網(wǎng)絡(luò)中設(shè)備和通信所給與的信任程度,防火墻可用于將網(wǎng)絡(luò)劃分成不同的區(qū)域,區(qū)域類型如下:
- drop(丟棄)
任何接收的網(wǎng)絡(luò)數(shù)據(jù)包都被丟棄,沒有任何回復(fù)。僅能有發(fā)送出去的網(wǎng)絡(luò)連接。 - block(限制)
任何接收的網(wǎng)絡(luò)連接都被 IPv4 的 icmp-host-prohibited 信息和 IPv6 的 icmp6-adm-prohibited 信息所拒絕。 - public(公共)
在公共區(qū)域內(nèi)使用,不能相信網(wǎng)絡(luò)內(nèi)的其他計算機不會對您的計算機造成危害,只能接收經(jīng)過選取的連接。 - external(外部)
特別是為路由器啟用了偽裝功能的外部網(wǎng)。您不能信任來自網(wǎng)絡(luò)的其他計算機,不能相信它們不會對您的計算機造成危害,只能接收經(jīng)過選擇的連接。 - dmz(非軍事區(qū))
用于您的非軍事區(qū)內(nèi)的電腦,此區(qū)域內(nèi)可公開訪問,可以有限地進入您的內(nèi)部網(wǎng)絡(luò),僅僅接收經(jīng)過選擇的連接。 - work(工作)
用于工作區(qū)。您可以基本相信網(wǎng)絡(luò)內(nèi)的其他電腦不會危害您的電腦。僅僅接收經(jīng)過選擇的連接。 - home(家庭)
用于家庭網(wǎng)絡(luò)。您可以基本信任網(wǎng)絡(luò)內(nèi)的其他計算機不會危害您的計算機。僅僅接收經(jīng)過選擇的連接。 - internal(內(nèi)部)
用于內(nèi)部網(wǎng)絡(luò)。您可以基本上信任網(wǎng)絡(luò)內(nèi)的其他計算機不會威脅您的計算機。僅僅接受經(jīng)過選擇的連接。 - trusted(信任)
可接受所有的網(wǎng)絡(luò)連接。
對于區(qū)域的修改,可使用網(wǎng)絡(luò)管理器NetworkManager搞定。
5、理解直接接口
FirewallD包含了一個名為直接接口(direct interface)的概念,意思是可以直接通過iptables、ip6tables和ebtables的規(guī)則。直接接口適用于應(yīng)用程序,不適用于用戶。如果不熟悉iptables,那么使用直接接口是很危險的,因為可能會導(dǎo)致防火墻被入侵。
FirewallD保持對所增加規(guī)則項的追蹤,所以能質(zhì)詢FirewallD,發(fā)現(xiàn)由使用直接端口模式的程序造成的更改。要使用直接端口,增加–direct選項到firewall-cmd命令來使用。
6、改用iptables服務(wù)
在CentOS/RHEL 7系統(tǒng)中,要用iptables和ip6tables服務(wù)代替FirewallD服務(wù),需要以root身份運行以下命令,先禁用FirewallD:
# systemctl disable firewalld
# systemctl stop firewalld
然后安裝iptables-services程序包,以root身份輸入以下命令:
# yum install iptables-services
iptables-services程序包包含了iptables和ip6tables服務(wù)。然后,以root身份運行iptables和ip6tables命令:
# systemctl start iptables
# systemctl start ip6tables
# systemctl enable iptables
# systemctl enable ip6tables
7、啟動圖形化防火墻設(shè)置工具
用命令行啟動圖形化防火墻配置工具,則以root用戶身份輸入以下命令:
# firewall-config
網(wǎng)站欄目:CentOS7防火墻服務(wù)FirewallD指南
本文網(wǎng)址:http://fisionsoft.com.cn/article/dppdcjp.html


咨詢
建站咨詢
