繁体   English   中英

如何使用iptables保护docker容器

[英]how to secure docker containers with iptables

我正在尝试保护容器免受外部IP访问“ 0.0.0.0”

我想配置一些容器以供公共访问,而另一些则限制为某些IP。

sudo iptables -N DOCKER-USER
sudo iptables -I DOCKER-USER -j DROP

# where x.x.x.x is external IP allowed
sudo iptables -I DOCKER-USER -s x.x.x.x -j ACCEPT

# where yyyy is the external port that will be allow
sudo iptables -I DOCKER-USER -p tcp --dport yyyy -j ACCEPT

sudo iptables -I FORWARD -o docker0 -j DOCKER-USER

它可以正常工作,但是重新启动后,此配置将被重置并停止工作。

我已经尝试将该脚本放在/etc/rc.local中,但是重启后不会执行。

我的环境是:

Client:
 Version:      17.05.0-ce
 API version:  1.29
 Go version:   go1.7.5
 Git commit:   89658be
 Built:        Thu May  4 22:10:54 2017
 OS/Arch:      linux/amd64

Server:
 Version:      17.05.0-ce
 API version:  1.29 (minimum version 1.12)
 Go version:   go1.7.5
 Git commit:   89658be
 Built:        Thu May  4 22:10:54 2017
 OS/Arch:      linux/amd64
 Experimental: false

您可以保存当前的iptables配置,然后在服务器启动时加载它:

iptables-save | sudo tee /etc/iptables.conf

将以下内容复制到/etc/rc.local

# Load iptables rules from this file
iptables-restore < /etc/iptables.conf

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM