仅在进行集群卸载或主机缩容后才可执行后台手动清空防火墙规则的操作,其他情况下禁止执行。 |
若集群卸载或主机缩容时,主机不可达(离线或心跳丢失),则该主机在卸载时将无法清空防火墙规则,若有清除需要请在后台手动执行,步骤如下:
后台登录待清理防火墙规则的节点,。
查看防火墙状态,命令如下:
systemctl status firewalld.service
若防火墙状态当前为开启,继续执行后面步骤即可。
若防火墙状态当前为关闭,则需要先进行开启,命令为systemctl start firewalld.service,然后再次查看防火墙状态重复步骤2。
当防火墙状态当前为开启时,查看防火墙规则,命令如下:
firewall-cmd –list-all –zone=public
【示例】查看到的防火墙规则如下:
public
target: default
icmp-block-inversion: no
interfaces:
sources:
services: dhcpv6-client ssh
ports: 443/tcp
protocols:
masquerade: no
forward-ports:
source-ports:
icmp-blocks:
rich rules:
rule family="ipv4" source address="10.121.68.131" accept
rule family="ipv4" source address="10.121.68.132" accept
rule family="ipv4" source address="10.121.68.133" accept
rule family="ipv4" source address="10.121.68.160" accept
rule family="ipv4" source address="10.121.68.161" accept
rule family="ipv4" source address="10.121.68.162" accept
从此示例中,可以看出当前白名单为10.121.68.131,10.121.68.132,10.121.68.133,10.121.68.160,10.121.68.161,10.121.68.162。
针对在防火墙规则中查看到的白名单,需要分别执行以下命令移除白名单:
firewall-cmd --permanent --remove-rich-rule='rule family="ipv4" source address=IP accept'
其中,IP代表步骤3中查看到的白名单IP,需要分别执行。
移除白名单操作执行完成后,再次查看防火墙规会发现已清除白名单。
然后,务必执行如下命令上述操作才可生效:
firewall-cmd --reload
最后,关闭防火墙,命令如下:
systemctl stop firewalld.service
(可选)如果该节点为管理节点,还必须再次手动配置下docker NAT,否则管理平台会挂掉。
iptables -t nat -A POSTROUTING -s 172.17.0.0/16 ! -o docker0 -j MASQUERADE