不允许 docker 访问互联网

不允许 docker 访问互联网

我正在寻找一种简单的方法来限制我的 docker 容器,以便它们只能进行本地访问,而不能访问互联网。

我尝试使用 IPtables 来执行此操作,效果如下:

iptables -I FORWARD -i docker0  -j DROP

但是如果重新启动 docker 服务,本地主机将无法再访问容器。

答案1

我假设“本地访问”是指您希望容器能够相互通信并与 docker 主机通信,但无法访问 docker 主机外部的网络?

你有几个选择。

1.

使用 iptables 丢弃 DOCKER 链中传入/传出外部网络接口的所有数据包。

iptables -I DOCKER -i eno1 -j DROP

eno1您的情况可能有所不同;这是我的 docker 主机上的网络接口的名称。)

2.

IP转发在 Docker 主机上。

echo 0 > /proc/sys/net/ipv4/ip_forward

注意:这也会以相同的方式限制任何虚拟机,但对于更具安全意识的人来说,这是通用且安全的方法。

来源:

https://docs.docker.com/v1.5/articles/networking/#the-world “容器与更广阔的世界之间的通信”了解更多信息。

相关内容