文章目录
四、高可用环境中,配置Firewall防火墙允许Keepalived的VRRP流量通过
一、启用/禁用/重启Firewall防火墙
##开启Firewall防火墙
[root@localhost ~]# systemctl start firewalld
##配置Firewall防火墙开机自启
[root@localhost ~]# systemctl enable firewalld
##禁用iptables
[root@localhost ~]# systemctl stop iptables
##禁止iptables开机自启
[root@localhost ~]# systemctl disable iptables
##重启Firewall防火墙
[root@localhost ~]# systemctl restart firewalld
二、配置Firewall防火墙进行访问限制
说明:开启Firewall防火墙后,默认情况下,只有本机可以访问本机的容器和应用。
##开放指定应用的端口给所有主机,如MySQL的3306端口,所有主机都可以访问
[root@localhost ~]# firewall-cmd --zone=public --add-port=3306/tcp --permanent
##删除开放指定应用的端口给所有主机的访问策略
[root@localhost ~]# firewall-cmd --zone=public --remove-port=3306/tcp --permanent
##指定IP的主机访问本机指定应用端口
##如IP为192.168.111.86的主机可以访问本机的MySQL,其他主机都不能访问本机的MySQL
[root@localhost ~]# firewall-cmd --permanent \
--add-rich-rule="rule family="ipv4" source address="192.168.111.86" \
port protocol="tcp" port="3306" accept"
##删除指定IP的主机能访问本机指定应用端口的访问策略
[root@localhost ~]# firewall-cmd --permanent \
--remove-rich-rule="rule family="ipv4" source address="192.168.111.86" \
port protocol="tcp" port="3306" accept"
三、配置Firewall防火墙是否允许 NAT 转发
##检查Firewall防火墙是否允许 NAT 转发,yes表示允许
[root@localhost ~]# firewall-cmd --query-masquerade
##若Firewall防火墙未允许 NAT 转发,则配置允许
[root@localhost ~]# firewall-cmd --permanent --zone=public --add-masquerade
##禁止防火墙 NAT 转发
[root@localhost ~]# firewall-cmd --remove-masquerad
四、高可用环境中,配置Firewall防火墙允许Keepalived的VRRP流量通过
##注意,根据主机的网卡配置相应修改ens33
[root@localhost ~]# firewall-cmd --direct --permanent \
--add-rule ipv4 filter INPUT 0 --in-interface ens33 \
--destination 224.0.0.18 --protocol vrrp -j ACCEPT
##注意,根据主机的网卡配置相应修改ens33
[root@localhost ~]# firewall-cmd --direct --permanent \
--add-rule ipv4 filter OUTPUT 0 --out-interface ens33 \
--destination 224.0.0.18 --protocol vrrp -j ACCEPT
五、Firewall防火墙配置生效
##重新载入,使配置生效
[root@localhost ~]# firewall-cmd --reload
##查看配置结果
[root@localhost ~]# firewall-cmd --list-all
##查看防火墙所有开放的端口
[root@localhost ~]# firewall-cmd --zone=public --list-ports