etcd未授权访问漏洞修复的疑问

请问etcd漏洞修复问题,官方提供的两种方案之二:

通过防火墙iptables设置白名单,PD之间互信,拒绝外来访问

这里的版本是centos6配置的iptables吧,如果是centos7如果配置iptables防火墙呢?
我在centos7里按上面文档在/etc/sysconfig/iptables添加类似如下内容不成功:
-A INPUT -s 192.168.1.100 -p tcp -m tcp --dport 2379 -j ACCEPT
-A INPUT -s 192.168.1.101 -p tcp -m tcp --dport 2379 -j ACCEPT

systemctl start iptables重启防火墙不成功,是不是centos7不支持这种写法呢?

centos7 、龙蜥 支撑以下通过防火墙设置

查看现有防火墙规则

firewall-cmd --list-all

重启应用现有防火墙策略

firewall-cmd --reload

放通某个ip段

firewall-cmd --permanent --zone=public --add-rich-rule=‘rule family=“ipv4” source address=“192.168.X.X/24” accept’

重启应用现有防火墙策略

firewall-cmd --reload

sudo iptables -A INPUT -s 192.168.1.100 -p tcp -m tcp --dport 2379 -j ACCEPT
sudo iptables -A INPUT -s 192.168.1.101 -p tcp -m tcp --dport 2379 -j ACCEPT
sudo iptables -A INPUT -p tcp --dport 2379 -j DROP
sudo iptables -L -n
sudo iptables-save > /etc/sysconfig/iptables
sudo systemctl restart iptables

如果只做PD之间互信,那要注意Dashboard的话会访问不了。

1 个赞

最好从网络层面的防火墙来处理

centos6一般防火墙用的都是iptables,centos7一般防火墙用的firewalld,你改成用下面的命令
firewall-cmd --permanent --add-rich-rule=‘rule family=“ipv4” source address=“192.168.1.100” port port=“2379” protocol=“tcp” accept’
firewall-cmd --permanent --add-rich-rule=‘rule family=“ipv4” source address=“192.168.1.101” port port=“2379” protocol=“tcp” accept’
firewall-cmd --reload
然后firewall-cmd --list-all
检查下配置的规则就行了。

firewall-cmd --permanent --zone=public --add-rich-rule=‘rule family=“ipv4” source address=“192.168.1.100” port port=2379 protocol=tcp accept’
firewall-cmd --permanent --zone=public --add-rich-rule=‘rule family=“ipv4” source address=“192.168.1.101” port port=2379 protocol=tcp accept’

请问tidb 4000端口,开放给所有机器是下面这个写吗?
firewall-cmd --permanent --zone=public --add-rich-rule=‘rule family=“ipv4” port port=4000 protocol=tcp accept’

firewall-cmd --zone=public --add-port=8080/tcp --permanent
所有主机的话,直接就这样写就行了

此话题已在最后回复的 7 天后被自动关闭。不再允许新回复。