作為一名系統(tǒng)管理員或開(kāi)發(fā)者,你是否曾經(jīng)被 Linux 防火墻配置搞得頭大?在生產(chǎn)環(huán)境中,我們經(jīng)常需要配置防火墻來(lái)保護(hù)服務(wù)器安全,但面對(duì) iptables 和 firewalld 這兩個(gè)工具,很多人都會(huì)覺(jué)得無(wú)從下手。別擔(dān)心!這篇文章將用通俗易懂的方式,帶你了解 CentOS 中的防火墻配置,并通過(guò)一個(gè)實(shí)際案例,手把手教你如何正確設(shè)置防火墻規(guī)則。
1.兩大防火墻工具
? firewalld:CentOS 7及以后版本的默認(rèn)防火墻管理工具
? iptables:傳統(tǒng)的Linux防火墻管理工具
2.firewalld的特點(diǎn)
? 動(dòng)態(tài)管理防火墻
? 支持網(wǎng)絡(luò)/防火墻區(qū)域(zone)定義網(wǎng)絡(luò)連接及接口的可信等級(jí)
? 運(yùn)行時(shí)配置和永久配置分離
? 支持IPv4、IPv6
? 支持以太網(wǎng)橋接
3.firewalld與iptables的主要區(qū)別
? firewalld:
? 動(dòng)態(tài)配置,無(wú)需重啟服務(wù)
? 支持動(dòng)態(tài)更改規(guī)則
? 使用區(qū)域(zone)管理規(guī)則
配置文件存放地址:
/etc/firewalld/ # 系統(tǒng)配置文件目錄 /usr/lib/firewalld/ # 默認(rèn)配置文件目錄
注意:
1./etc/firewalld/:優(yōu)先級(jí)高,用戶配置目錄
2./usr/lib/firewalld/:優(yōu)先級(jí)低,默認(rèn)配置目錄
?
? 系統(tǒng)升級(jí)時(shí)會(huì)覆蓋此目錄
? 建議在/etc/firewalld/下修改配置
? iptables service:
?
? 靜態(tài)配置,規(guī)則修改后需重啟服務(wù)
? 規(guī)則修改需要先清除舊規(guī)則
? 使用鏈(chain)管理規(guī)則
配置文件存放地址:
`/etc/sysconfig/iptables # 規(guī)則配置文件`
4.firewalld不同區(qū)域
區(qū)域 | 說(shuō)明 |
信任 | 可接收所有的網(wǎng)絡(luò)連接 |
public | 除非與傳出流量相關(guān),或與 ssh 或 dhcpv6-client 預(yù)定義服務(wù)匹配,否則拒絕流量傳入 |
work | 除非與傳出流量相關(guān),或與 ssh、ipp-client、dhcpv6-client 預(yù)定義服務(wù)匹配,否則拒絕流量傳入 |
家 | 除非與傳出流量相關(guān),或與 ssh、ipp-client、mdns、samba-client、dhcpv6-client 預(yù)定義服務(wù)匹配,否則拒絕流量傳入 |
internal | 除非與傳出流量相關(guān),或與 ssh、ipp-client、mdns、samba-client、dhcpv6-client 預(yù)定義服務(wù)匹配,否則拒絕流量傳入 |
external | 除非與傳出流量相關(guān),或與 ssh 預(yù)定義服務(wù)匹配,否則拒絕流量傳入 |
dmz | 除非與傳出的流量相關(guān),或與 ssh 預(yù)定義服務(wù)匹配,否則拒絕流量傳入 |
block | 除非與傳出流量相關(guān),否則拒絕所有傳入流量 |
drop | 除非與傳出流量相關(guān),否則丟棄所有傳入流量,并且不產(chǎn)生包含 ICMP 的錯(cuò)誤響應(yīng) |
5.三種配置方法
? firewall-config 圖形工具。
? firewall-cmd 命令行工具。
? /etc/firewalld/中的配置文件。
圖形化不過(guò)多解釋 需要的話你搜其他文章
防火墻基礎(chǔ)案例
+-------------+ +-------------+ +-------------+ | Client | | Firewall | | Apache | |192.168.14.112| |192.168.14.111| |Linux 服務(wù)器 | +-------------+ +-------------+ +-------------+ | | | | | | +--------------------+--------------------+
1. 禁止主機(jī) ping 服務(wù)器
2. 只允許 192.168.8.130 主機(jī)訪問(wèn) SSH 服務(wù)
3. 允許所有主機(jī)訪問(wèn) Apache 服務(wù)
服務(wù)器配置
ip地址是192.168.14.111
yum install -y httpd [root@localhost ~]# echo 2024-12-3 > /var/www/html/index.html [root@localhost ~]# systemctl start httpd [root@localhost ~]# curl 127.0.0.1 2024-12-3
配置完成apache服務(wù)之后
客戶端是可以ping的
禁止Ping防火墻規(guī)則
# 啟動(dòng) firewalld 并設(shè)置為開(kāi)機(jī)自啟動(dòng) systemctlstart firewalld systemctlenable firewalld # 禁止 ping 服務(wù)器 firewall-cmd--zone=public --add-icmp-block=echo-request --permanent firewall-cmd--reload # 驗(yàn)證配置 firewall-cmd--list-all
客戶端測(cè)試
允許SSH登錄規(guī)則
# 移除默認(rèn)區(qū)域的 SSH 服務(wù) firewall-cmd--zone=public --remove-service=ssh --permanent # 只允許 192.168.8.130 主機(jī)訪問(wèn) SSH 服務(wù) firewall-cmd--zone=work --add-source=192.168.14.112 --permanent firewall-cmd--zone=work --add-service=ssh --permanent firewall-cmd--reload # 驗(yàn)證配置 firewall-cmd--list-all
客戶端測(cè)試
其他ip的主機(jī)遠(yuǎn)程是拒絕了 因?yàn)橹挥?192.168.14.112可以遠(yuǎn)程
192.168.14.112 主機(jī)可以遠(yuǎn)程訪問(wèn)
允許apache流量規(guī)則
# 允許所有主機(jī)訪問(wèn) Apache 服務(wù) firewall-cmd --zone=public--add-service=http --permanent firewall-cmd --zone=public--add-service=https --permanent firewall-cmd --reload # 驗(yàn)證配置 firewall-cmd --list-all
客戶端測(cè)試
為開(kāi)放apache的流量之前
[root@localhost ~]# curl 192.168.14.111 curl: (7) Failed connect to 192.168.14.111:80; 沒(méi)有到主機(jī)的路由
開(kāi)放之后 所有的主機(jī)均可以訪問(wèn)的
[root@localhost ~]# curl 192.168.14.111 2024-12-3
總結(jié)
通過(guò)這篇文章,我們不僅學(xué)習(xí)了 firewalld 和 iptables 的基本概念,更重要的是通過(guò)一個(gè)實(shí)際的案例,展示了如何:
1. 輕松配置防火墻規(guī)則來(lái)阻止 ping 請(qǐng)求
2. 限制特定 IP 地址的 SSH 訪問(wèn),提高服務(wù)器安全性
3. 開(kāi)放 HTTP 服務(wù),讓網(wǎng)站正常對(duì)外提供服務(wù)
記住,防火墻配置不是一成不變的,你可以根據(jù)實(shí)際需求隨時(shí)調(diào)整規(guī)則。最重要的是理解每個(gè)配置背后的原理,這樣才能靈活應(yīng)對(duì)各種場(chǎng)景。希望這篇文章能幫助你在實(shí)際工作中少走彎路,輕松搞定防火墻配置!
-
Linux
+關(guān)注
關(guān)注
87文章
11489瀏覽量
213159 -
服務(wù)器
+關(guān)注
關(guān)注
13文章
9744瀏覽量
87519 -
防火墻
+關(guān)注
關(guān)注
0文章
430瀏覽量
36117 -
CentOS
+關(guān)注
關(guān)注
0文章
83瀏覽量
14195
原文標(biāo)題:Linux防火墻基礎(chǔ)部分Firewalld防火墻(小白入門級(jí)別)
文章出處:【微信號(hào):magedu-Linux,微信公眾號(hào):馬哥Linux運(yùn)維】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
發(fā)現(xiàn) STM32 防火墻的安全配置
防火墻的配置

談防火墻及防火墻的滲透技術(shù)
防火墻的控制端口
防火墻管理
Linux 防火墻配置基礎(chǔ)篇
什么是防火墻?防火墻如何工作?
如何在防火墻上創(chuàng)建虛擬防火墻
在命令行下配置防火墻的基礎(chǔ)上網(wǎng)步驟

請(qǐng)問(wèn)Centos7如何配置firewalld防火墻規(guī)則?

評(píng)論