【发布时间】:2021-10-13 16:33:16
【问题描述】:
我需要限制与 docker 容器的连接。 docker documentation 声明如下:
iptables -I DOCKER-USER -i ext_if ! -s 192.168.1.0/24 -j DROP
在此之后,DOCKER-USER 链开始如下所示:
Chain DOCKER-USER (1 references)
target prot opt source destination
DROP all -- !192.168.1.0/24 anywhere
RETURN all -- anywhere anywhere
这工作正常,有来自 192.168.1.0/24 子网的访问,而其他子网没有。但我的问题是我需要添加几个子网。我尝试用几行替换这一行但没有成功
iptables -I DOCKER-USER 1 -i ext_if -s 192.168.1.0/24 -j RETURN
iptables -I DOCKER-USER 2 -i ext_if -s 10.0.0.0/24 -j RETURN
iptables -I DOCKER-USER 3 -j DROP
链条开始看起来像这样:
Chain DOCKER-USER (1 references)
target prot opt source destination
RETURN all -- 192.168.1.0/24 anywhere
RETURN all -- 10.0.0.0/24 anywhere
DROP all -- anywhere anywhere
RETURN all -- anywhere anywhere
还尝试了ACCEPT 而不是RETURN,但结果是一样的——所有内容都会被丢弃,无论它来自哪个子网。
有没有办法将工作的一条线分成几条?
附:我知道我可以列出用逗号分隔的子网,但这是不可取的,因为我需要添加大约 15 个子网并为每个子网添加注释。
【问题讨论】:
标签: docker networking iptables