欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Linux系統(tǒng)中的firewall-offline-cmd詳解(收藏版)

 更新時間:2025年06月09日 15:02:00   作者:門前燈  
firewall-offline-cmd 是 firewalld 的一個命令行工具,專門設(shè)計用于在沒有運行 firewalld 服務(wù)的環(huán)境中配置防火墻規(guī)則,這篇文章主要介紹了Linux系統(tǒng)之firewall-offline-cmd詳解,需要的朋友可以參考下

firewall-offline-cmd 是 firewalld 的一個命令行工具,專門設(shè)計用于在沒有運行 firewalld 服務(wù)的環(huán)境中配置防火墻規(guī)則。這意味著它可以在系統(tǒng)啟動之前或當(dāng) firewalld 服務(wù)不可用時進(jìn)行防火墻規(guī)則的設(shè)置。這對于需要預(yù)先配置防火墻策略的場景特別有用,例如在系統(tǒng)安裝過程中或者網(wǎng)絡(luò)配置階段。

主要用途

  • 離線配置:在無法運行 firewalld 的情況下(如系統(tǒng)未啟動或處于救援模式),使用 firewall-offline-cmd 進(jìn)行防火墻規(guī)則配置。
  • 初始化設(shè)置:在首次部署系統(tǒng)時,通過該命令預(yù)設(shè)防火墻規(guī)則,確保系統(tǒng)在網(wǎng)絡(luò)中上線時就具備所需的安全策略。

基本語法

firewall-offline-cmd [選項...]

選項

1. 狀態(tài)管理

選項描述示例注意事項
--enabled啟用防火墻。如果未指定 --disabled,默認(rèn)啟用。firewall-offline-cmd --enabled--disabled 互斥。
--disabled禁用防火墻(禁用 firewalld 服務(wù))。firewall-offline-cmd --disabled會永久禁用 firewalld。
--check-config檢查永久配置(默認(rèn)和系統(tǒng)配置)的 XML 有效性及語義。firewall-offline-cmd --check-config需結(jié)合 --system-config 使用。

2. 區(qū)域管理

選項描述示例注意事項
--get-default-zone獲取默認(rèn)區(qū)域。firewall-offline-cmd --get-default-zone默認(rèn)區(qū)域影響未指定區(qū)域的連接和接口。
--set-default-zone=zone設(shè)置默認(rèn)區(qū)域。firewall-offline-cmd --set-default-zone=public修改后會影響所有使用默認(rèn)區(qū)域的連接和接口。
--get-zones列出所有預(yù)定義區(qū)域。firewall-offline-cmd --get-zones輸出以空格分隔的區(qū)域列表。
--info-zone=zone顯示指定區(qū)域的詳細(xì)信息(接口、服務(wù)、端口等)。firewall-offline-cmd --info-zone=public輸出格式包含接口、源地址、服務(wù)等信息。

3. 服務(wù)管理

選項描述示例注意事項
[--zone=zone] --add-service=service在指定區(qū)域添加服務(wù)。firewall-offline-cmd --zone=public --add-service=http服務(wù)需為 firewalld 提供的預(yù)定義服務(wù)。
[--zone=zone] --remove-service-from-zone=service從指定區(qū)域移除服務(wù)。firewall-offline-cmd --zone=public --remove-service-from-zone=http服務(wù)需已存在。
[--zone=zone] --list-services列出指定區(qū)域的所有服務(wù)。firewall-offline-cmd --zone=public --list-services輸出以空格分隔的服務(wù)列表。

4. 端口管理

選項描述示例注意事項
[--zone=zone] --add-port=portid[-portid]/protocol在指定區(qū)域添加端口和協(xié)議。firewall-offline-cmd --zone=public --add-port=8080/tcp協(xié)議支持 tcpudp、sctp、dccp。
[--zone=zone] --remove-port=portid[-portid]/protocol從指定區(qū)域移除端口和協(xié)議。firewall-offline-cmd --zone=public --remove-port=8080/tcp端口需已存在。
[--zone=zone] --list-ports列出指定區(qū)域的所有端口。firewall-offline-cmd --zone=public --list-ports輸出格式為 端口/協(xié)議。

5. ICMP 阻斷

選項描述示例注意事項
[--zone=zone] --add-icmp-block=icmptype在指定區(qū)域添加 ICMP 阻斷類型。firewall-offline-cmd --zone=public --add-icmp-block=echo-request需使用 firewall-cmd --get-icmptypes 查詢支持的 ICMP 類型。
[--zone=zone] --remove-icmp-block=icmptype從指定區(qū)域移除 ICMP 阻斷類型。firewall-offline-cmd --zone=public --remove-icmp-block=echo-requestICMP 類型需已存在。

6. IP 轉(zhuǎn)發(fā)與 NAT

選項描述示例注意事項
[--zone=zone] --add-forward-port=port=...:proto=...:toaddr=...添加 IPv4 端口轉(zhuǎn)發(fā)規(guī)則。firewall-offline-cmd --zone=public --add-forward-port=port=80:proto=tcp:toaddr=192.168.1.100僅支持 IPv4,IPv6 需使用富語言。
[--zone=zone] --remove-forward-port=port=...:proto=...:toaddr=...移除 IPv4 端口轉(zhuǎn)發(fā)規(guī)則。firewall-offline-cmd --zone=public --remove-forward-port=port=80:proto=tcp:toaddr=192.168.1.100需完全匹配規(guī)則。

7. 接口綁定

選項描述示例注意事項
[--zone=zone] --add-interface=interface將接口綁定到指定區(qū)域。firewall-offline-cmd --zone=public --add-interface=eth0接口需存在且未綁定其他區(qū)域。
[--zone=zone] --change-interface=interface修改接口所屬區(qū)域。firewall-offline-cmd --zone=public --change-interface=eth0若接口未綁定,行為等同于 --add-interface。

8. 源地址綁定

選項描述示例注意事項
`[–zone=zone] --add-source=source[/mask]MACipset:ipset`將源地址綁定到指定區(qū)域。

9. IPSet 管理

選項描述示例注意事項
--new-ipset=ipset --type=type創(chuàng)建新的永久 IPSet。firewall-offline-cmd --new-ipset=myset --type=hash:ip需指定 IPSet 類型(如 hash:ip)。
--ipset=ipset --add-entry=entry向 IPSet 添加條目。firewall-offline-cmd --ipset=myset --add-entry=192.168.1.100條目需符合 IPSet 類型定義。

10. 日志記錄

選項描述示例注意事項
--set-log-denied=value設(shè)置拒絕日志記錄方式。firewall-offline-cmd --set-log-denied=allvalue 可為 all、unicast、broadcast、multicast、off。

11. 鎖定功能

選項描述示例注意事項
--lockdown-on啟用鎖定模式(限制非白名單應(yīng)用修改防火墻)。firewall-offline-cmd --lockdown-on啟用后需通過白名單管理權(quán)限。
--add-lockdown-whitelist-command=command添加命令到白名單。firewall-offline-cmd --add-lockdown-whitelist-command=/usr/bin/firewall-cmd命令需絕對路徑,結(jié)尾 * 表示通配。

12. 其他高級功能

選項描述示例注意事項
--direct --add-rule ipv4 nat POSTROUTING 0 -s 192.168.1.0/24 -j MASQUERADE添加直接的 iptables 規(guī)則。firewall-offline-cmd --direct --add-rule ipv4 nat POSTROUTING 0 -s 192.168.1.0/24 -j MASQUERADE需熟悉 iptables 語法,優(yōu)先使用富語言。
--new-zone-from-file=filename從文件導(dǎo)入自定義區(qū)域配置。firewall-offline-cmd --new-zone-from-file=/etc/firewalld/zones/custom.xml文件需符合 firewalld 區(qū)域配置格式。

示例

1. 狀態(tài)管理

1.1 啟用/禁用防火墻

firewall-offline-cmd --enabled
firewall-offline-cmd --disabled
  • 作用:啟用或禁用防火墻(通過禁用/啟用 firewalld 服務(wù))。
  • 示例
# 啟用防火墻
$ firewall-offline-cmd --enabled
# 禁用防火墻
$ firewall-offline-cmd --disabled

1.2 檢查配置有效性

firewall-offline-cmd --check-config
  • 作用:檢查永久配置(默認(rèn)和系統(tǒng)配置)的 XML 有效性和語義正確性。
  • 用途:在修改配置文件后驗證是否符合規(guī)范。

2. 區(qū)域管理

2.1 獲取默認(rèn)區(qū)域

firewall-offline-cmd --get-default-zone

作用:查看默認(rèn)區(qū)域(新接口/源的綁定區(qū)域)。

2.2 設(shè)置默認(rèn)區(qū)域

firewall-offline-cmd --set-default-zone=<zone>
  • 作用:將默認(rèn)區(qū)域設(shè)置為 <zone>(如 public)。
  • 示例
$ firewall-offline-cmd --set-default-zone=public

2.3 列出活動區(qū)域

firewall-offline-cmd --list-all-zones
  • 作用:列出所有區(qū)域及其配置(接口、源、服務(wù)、端口等)。

2.4 查詢接口所屬區(qū)域

firewall-offline-cmd --get-zone-of-interface=<interface>
  • 作用:查看接口 <interface> 所屬的區(qū)域。
  • 示例
$ firewall-offline-cmd --get-zone-of-interface=eth0public

2.5 查詢源地址所屬區(qū)域

firewall-offline-cmd --get-zone-of-source=<source>
  • 作用:查看源地址 <source>(IP/MAC/ipset)所屬的區(qū)域。
  • 示例
$ firewall-offline-cmd --get-zone-of-source=192.168.1.100home

3. 服務(wù)管理

3.1 添加服務(wù)到區(qū)域

firewall-offline-cmd [--zone=<zone>] --add-service=<service>
  • 作用:將服務(wù) <service>(如 http)添加到指定區(qū)域(默認(rèn)區(qū)域或通過 --zone 指定)。
  • 示例
$ firewall-offline-cmd --zone=public --add-service=http

3.2 移除服務(wù)

firewall-offline-cmd [--zone=<zone>] --remove-service-from-zone=<service>
  • 作用:從區(qū)域中移除服務(wù)。
  • 示例
$ firewall-offline-cmd --zone=public --remove-service-from-zone=http

3.3 查詢服務(wù)是否啟用

firewall-offline-cmd [--zone=<zone>] --query-service=<service>
  • 作用:檢查服務(wù)是否在區(qū)域中啟用。
  • 返回值0(啟用)、1(未啟用)。

4. 端口管理

4.1 添加端口到區(qū)域

firewall-offline-cmd [--zone=<zone>] --add-port=<portid[-portid]/protocol>
  • 作用:開放指定端口和協(xié)議(如 80/tcp)。
  • 示例
$ firewall-offline-cmd --zone=public --add-port=80/tcp

4.2 移除端口

firewall-offline-cmd [--zone=<zone>] --remove-port=<portid[-portid]/protocol>
  • 作用:關(guān)閉指定端口。
  • 示例
$ firewall-offline-cmd --zone=public --remove-port=80/tcp

4.3 列出區(qū)域端口

firewall-offline-cmd [--zone=<zone>] --list-ports

作用:查看區(qū)域中開放的端口列表。

5. 協(xié)議管理

5.1 添加協(xié)議到區(qū)域

firewall-offline-cmd [--zone=<zone>] --add-protocol=<protocol>
  • 作用:允許指定協(xié)議(如 icmp)。
  • 示例
$ firewall-offline-cmd --zone=public --add-protocol=icmp

5.2 移除協(xié)議

firewall-offline-cmd [--zone=<zone>] --remove-protocol=<protocol>

作用:禁止指定協(xié)議。

6. ICMP 類型管理

6.1 阻止 ICMP 類型

firewall-offline-cmd [--zone=<zone>] --add-icmp-block=<icmptype>
  • 作用:阻止特定 ICMP 類型(如 echo-request)。
  • 示例
$ firewall-offline-cmd --zone=public --add-icmp-block=echo-request

6.2 移除 ICMP 阻止

firewall-offline-cmd [--zone=<zone>] --remove-icmp-block=<icmptype>

7. 轉(zhuǎn)發(fā)端口

7.1 添加端口轉(zhuǎn)發(fā)

firewall-offline-cmd [--zone=<zone>] --add-forward-port=port=<port>:proto=<protocol>[:toport=<port>][:toaddr=<address>]
  • 作用:配置 IPv4 端口轉(zhuǎn)發(fā)(NAT)。
  • 示例
$ firewall-offline-cmd --zone=public --add-forward-port=port=80:proto=tcp:toport=8080:toaddr=192.168.1.100

7.2 移除端口轉(zhuǎn)發(fā)

firewall-offline-cmd [--zone=<zone>] --remove-forward-port=port=<port>:proto=<protocol>[:toport=<port>][:toaddr=<address>]

8. 富規(guī)則(Rich Rules)

8.1 添加富規(guī)則

firewall-offline-cmd [--zone=<zone>] --add-rich-rule='<rule>'
  • 作用:添加復(fù)雜規(guī)則(如基于源地址、端口、服務(wù)的組合規(guī)則)。
  • 示例
$ firewall-offline-cmd --zone=public --add-rich-rule='rule family="ipv4" source address="192.168.1.0/24" port protocol="tcp" port="22" accept'

8.2 移除富規(guī)則

firewall-offline-cmd [--zone=<zone>] --remove-rich-rule='<rule>'

9. 永久配置

9.1 保存運行時配置

firewall-offline-cmd 默認(rèn)操作的是 永久配置,無需額外保存。

9.2 永久配置選項

所有命令默認(rèn)操作永久配置(如 --add-service 直接修改永久配置文件)。

10. 高級功能

10.1 IPset 管理 創(chuàng)建 IPset:

firewall-offline-cmd --new-ipset=<ipset> --type=<type>

添加條目

firewall-offline-cmd --ipset=<ipset> --add-entry=<entry>

10.2 直接規(guī)則(Direct Rules)

firewall-offline-cmd --direct --passthrough <ipv4|ipv6|eb> <args>
  • 作用:直接調(diào)用 iptables/ip6tables 命令。
  • 示例
$ firewall-offline-cmd --direct --passthrough ipv4 '-A INPUT -p tcp --dport 22 -j ACCEPT'

11. 鎖定模式(Lockdown)

11.1 啟用鎖定

firewall-offline-cmd --lockdown-on

作用:限制只有白名單內(nèi)的程序可修改防火墻規(guī)則。

11.2 添加白名單命令

firewall-offline-cmd --add-lockdown-whitelist-command=<command>

12. 常見錯誤代碼

代碼含義
0成功
11已啟用(ALREADY_ENABLED)
12未啟用(NOT_ENABLED)
252服務(wù)未運行(NOT_RUNNING)
253權(quán)限不足(NOT_AUTHORIZED)
254未知錯誤(UNKNOWN_ERROR)

13. 示例匯總

13.1 開放 HTTP 服務(wù)

# 添加 HTTP 服務(wù)到默認(rèn)區(qū)域$ firewall-offline-cmd --add-service=http

13.2 配置端口轉(zhuǎn)發(fā)

# 配置 IPv4 端口轉(zhuǎn)發(fā)$ firewall-offline-cmd --add-forward-port=port=80:proto=tcp:toport=8080:toaddr=192.168.1.100

13.3 限制源地址訪問

# 添加富規(guī)則限制源地址訪問 SSH$ firewall-offline-cmd --add-rich-rule='rule family="ipv4" source address="192.168.1.0/24" service name="ssh" accept'

相關(guān)文章

  • wamp2.2e 64位 curl 開啟不了的解決辦法

    wamp2.2e 64位 curl 開啟不了的解決辦法

    這篇文章主要介紹了wamp2.2e 64位 curl 開啟不了的解決辦法,需要的朋友可以參考下
    2014-12-12
  • centos把網(wǎng)卡名稱修改為eth0的方法

    centos把網(wǎng)卡名稱修改為eth0的方法

    本篇文章主要介紹了centos把網(wǎng)卡名稱修改為eth0,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-02-02
  • Linux企業(yè)運維人員常用的150個命令分享

    Linux企業(yè)運維人員常用的150個命令分享

    這篇文章主要介紹了Linux企業(yè)運維人員常用的150個命令(歡迎補充),具體多少個來著,我也沒數(shù)。分享給大家,供需要的朋友參考。
    2017-10-10
  • Linux如何啟動SELinux

    Linux如何啟動SELinux

    這篇文章主要介紹了Linux如何啟動SELinux問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2024-02-02
  • Linux服務(wù)器上安裝Python3的兩種方式

    Linux服務(wù)器上安裝Python3的兩種方式

    這篇文章主要介紹了Linux服務(wù)器上安裝Python3,本文通過兩種方式給大家詳解,需要的朋友可以參考下
    2019-11-11
  • 清除CentOS 6或CentOS 7上的磁盤空間的方法

    清除CentOS 6或CentOS 7上的磁盤空間的方法

    這篇文章主要介紹了清除CentOS 6或CentOS 7上的磁盤空間的方法,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-05-05
  • Apache mod_rewrite中的REQUEST_URI使用實例

    Apache mod_rewrite中的REQUEST_URI使用實例

    這篇文章主要介紹了Apache mod_rewrite中的REQUEST_URI使用實例,本文使用一個實例講解如何使用REQUEST_URI,需要的朋友可以參考下
    2015-01-01
  • 將寶塔面板linux版裝在/www以外的目錄的方法

    將寶塔面板linux版裝在/www以外的目錄的方法

    很多云VPS系統(tǒng)盤,也就是根目錄(系統(tǒng)盤)都是10個G,寶塔安裝完整環(huán)境基本5個G沒有了,用了不到幾個月,隨著日志文件等亂七八糟的東西增加,面板就提示根目錄低于1個G,隨后mysql就莫名其妙掛掉,這里就為大家分享一下將面板安裝到別的目錄的方法
    2018-05-05
  • Apache設(shè)置目錄禁止訪問

    Apache設(shè)置目錄禁止訪問

    這篇文章主要介紹了如何在Apache中設(shè)置目錄禁止訪問,非常的簡單實用,有需要的朋友可以參考下
    2014-11-11
  • 一條命令讓你明白shell中read命令的常用參數(shù)

    一條命令讓你明白shell中read命令的常用參數(shù)

    今天小編就為大家分享一篇關(guān)于一條命令讓你明白shell中read命令的常用參數(shù),小編覺得內(nèi)容挺不錯的,現(xiàn)在分享給大家,具有很好的參考價值,需要的朋友一起跟隨小編來看看吧
    2019-03-03

最新評論