日本三级片在线观看视频_西西大胆午夜人体视频无码_少妇无码一区二区_亚洲天堂超碰_极品少妇被猛的白浆直流_91精品云霸高清中文字幕_草草五月天伊人_久久少妇无码专区_欧美激欧美啪啪5老太_日韩在线在线成人

firewalld 防火墻配置全指南

2025-12-19 15:14:16 23

firewalld 防火墻配置全指南

歡迎來(lái)到藍(lán)隊(duì)云技術(shù)小課堂,每天分享一個(gè)運(yùn)維必備技能。在 CentOS 7 服務(wù)器運(yùn)維中,防火墻是抵御網(wǎng)絡(luò)攻擊的“第一道防線”——開(kāi)放不必要的端口、規(guī)則配置不當(dāng),會(huì)直接給黑客留下入侵漏洞,導(dǎo)致服務(wù)器被掃描、攻擊甚至植入惡意程序。很多新手因忽視防火墻配置,剛部署的服務(wù)就遭遇安全風(fēng)險(xiǎn)。firewalld 作為 CentOS 7 默認(rèn)的防火墻管理工具,替代了傳統(tǒng)的 iptables 服務(wù),支持動(dòng)態(tài)規(guī)則配置、區(qū)域管理等更靈活的功能。今天就系統(tǒng)講解 firewalld 的實(shí)戰(zhàn)配置方法,從基礎(chǔ)啟停到進(jìn)階規(guī)則設(shè)置,幫你快速構(gòu)建安全的網(wǎng)絡(luò)

防護(hù)體系。

一、基礎(chǔ)認(rèn)知:firewalld 核心概念與作用

firewalld 是基于 iptables 的動(dòng)態(tài)防火墻管理工具,核心優(yōu)勢(shì)在于“動(dòng)態(tài)更新規(guī)則無(wú)需重啟服務(wù)”,同時(shí)引入“區(qū)域(Zone)”概念,可根據(jù)不同網(wǎng)絡(luò)環(huán)境快速切換防護(hù)策略。其核心作用包括:限制端口訪問(wèn)、過(guò)濾網(wǎng)絡(luò)請(qǐng)求、屏蔽惡意 IP、端口轉(zhuǎn)發(fā)等,是保障服務(wù)器網(wǎng)絡(luò)安全的核心工具。

CentOS 7 系統(tǒng)默認(rèn)預(yù)裝 firewalld,若未安裝可通過(guò) yum 快速部署:

# 安裝 firewalld
yum install -y firewalld

# 安裝防火墻圖形化管理工具(可選,適合新手)
yum install -y firewall-config

屏幕截圖 2025-12-19 113255.png


二、基礎(chǔ)操作:firewalld 服務(wù)啟停與狀態(tài)查看

使用 firewall-cmd 命令管理 firewalld 服務(wù),先掌握基礎(chǔ)的啟停、狀態(tài)查看命令,確保服務(wù)正常運(yùn)行。

# 1. 查看 firewalld 運(yùn)行狀態(tài)(running 為正常運(yùn)行)
systemctl status firewalld

# 2. 啟動(dòng) firewalld 服務(wù)
systemctl start firewalld

# 3. 設(shè)置 firewalld 開(kāi)機(jī)自啟(關(guān)鍵,避免重啟后失效)
systemctl enable firewalld

# 4. 重啟 firewalld 服務(wù)(修改部分規(guī)則后需重啟)
systemctl restart firewalld

# 5. 臨時(shí)停止 firewalld 服務(wù)(測(cè)試場(chǎng)景使用,不建議生產(chǎn)環(huán)境關(guān)閉)
systemctl stop firewalld

# 6. 禁止 firewalld 開(kāi)機(jī)自啟
systemctl disable firewalld

# 7. 查看防火墻規(guī)則(顯示當(dāng)前生效的規(guī)則)
firewall-cmd --list-all

屏幕截圖 2025-12-19 113601.png

屏幕截圖 2025-12-19 113837.png


三、核心實(shí)戰(zhàn):端口與服務(wù)管理(最常用場(chǎng)景)

防火墻最核心的功能是“端口管控”,僅開(kāi)放業(yè)務(wù)必需的端口(如 80 端口用于 HTTP、3306 端口用于 MySQL),關(guān)閉所有不必要的端口,縮小攻擊面。

1. 開(kāi)放指定端口(永久生效)

使用 --add-port 參數(shù)開(kāi)放端口,需指定端口號(hào)和協(xié)議(tcp/udp),添加 --permanent 參數(shù)確保重啟后規(guī)則不丟失,最后重載規(guī)則使其生效。

# 示例1:開(kāi)放 80 端口(HTTP 服務(wù),tcp 協(xié)議),永久生效
firewall-cmd --add-port=80/tcp --permanent

# 示例2:開(kāi)放 3306 端口(MySQL 服務(wù)),永久生效
firewall-cmd --add-port=3306/tcp --permanent

# 示例3:開(kāi)放端口范圍(如 1000-2000 端口),永久生效
firewall-cmd --add-port=1000-2000/tcp --permanent

# 重載規(guī)則,使開(kāi)放端口的配置生效
firewall-cmd --reload

# 驗(yàn)證端口是否開(kāi)放成功(查看已開(kāi)放的端口列表)
firewall-cmd --list-ports

屏幕截圖 2025-12-19 140516.png

2. 關(guān)閉指定端口(永久生效)

業(yè)務(wù)下線或端口不再使用時(shí),及時(shí)關(guān)閉對(duì)應(yīng)的端口,避免遺留安全隱患。

# 示例1:關(guān)閉 80 端口,永久生效
firewall-cmd --remove-port=80/tcp --permanent

# 示例2:關(guān)閉端口范圍 1000-2000
firewall-cmd --remove-port=1000-2000/tcp --permanent

# 重載規(guī)則生效
firewall-cmd --reload

# 驗(yàn)證關(guān)閉結(jié)果
firewall-cmd --list-ports

屏幕截圖 2025-12-19 140035.png

3. 直接開(kāi)放指定服務(wù)(按服務(wù)名配置)

firewalld 內(nèi)置了常見(jiàn)服務(wù)的端口配置,可直接通過(guò)服務(wù)名開(kāi)放對(duì)應(yīng)的端口,無(wú)需手動(dòng)指定端口號(hào),更便捷。

# 示例1:開(kāi)放 SSH 服務(wù)(默認(rèn)對(duì)應(yīng) 22 端口),永久生效
firewall-cmd --add-service=ssh --permanent

# 示例2:開(kāi)放 HTTP 服務(wù)(默認(rèn)對(duì)應(yīng) 80 端口),永久生效
firewall-cmd --add-service=http --permanent

# 示例3:開(kāi)放 HTTPS 服務(wù)(默認(rèn)對(duì)應(yīng) 443 端口),永久生效
firewall-cmd --add-service=https --permanent

# 重載規(guī)則生效
firewall-cmd --reload

# 查看已開(kāi)放的服務(wù)列表
firewall-cmd --list-services

屏幕截圖 2025-12-19 142748.png

4. 關(guān)閉指定服務(wù)

# 示例:關(guān)閉 HTTP 服務(wù),永久生效
firewall-cmd --remove-service=http --permanent

# 重載規(guī)則生效
firewall-cmd --reload

屏幕截圖 2025-12-19 142830.png


四、進(jìn)階防護(hù):IP 限制與規(guī)則配置

通過(guò)限制指定 IP 訪問(wèn)服務(wù)器,實(shí)現(xiàn)更精準(zhǔn)的防護(hù)——僅允許業(yè)務(wù)來(lái)源 IP 訪問(wèn),拒絕其他所有 IP,進(jìn)一步提升安全性。

1. 允許指定 IP 訪問(wèn)所有端口

# 示例:允許 192.168.1.100 這個(gè) IP 訪問(wèn)服務(wù)器所有端口,永久生效
firewall-cmd --add-rich-rule="rule family="ipv4" source address="192.168.1.100" accept" --permanent

# 重載規(guī)則生效
firewall-cmd --reload

屏幕截圖 2025-12-19 143353.png

2. 拒絕指定 IP 訪問(wèn)所有端口

發(fā)現(xiàn)惡意掃描或攻擊的 IP 時(shí),可直接拒絕其訪問(wèn)。

# 示例:拒絕 203.0.113.5 這個(gè) IP 訪問(wèn),永久生效
firewall-cmd --add-rich-rule="rule family="ipv4" source address="203.0.113.5" reject" --permanent

# 重載規(guī)則生效
firewall-cmd --reload

屏幕截圖 2025-12-19 143538.png

3. 僅允許指定 IP 訪問(wèn)特定端口

更精準(zhǔn)的防護(hù)策略,如僅允許管理 IP 訪問(wèn) MySQL 的 3306 端口。

# 示例:僅允許 192.168.1.200 訪問(wèn) 3306 端口(MySQL),永久生效
firewall-cmd --add-rich-rule="rule family="ipv4" source address="192.168.1.200" port protocol="tcp" port="3306" accept" --permanent

# 重載規(guī)則生效
firewall-cmd --reload

屏幕截圖 2025-12-19 144511.png

4. 刪除 IP 限制規(guī)則

# 示例:刪除允許 192.168.1.100 訪問(wèn)所有端口的規(guī)則
firewall-cmd --remove-rich-rule="rule family="ipv4" source address="192.168.1.100" accept" --permanent

# 重載規(guī)則生效
firewall-cmd --reload

屏幕截圖 2025-12-19 144609.png


五、實(shí)用技巧:規(guī)則備份與恢復(fù)

修改防火墻規(guī)則前,建議先備份現(xiàn)有規(guī)則,避免配置錯(cuò)誤導(dǎo)致服務(wù)不可用,可快速恢復(fù)。

# 1. 備份(復(fù)制firewalld的原生XML配置文件)
cp -r /etc/firewalld/zones/ /etc/firewalld/zones_backup/

# 2. 恢復(fù)(直接覆蓋回去,需先停止firewalld)
systemctl stop firewalld
cp -r /etc/firewalld/zones_backup/* /etc/firewalld/zones/
systemctl start firewalld

# 3. 驗(yàn)證
firewall-cmd --list-all

屏幕截圖 2025-12-19 150248.png

屏幕截圖 2025-12-19 150326.png


六、避坑指南:firewalld 配置核心規(guī)范

  • 規(guī)則生效必重載:所有添加/刪除規(guī)則的操作,需加上 --permanent 參數(shù)(永久生效),并執(zhí)行 firewall-cmd --reload 重載規(guī)則,否則配置僅臨時(shí)生效(重啟服務(wù)后丟失)。

  • 最小權(quán)限原則:僅開(kāi)放業(yè)務(wù)必需的端口和服務(wù),如 Web 服務(wù)器僅開(kāi)放 80、443 端口,數(shù)據(jù)庫(kù)服務(wù)器僅開(kāi)放 3306 端口并限制訪問(wèn) IP,禁止開(kāi)放所有端口。

  • 禁止隨意關(guān)閉防火墻:生產(chǎn)環(huán)境中除非特殊需求,否則禁止停止 firewalld 服務(wù),關(guān)閉防火墻會(huì)使服務(wù)器完全暴露在網(wǎng)絡(luò)中,風(fēng)險(xiǎn)極高。

  • 規(guī)則修改先備份:批量修改或調(diào)整復(fù)雜規(guī)則前,務(wù)必先備份現(xiàn)有規(guī)則,避免配置錯(cuò)誤導(dǎo)致業(yè)務(wù)中斷,無(wú)法快速恢復(fù)。

  • 區(qū)分臨時(shí)與永久規(guī)則:測(cè)試規(guī)則時(shí)可先不加 --permanent 參數(shù)(臨時(shí)生效),驗(yàn)證無(wú)誤后再添加 --permanent 并重載,確保配置正確。


七、核心命令速查表

操作需求

執(zhí)行命令

查看防火墻狀態(tài)

systemctl status firewalld

啟動(dòng)并設(shè)置開(kāi)機(jī)自啟

systemctl start firewalld && systemctl enable firewalld

開(kāi)放指定端口(永久)

firewall-cmd --add-port=端口號(hào)/tcp --permanent && firewall-cmd --reload

關(guān)閉指定端口(永久)

firewall-cmd --remove-port=端口號(hào)/tcp --permanent && firewall-cmd --reload

允許指定 IP 訪問(wèn)所有端口

firewall-cmd --add-rich-rule="rule family='ipv4' source address='IP地址' accept" --permanent && firewall-cmd --reload

備份防火墻規(guī)則

firewall-cmd --list-all-zones > /etc/firewalld/backup.xml

重載防火墻規(guī)則

firewall-cmd --reload


總結(jié)

藍(lán)隊(duì)云官網(wǎng)上有更系統(tǒng)的防火墻進(jìn)階配置指南,涵蓋區(qū)域管理、端口轉(zhuǎn)發(fā)、NAT 配置等深度內(nèi)容,大家可自行查閱。同時(shí),我們整理了“firewalld 安全配置工具包”,包含常用規(guī)則一鍵配置腳本、惡意 IP 屏蔽列表等實(shí)用資源,需要的朋友可直接咨詢藍(lán)隊(duì)云技術(shù)支持。

防火墻配置是服務(wù)器安全的基礎(chǔ),合理的規(guī)則設(shè)置能有效抵御大部分網(wǎng)絡(luò)攻擊。更多 Linux 安全運(yùn)維干貨,藍(lán)隊(duì)云期待與你一同探索。


提交成功!非常感謝您的反饋,我們會(huì)繼續(xù)努力做到更好!

這條文檔是否有幫助解決問(wèn)題?

非常抱歉未能幫助到您。為了給您提供更好的服務(wù),我們很需要您進(jìn)一步的反饋信息:

在文檔使用中是否遇到以下問(wèn)題: