91欧美超碰AV自拍|国产成年人性爱视频免费看|亚洲 日韩 欧美一厂二区入|人人看人人爽人人操aV|丝袜美腿视频一区二区在线看|人人操人人爽人人爱|婷婷五月天超碰|97色色欧美亚州A√|另类A√无码精品一级av|欧美特级日韩特级

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

10分鐘精通Linux Firewalld:從入門到企業(yè)級安全防護(hù)

馬哥Linux運維 ? 來源:馬哥Linux運維 ? 2025-01-15 14:00 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

實踐環(huán)境

CentOS-7-x86_64-DVD-2009

簡介

Firewalld是一種簡單的、有狀態(tài)的、基于區(qū)域(zone-based)的防火墻。策略和區(qū)域用于組織防火墻規(guī)則。網(wǎng)絡(luò)在邏輯上被劃分為多個區(qū)域,它們之間的流量可以通過策略進(jìn)行管理。

e2b1a25c-d258-11ef-9310-92fbcf53809c.png

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

# service firewalld status

或者

# systemctl status firewalld
● firewalld.service - firewalld - dynamic firewall daemon
   Loaded: loaded (/usr/lib/systemd/system/firewalld.service; disabled; vendor preset: enabled)
   Active: inactive (dead)
     Docs: man:firewalld(1)

說明:如果輸出顯示Active: inactive (dead),則表示未開啟防火墻。如果現(xiàn)實Active: active (running)則表示開啟了防火墻。

或者

# firewall-cmd --state
not running

開啟防火墻

# service firewalld start

或者

# systemctl start firewalld

重啟防火墻

# service firewalld restart

或者

# systemctl restart firewalld

設(shè)置防火墻開機自啟

# systemctl enable firewalld
Created symlink from /etc/systemd/system/dbus-org.fedoraproject.FirewallD1.service to /usr/lib/systemd/system/firewalld.service.
Created symlink from /etc/systemd/system/multi-user.target.wants/firewalld.service to /usr/lib/systemd/system/firewalld.service.

禁用防火墻開機自啟

# systemctl disable firewalld
Removed symlink /etc/systemd/system/multi-user.target.wants/firewalld.service.
Removed symlink /etc/systemd/system/dbus-org.fedoraproject.FirewallD1.service.

查看預(yù)定義區(qū)域

# firewall-cmd --get-zones
block dmz drop external home internal public trusted work
# #查看每個區(qū)域的詳細(xì)信息
# firewall-cmd --list-all-zones

區(qū)域簡介:

區(qū)域 默認(rèn)規(guī)則
block 拒絕流入的流量,除非與流出的流量相關(guān)
dmz 拒絕流入的流量,除非與流出的流量相關(guān);如果流量與ssh服務(wù)相關(guān),則允許流量
drop 拒絕流入的流量,除非與流出的流量相關(guān)
external 拒絕流入的流量;除非與流出的流量相關(guān);如果流量與ssh服務(wù)相關(guān),則允許流量
home 拒絕流入的流量;除非與流出的流量相關(guān);如果流量與ssh,mdns,ipp-client,amba-client,dhcpv6-client服務(wù)相關(guān),則允許流量
internal 等同于home區(qū)域
public 拒絕流入的流量;除非與流出的流量相關(guān);如果流量與ssh,dhcpv6-client服務(wù)相關(guān),則允許流量
trusted 允許所有的數(shù)據(jù)包流入與流出
work 拒絕流入的流量;除非與流出的流量相關(guān);如果流量與ssh,ipp-client,dhcpv6-client服務(wù)相關(guān),則允許流量

創(chuàng)建自定義區(qū)域

# firewall-cmd --permanent --new-zone=testing
success

注意:--permanent選項不能少

查看默認(rèn)區(qū)域

# firewall-cmd --get-default-zone
public

查看網(wǎng)卡關(guān)聯(lián)的區(qū)域

# ip addr
1: lo:  mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
    link/loopback 000000:00 brd 000000:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host 
       valid_lft forever preferred_lft forever
2: ens33:  mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
    link/ether 002986:da brd ffffff:ff
    inet 192.168.206.102/24 brd 192.168.206.255 scope global ens33
       valid_lft forever preferred_lft forever
    inet6 fe80:29ff86da/64 scope link 
       valid_lft forever preferred_lft forever
# firewall-cmd --get-zone-of-interface=ens33
public

注意:一張網(wǎng)卡只能關(guān)聯(lián)一個區(qū)域

修改默認(rèn)區(qū)域

例子:

# #修改默認(rèn)區(qū)域為`trusted`
# firewall-cmd --set-default-zone=trusted 
success
# firewall-cmd --get-default-zone 
trusted
# firewall-cmd --get-zone-of-interface=ens33
trusted
# #還原
# firewall-cmd --set-default-zone=public 
success
# firewall-cmd --get-default-zone 
public
# firewall-cmd --get-zone-of-interface=ens33
public

修改網(wǎng)卡關(guān)聯(lián)的區(qū)域

方法1:先刪除現(xiàn)有關(guān)聯(lián)區(qū)域,再添加目標(biāo)關(guān)聯(lián)區(qū)域(因為同一時間,一張網(wǎng)卡只能關(guān)聯(lián)一個區(qū)域,所以要先添加再刪除)

# firewall-cmd --remove-interface=ens33 --zone=public
success
# firewall-cmd --get-zone-of-interface=ens33
no zone
## 設(shè)置ens33關(guān)聯(lián)區(qū)域為trusted
# firewall-cmd --add-interface=ens33 --zone=trusted
success
# firewall-cmd --get-zone-of-interface=ens33
trusted

方法2:

## 設(shè)置ens33關(guān)聯(lián)區(qū)域為public
# firewall-cmd --change-interface=ens33 --zone=public
success
# firewall-cmd --get-zone-of-interface=ens33
public

打印當(dāng)前活動區(qū)域及綁定的接口和源

firewall-cmd --get-active-zones

打印當(dāng)前活動區(qū)域以及這些區(qū)域中使用的接口和源?;顒訁^(qū)域是與接口或源綁定的區(qū)域。輸出格式為:

zone1
  interfaces: interface1 interface2 ..
  sources: source1 ..
zone2
  interfaces: interface3 ..
zone3
  sources: source2 ..
如果沒有接口和源綁定到區(qū)域,則忽略該對應(yīng)區(qū)域行

例子:

# firewall-cmd --get-active-zones
public
  interfaces: ens33

端口訪問限制

查看已開放端口

firewall-cmd  [--permanent] [--zone=zone] --list-ports

以空格分隔的列表形式列出為區(qū)域添加的端口。端口的形式為portid[-portid]/protocol,它可以是端口和協(xié)議對,也可以是具有協(xié)議的端口范圍。如果忽略--zone選項配置,將使用默認(rèn)區(qū)域。

添加開放端口

firewall-cmd [--permanent] [--zone=zone] --add-port=portid[-portid]/protocol [--timeout=timeval]

為zone(區(qū)域)添加端口。如果省略了--zone選項配置,將使用默認(rèn)區(qū)域。此選項可以多次指定。如果提供了--timeout,則該規(guī)則將在指定的超時時間內(nèi)處于活動狀態(tài),超時之后將自動刪除。timeval是一個數(shù)字(秒)或數(shù)字后跟一個字符s(秒)、m(分鐘)、h(小時),例如20m或1h。
端口可以是單個端口號,也可以是端口范圍portid-portid。協(xié)議可以是tcp、udp、sctp或dccp。
--timeout選項不能與--permanent選項組合使用。

取消開放端口

firewall-cmd [--permanent] [--zone=zone] --remove-port=portid[-portid]/protocol

從區(qū)域中刪除端口。如果省略了--zone選項配置,將使用默認(rèn)區(qū)域。此選項可以多次指定。
--permanent可用于持久設(shè)置選項。這些更改不會立即生效,只有在重新啟動/重新加載服務(wù)或系統(tǒng)重新啟動后才會生效。如果未使用--permanent,則更改將僅是運行時配置的一部分(所做的變更在重啟服務(wù)、重新加載服務(wù)后失效),下同,不再贅述。

例子

例子:為public區(qū)域持久開放 tcp協(xié)議端口 15672

# firewall-cmd --permanent --add-port=15672/tcp
# firewall-cmd --list-ports # 查不到端口
# #讓配置生效
# firewall-cmd --reload
success
# firewall-cmd --list-ports
15672/tcp

說明:

firewall-cmd --reload

重新加載防火墻規(guī)則并保留狀態(tài)信息。當(dāng)前的持久配置將成為新的運行時配置,也就說執(zhí)行的所有僅運行時變更在重新加載規(guī)則后丟失。類似的,有以下命令

firewall-cmd --complete-reload

完全重新加載防火墻,甚至netfilter內(nèi)核模塊。這很可能會終止活動連接,因為狀態(tài)信息會丟失。此選項僅用于嚴(yán)重的防火墻問題。例如,防火墻規(guī)則正確的情況下,無法建立連接的狀態(tài)信息問題

例子:為public區(qū)域持久開放 tcp協(xié)議端口范圍 1000-2000(包括1000及2000)

# firewall-cmd --permanent --add-port=1000-2000/tcp
success
# firewall-cmd --reload
success
# firewall-cmd --list-ports
15672/tcp 1000-2000/tcp

例子:為public區(qū)域持久取消開放 tcp協(xié)議端口 15672

# firewall-cmd --permanent --remove-port=15672/tcp
success
# firewall-cmd --reload
success
# firewall-cmd --list-ports
1000-2000/tcp

例子:為public區(qū)域持久取消開放tcp協(xié)議端口范圍 1000-2000(包括1000及2000)

]# firewall-cmd --permanent --remove-port=1000-2000/tcp
success
# firewall-cmd --reload
success
# firewall-cmd --list-ports

#

IP、網(wǎng)絡(luò)訪問限制

添加開放源

firewall-cmd [--permanent] [--zone=zone] --add-source=source[/mask]|MAC|ipset:ipset

綁定源(source,IP、網(wǎng)絡(luò)、MAC、IP集)到區(qū)域zone。如果省略了--zone選項配置,將使用默認(rèn)區(qū)域。

取消開放源

firewall-cmd [--permanent] --remove-source=source[/mask]|MAC|ipset:ipset

從區(qū)域zone刪除之前添加綁定的源

例子

例子:允許IP 192.168.50.182持久訪問為public區(qū)域

# firewall-cmd --permanent --add-source=192.168.50.182
success
# firewall-cmd --reload
success

說明:添加IP白名單后,即使未添加開放端口,針對當(dāng)前IP,也可以正常訪問。

例子:允許子網(wǎng)192.168.50.0/24持久訪問為public區(qū)域

# firewall-cmd --permanent --add-source=192.168.50.0/24
success
# firewall-cmd --reload
success

例子:取消IP 192.168.50.182對public區(qū)域的持久訪問許可

# firewall-cmd --permanent --remove-source=192.168.50.182
success
# firewall-cmd --reload
success

富語言規(guī)則

列出富語言規(guī)則

firewall-cmd [--permanent] [--zone=zone] --list-rich-rules

以換行符分隔的列表形式列出為區(qū)域添加的富語言規(guī)則。如果省略了--zone選項,將使用默認(rèn)區(qū)域。

添加富語言規(guī)則

firewall-cmd [--permanent] [--zone=zone] --add-rich-rule='rule' [--timeout=timeval]

為區(qū)域添加富語言規(guī)則'rule'。此選項可以多次指定。如果省略了區(qū)域,將使用默認(rèn)區(qū)域。如果提供了--timeout,則該規(guī)則將在指定的超時時間內(nèi)處于活動狀態(tài),超時之后將自動刪除。timeval是一個數(shù)字(秒)或數(shù)字后跟一個字符s(秒)、m(分鐘)、h(小時),例如20m或1h。

--timeout選項不能與--permanent選項組合使用。

刪除富語言規(guī)則

firewall-cmd  [--permanent] [--zone=zone] --remove-rich-rule='rule'

從區(qū)域中刪除富語言規(guī)則'rule'。此選項可以多次指定。如果省略了區(qū)域,將使用默認(rèn)區(qū)域。

查詢富語言規(guī)則

firewall-cmd  [--permanent] [--zone=zone] --query-rich-rule='rule'

返回是否為區(qū)域添加了富語言規(guī)則'rule'。如果省略了--zone,將使用默認(rèn)區(qū)域。如果為真,則返回0,否則返回1。

例子

例子:允許 IP 192.168.50.182 持久訪問public區(qū)域tcp協(xié)議端口15672

# firewall-cmd --permanent --add-rich-rule='rule family="ipv4" source address="192.168.50.182" port protocol="tcp" port="15672" accept'
# firewall-cmd --reload

例子:取消 IP 192.168.50.182 持久訪問public區(qū)域tcp協(xié)議端口15672的許可

# firewall-cmd --permanent --remove-rich-rule='rule family="ipv4" source address="192.168.50.182" port protocol="tcp" port="15672" accept'
success
# firewall-cmd --reload

例子:禁止 IP 192.168.50.182 持久訪問public區(qū)域

# firewall-cmd --permanent --add-rich-rule='rule family="ipv4" source address="192.168.50.182" reject'
# firewall-cmd --reload

注意:添加訪問限制前,建議先移除之前的訪問許可配置,否則可能導(dǎo)致當(dāng)前規(guī)則不起作用。此外,這里的reject也可以替換為drop,即直接丟棄來訪請求數(shù)據(jù)包。

例子:取消禁止 IP 192.168.50.182 持久訪問public區(qū)域限制

# firewall-cmd --permanent --remove-rich-rule='rule family="ipv4" source address="192.168.50.182" reject'
# firewall-cmd --reload

例子:查看當(dāng)前配置的富語言規(guī)則

# firewall-cmd --list-rich-rules
rule family="ipv4" source address="192.168.50.182" reject

列出為區(qū)域啟用或添加的所有內(nèi)容

firewall-cmd[--permanent] [--zone=zone] --list-all

列出為區(qū)域添加或啟用的所有內(nèi)容。如果省略了--zone選項配置,則將使用默認(rèn)區(qū)域。

例子:

# firewall-cmd --list-all
public (active)
  target: default
  icmp-block-inversion: no
  interfaces: ens33
  sources: 
  services: dhcpv6-client ssh
  ports: 15672/tcp
  protocols: 
  masquerade: no
  forward-ports: 
  source-ports: 
  icmp-blocks: 
  rich rules:

保存當(dāng)前運行時配置為持久配置

# firewall-cmd --runtime-to-permanent

保存活動運行時配置并用它覆蓋持久配置。

鏈接:https://www.cnblogs.com/shouke/p/18366534

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • Linux
    +關(guān)注

    關(guān)注

    88

    文章

    11758

    瀏覽量

    219009
  • 防火墻
    +關(guān)注

    關(guān)注

    0

    文章

    446

    瀏覽量

    36695

原文標(biāo)題:10分鐘精通Linux Firewalld:從入門到企業(yè)級安全防護(hù),新手必看!

文章出處:【微信號:magedu-Linux,微信公眾號:馬哥Linux運維】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點推薦

    Ubuntu_Linux入門精通

    Ubuntu_Linux入門精通
    發(fā)表于 08-20 14:07

    Linux 入門精通 a

    Linux 入門精通,無分卷,我也是沒有E幣的倫,CLOUD發(fā)送的小于10M的東西能不分卷就
    發(fā)表于 04-20 13:16

    Altium designer10入門精通

    Altium designer10入門精通:Altium designer10
    發(fā)表于 07-19 22:16

    ALTIUM DESIGNER 10入門精通

    ALTIUM DESIGNER 10入門精通(文件太大,分了好多卷,供有需要的人學(xué)習(xí))
    發(fā)表于 04-16 18:47

    Linux入門精通 高清版.

    本帖最后由 lee_st 于 2018-3-2 14:26 編輯 Linux入門精通 437頁 74.3M 高清版.
    發(fā)表于 03-01 15:55

    企業(yè)級LInux系統(tǒng)日志管理

    企業(yè)級LInux系統(tǒng)日志管理
    發(fā)表于 05-29 11:33

    DSP入門精通全集

    DSP入門精通全集
    發(fā)表于 03-30 23:20 ?8538次下載

    nios入門精通

    nios入門精通
    發(fā)表于 07-08 16:55 ?0次下載

    Ubuntu入門精通

    《Ubuntu入門精通》Ubuntu一般是作為學(xué)習(xí)linux入門操作系統(tǒng),界面良好,現(xiàn)在已
    發(fā)表于 10-30 17:14 ?168次下載

    Unity5 入門精通

    Unity5 入門精通
    發(fā)表于 04-18 14:26 ?7次下載

    Android Studio入門精通

    Android Studio入門精通.pdf
    發(fā)表于 08-14 15:05 ?17次下載

    DeepSeek:入門精通

    DeepSeek:入門精通
    發(fā)表于 02-08 18:00 ?135次下載

    DeepSeek入門精通

    電子發(fā)燒友網(wǎng)站提供《DeepSeek入門精通.pdf》資料免費下載
    發(fā)表于 03-04 15:43 ?71次下載

    DeepSeek:入門精通

    電子發(fā)燒友網(wǎng)站提供《DeepSeek:入門精通.pdf》資料免費下載
    發(fā)表于 05-28 14:12 ?5次下載

    Linux企業(yè)網(wǎng)絡(luò)安全防護(hù)體系建設(shè)

    構(gòu)建完整的Linux安全防護(hù)體系不是簡單的工具堆砌,而是需要從架構(gòu)設(shè)計、監(jiān)控告警、應(yīng)急響應(yīng)到持續(xù)改進(jìn)的完整閉環(huán)。本文將分享我在大型企業(yè)環(huán)境中的實戰(zhàn)經(jīng)驗。
    的頭像 發(fā)表于 08-27 14:39 ?762次閱讀