目錄
一、Firewalld 概述
1.1 Firewalld的簡述
1.2 Firewalld 和 iptables的區(qū)別
1.3 firewalld的區(qū)域
1.3.1 firewalld的9個(gè)區(qū)域
1.3.2 firewalld的數(shù)據(jù)處理流向
1.3.3 數(shù)據(jù)包的規(guī)則
二、firewalld的配置
2.1 配置方法
2.1.1Firewall-config圖形工具
2.1.2Firewall-cmd命令行工具
??2.1.3/etc/firewalld/中的配置文件
?2.2 區(qū)域管理
2.3 服務(wù)管理
?2.4? 端口管理
總結(jié)
一、Firewalld 概述
1.1 Firewalld的簡述
firewalld防火墻是Centos7系統(tǒng)默認(rèn)的防火墻管理工具,取代了之前的iptables防火墻,也是工作在
網(wǎng)絡(luò)層,屬于包過濾防火墻。
firewalld和iptables都是用來管理防火墻的工具(屬于用戶態(tài))來定義防火墻的各種規(guī)則功能,內(nèi)部結(jié)
構(gòu)都指向netfilter網(wǎng)絡(luò)過濾子系統(tǒng)(屬于內(nèi)核態(tài))來實(shí)現(xiàn)包過濾防火墻功能。
1.2 Firewalld 和 iptables的區(qū)別
①iptables 主要從接口來設(shè)置規(guī)則去維護(hù)網(wǎng)絡(luò)的安全。使用iptables每一個(gè)單獨(dú)更改意味著清除所
有舊有的規(guī)則和從/etc/sysconfig/iptables里讀取所有新的規(guī)則。
iptables在/etc/ sysconfig/iptables中儲存配置,
(靜態(tài)防火墻)
②firewalld 是根據(jù)區(qū)域來設(shè)置不同的規(guī)則去保障網(wǎng)絡(luò)的安全。
firewalld將配置儲存在/etc/firewalld/ ( 優(yōu)先加載)和/usr/lib/ firewalld/ ( 默認(rèn)的配置文件)中的各種XML文件里。
(動(dòng)態(tài)防火墻)
1.3 firewalld的區(qū)域
firewalld為了簡化管理,把所有的網(wǎng)絡(luò)流量分成多個(gè)區(qū)域。根據(jù)數(shù)據(jù)包的源IP地址或者網(wǎng)絡(luò)接口等條件將流量傳入相應(yīng)的區(qū)域。
1.3.1 firewalld的9個(gè)區(qū)域
區(qū)域 | 說明 |
public(公共區(qū)域) | 在公共區(qū)域內(nèi)使用,不能相信網(wǎng)絡(luò)內(nèi)的其他計(jì)算機(jī)不會(huì)對您的計(jì)篝機(jī)造成危害,只能接收經(jīng)過選取的連接 |
trusted(信任區(qū)域) | 允許所有的傳入流量。 |
drop(丟棄區(qū)域) | 任何接收的網(wǎng)絡(luò)數(shù)據(jù)包都被丟棄,沒有任何回復(fù).僅能有發(fā)送出去的網(wǎng)絡(luò)連接 |
block (限制區(qū)域) | 任何接收的網(wǎng)絡(luò)連接都被IPv4的icmp-host-prohibited信息和IPv6的icmp6-adm- prohibited 信息所拒絕 |
external (外部區(qū)域 | 特別是為路由器啟用了偽裝功能的外部網(wǎng).您不能信任來自網(wǎng)絡(luò)的其他計(jì)算,不能相信它們不會(huì)對您的計(jì)算機(jī)造成危害,只能接收經(jīng)過選擇的連接 |
work (工作區(qū)域) | 用于工作區(qū).您可以基本相信網(wǎng)絡(luò)內(nèi)的其他電腦不會(huì)危害您的電腦.僅僅接收經(jīng)過選擇的連接 |
dmz(隔離區(qū)域也稱為非軍事區(qū)域) | 允許與 ssh 預(yù)定義服務(wù)匹配的傳入流量,其余均拒絕。 |
internal (內(nèi)部區(qū)域) | 用于內(nèi)部網(wǎng)絡(luò).您可以基本上信任網(wǎng)絡(luò)內(nèi)的其他計(jì)算機(jī)不會(huì)威脅您的計(jì)算機(jī)僅僅接受經(jīng)過選擇的連接 |
home(家庭區(qū)域) | 用于家庭網(wǎng)絡(luò).您可以基本信任網(wǎng)絡(luò)內(nèi)的其他計(jì)算機(jī)不會(huì)危害您的計(jì)算機(jī)僅僅接收經(jīng)過選擇 的連接 |
一個(gè)區(qū)域的安全程度取決于管理員在此區(qū)域中設(shè)置的規(guī)則
每個(gè)區(qū)域又不同的規(guī)則,只會(huì)允許符合規(guī)則的流量傳入
可以根據(jù)網(wǎng)絡(luò)規(guī)模,使用一個(gè)或多個(gè)區(qū)域,但是任何一個(gè) 活躍區(qū)域 至少需要關(guān)聯(lián) 源地址或接口。
默認(rèn)情況下,public區(qū)域是默認(rèn)區(qū)域,包含所有接口(網(wǎng)卡)
1.3.2 firewalld的數(shù)據(jù)處理流向
firewalld對于進(jìn)入系統(tǒng)的數(shù)據(jù)包,會(huì)根據(jù)數(shù)據(jù)包的源IP地址或傳入的網(wǎng)絡(luò)接口等條件,將數(shù)據(jù)流量
轉(zhuǎn)入相應(yīng)區(qū)域的防火墻規(guī)則。對于進(jìn)入系統(tǒng)的數(shù)據(jù)包,首先檢查的就是其源地址。
1.3.3 數(shù)據(jù)包的規(guī)則
1、若源地址關(guān)聯(lián)到特定的區(qū)域(即源地址或接口綁定的區(qū)域有沖突),則執(zhí)行該區(qū)域所制定的規(guī)
則。
2、若源地址未關(guān)聯(lián)到特定的區(qū)域(即源地址或接口綁定的區(qū)域沒有沖突),則使用傳入網(wǎng)絡(luò)接口
的區(qū)域并執(zhí)行該區(qū)域所制定的規(guī)則。
3、若網(wǎng)絡(luò)接口也未關(guān)聯(lián)到特定的區(qū)域(即源地址或接口都沒有綁定特定的某個(gè)區(qū)域),則使用默
認(rèn)區(qū)域并執(zhí)行該區(qū)域所制定的規(guī)則。
二、firewalld的配置
2.1 配置方法
2.1.1Firewall-config圖形工具
?
2.1.2Firewall-cmd命令行工具
常用的命令:
systemctl start firewalld ? ? ?//啟動(dòng) firewalld
systemctl enable firewalld ? ? //設(shè)置 firewalld 為開機(jī)自啟動(dòng)
systemctl status firewalld ? ? //查看 firewalld 狀態(tài)信息
firewall-cmd --state ? ? ? ? ? //查看 firewalld 狀態(tài)信息
systemctl stop firewalld ? ? ? //停止 firewalld?
systemctl disable firewalld ? ?//設(shè)置 firewalld 開機(jī)不自啟動(dòng)
firewalld命令工具
①firewall-cmd --get-default-zone? ? ?顯示當(dāng)前默認(rèn)區(qū)域
②firewall-cmd --set-default-zone=home? ?設(shè)置默認(rèn)區(qū)域?yàn)閔ome
③?firewall-cmd --set-active-zones? ? 顯示當(dāng)前正在使用的區(qū)域及對應(yīng)網(wǎng)卡接口
④?firewall-cmd --get-zones? ?顯示所有可用區(qū)域
⑤ firewall-cmd --get-zone-of-interface=ens33? 顯示ens33接口的綁定區(qū)域
?
?⑥firewall-cmd --add-interface=ens33 --zone=home? 為ens33接口綁定home區(qū)域
?
⑦?firewall-cmd --change-interface=ens33 --zone=public? 更改ens33接口區(qū)域
⑧firewall-cmd --remove-interface=ens33 --zone=public? 刪除指定接口的區(qū)域
⑨firewall-cmd --list-ports? ?顯示指定區(qū)域允許訪問的所有端口號
firewall-cmd --add-ports=80/tcp? ?添加一個(gè)tcp80端口?
?firewall-cmd --remove-ports=80/tcp? ?刪除一個(gè)tcp80端口?
?
??2.1.3/etc/firewalld/中的配置文件
?
?2.2 區(qū)域管理
①顯示當(dāng)前系統(tǒng)中的默認(rèn)區(qū)域
firewall-cmd --get-default-zone
②顯示默認(rèn)區(qū)域 中的所有規(guī)則
firewall-cmd --list-all
③顯示當(dāng)前正在使用的區(qū)域及其對應(yīng)的網(wǎng)卡接口
firewall-cmd --get-active-zones
④設(shè)置默認(rèn)區(qū)域
firewall-cmd --set-default-zone=home
2.3 服務(wù)管理
①查看默認(rèn)區(qū)域內(nèi)允許訪問的所有服務(wù)
firewall-cmd --list- service
?
②添加httpd服務(wù)到public 區(qū)域
firewall-cmd --add-service-http --zone-public
?
③ 查看public區(qū)域E配置規(guī)則
firewall-cmd --list-all --zone=public
?
④刪除public 區(qū)域的httpd服務(wù)
firewall-cmd --remove -service=http --zone-public
?
⑤同時(shí)添加httpd、https 服務(wù)到默認(rèn)區(qū)域,設(shè)置成永久生效
firewall-cmd --add-service=http --add-service=https --permanent
firewall-cmd
--add-service={http, https, ftp}
--zone=internal
firewall-cmd --reload .
firewall-cmd --list-all
?
? ? #添加使用--permanent選項(xiàng)表示設(shè)置成永久生效,需要重新啟動(dòng)firewalld服務(wù)或
執(zhí)行firewall-cmd --reload命令
? ? 重新加載防火墻規(guī)則時(shí)才會(huì)生效。若不帶有此選項(xiàng),表示用于設(shè)置運(yùn)行時(shí)規(guī)則,但是
?
firewall-cmd --runtime-to-permanent:
將當(dāng)前的運(yùn)行時(shí)配置寫入規(guī)則配置文件中,使之成為永久性配置。
?2.4? 端口管理
①允許TCP的443端口到internal 區(qū)域
firewall-cmd --zone-internal --add-port=443/tcp
firewall-cmd --list-all --zone=internal
?
②從internal 區(qū)域?qū)CP的443端口移除
firewall-cmd --zone=internal -- remove-port-443/tcp
?
③允許UDP的2048~2050端口到默認(rèn)區(qū)域
firewall- cmd --add-port=2048-2050/udp
firewall-cmd --list-all
總結(jié)
firewalld的配置主要是九大區(qū)域:block 、dmz 、drop、 external 、home、 internal、 public 、trusted 、work
firewalld 的防火墻配置方法有:
①firewall-config(圖形化)文章來源:http://www.zghlxwxcb.cn/news/detail-443418.html
②firewall-cmd(命令方式)文章來源地址http://www.zghlxwxcb.cn/news/detail-443418.html
到了這里,關(guān)于Firewalld防火墻基礎(chǔ)的文章就介紹完了。如果您還想了解更多內(nèi)容,請?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!