kubernetes限制nodport的访问的IP

测试环境: ubuntu 16.04
kubernetes 1.11.5
docker 18.06.3

需求:需要屏蔽除本地以为的主机访问kubernetes nodeport (如端口31000)

解决方法:(所有node节点也需要加上)
在iptables的raw表添加一条规则就可以了

iptables -t raw -I PREROUTING ! -s 192.168.0.0/24 -p tcp --dport 31000 -j DROP

上面规则的意思就是除了192.168.0.0/24的主机外,其他网段主机不能访问端口31000

如果是多网段可以(示例):

只允许192.168.0.0/24,172.16.0.0/24,10.10.0.0/24访问31000端口,注意iptables规则的顺序

iptables -t raw -I PREROUTING -p tcp --dport 31000 -j DROP
iptables -t raw -I PREROUTING -s 192.168.0.0/24 -p tcp --dport 31000 -j ACCEPT
iptables -t raw -I PREROUTING -s 172.16.0.0/24 -p tcp --dport 31000 -j ACCEPT
iptables -t raw -I PREROUTING -s 10.10.0.0/24 -p tcp --dport 31000 -j ACCEPT

猜你喜欢

转载自blog.51cto.com/3138583/2635532