在CentOS系統中,Docker默認使用firewalld
作為防火墻管理工具。要配置Docker的防火墻規則,你需要遵循以下步驟:
確保firewalld正在運行:
首先,確保你的系統上已經安裝并啟用了firewalld
服務。你可以使用以下命令檢查其狀態:
sudo systemctl status firewalld
如果它沒有運行,你可以使用以下命令啟動它:
sudo systemctl start firewalld
允許Docker守護進程通信:
默認情況下,firewalld
會允許Docker守護進程的通信。但是,如果你更改了Docker的默認端口或需要添加額外的規則,你可以使用以下命令:
sudo firewall-cmd --permanent --zone=trusted --add-interface=docker0
這將允許Docker守護進程通過docker0
接口進行通信。
添加自定義規則:
如果你需要為Docker容器添加特定的防火墻規則,你可以使用firewall-cmd
命令。例如,如果你想允許來自特定IP地址的流量訪問Docker容器,你可以這樣做:
sudo firewall-cmd --permanent --zone=trusted --add-source=192.168.1.100
這將允許IP地址192.168.1.100
訪問trusted
區域中的所有服務。
重新加載防火墻配置:
在添加或修改了防火墻規則后,你需要重新加載firewalld
配置以使更改生效:
sudo firewall-cmd --reload
檢查規則: 你可以使用以下命令查看當前的防火墻規則:
sudo firewall-cmd --list-all
或者查看特定區域的規則:
sudo firewall-cmd --zone=trusted --list-all
請注意,這些步驟適用于CentOS 7和CentOS 8,因為它們都使用firewalld
作為默認的防火墻管理工具。如果你使用的是其他防火墻工具,如iptables
,則需要使用不同的命令來配置規則。