架构师_程序员_码农网

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 2753|回复: 4

【实战】禁止 Docker 容器访问互联网(外网)

[复制链接]
发表于 2022-12-14 22:53:18 | 显示全部楼层 |阅读模式
需求:使用 Docker 容器搭建了一个私有家庭相册系统,仅限于在家庭局域网访问和查看,由于 Docker 镜像是有第三方开发者开发,并不了解安全状况,不知道是否会产生隐私泄露,为了更好的解决此问题,想通过禁止 Docker 容器访问互联网(外网)的方式给隐私增加一份保障。

【实战】CentOS 7 禁止某 IP 访问服务器
https://www.itsvse.com/thread-10264-1-1.html

iptables防火墙 只允许某IP访问某端口、访问特定网站
https://www.itsvse.com/thread-2535-1-1.html

CentOS7 查看和关闭防火墙
https://www.itsvse.com/thread-7771-1-1.html

本文使用的是 CentOS7 系统,Docker 版本:20.10.20,使用 nginx 镜像提供测试。

默认允许访问互联网(外网)

新建一个 nginx 容器,容器提供 Web 服务,可以通过 18080 端口访问,容器内部默认是可以访问互联网(外网)的,命令如下:

进入到容器内部,通过 curl 命令请求本站资源,可以正常获取的到,如下图:

QQ截图20221214222306.jpg

禁止 Docker 容器访问互联网(外网)

首先,我们需要通过 docker 新建一个自定义的网络,创建一个虚拟网卡,命令如下:

QQ截图20221214222601.jpg

通过 iptables 对该虚拟网卡设置规则,禁止访问互联网,命令如下:

不管 iptables 服务是否有无,不管防火墙是否开启,通过命令方式添加的 iptables 规则都是立马生效的!!!

注意:此方案,当不同容器加入相同网络的情况下,容器之间也无法互通!!!!

查看 DOCKER-USER 规则,如下图:

QQ截图20221214223049.jpg

再次新建一个 nginx 容器,容器提供 Web 服务,并且通过 18081 端口对外提供服务,容器内部禁止访问互联网(外网),命令如下:

QQ截图20221214223731.jpg

目的我们是达到了,但是,重启服务器后,我们在 iptables 新建的规则会消失,如何让服务器重启后,能够自动加载我们自定义的规则呢?

iptables-save命令用于将linux内核中的iptables表导出到标准输出设备商,通常,使用shell中I/O重定向功能将其输出保存到指定文件中。

保存现有 iptables 规则

在开机自启动添加还原 iptables 规则,开机自启文件为 /etc/rc.d/rc.local,编辑该文件,在最后面加上如下命令:

最后,添加执行权限,命令如下:

设置完成后,即使服务器重启,iptables 规则依旧生效。

禁止 Docker 里的所有容器访问互联网(外网),未测试,命令如下:

(完)






上一篇:找不到资产文件“project.assets.json”。运行 NuGet 包还原...
下一篇:【转】BBR vs BBRplus vs BBR2 一般网络速度对比
码农网,只发表在实践过程中,遇到的技术难题,不误导他人。
发表于 2022-12-16 21:14:15 | 显示全部楼层
学习一下
码农网,只发表在实践过程中,遇到的技术难题,不误导他人。
 楼主| 发表于 2023-1-2 17:43:19 | 显示全部楼层
案例如下:

【实战】软路由搭建 Gitea 私有 Git 仓库
https://www.itsvse.com/thread-10403-1-1.html


码农网,只发表在实践过程中,遇到的技术难题,不误导他人。
发表于 2023-4-7 18:55:08 | 显示全部楼层
这个功能很重要,过来学习下
码农网,只发表在实践过程中,遇到的技术难题,不误导他人。
发表于 2023-4-21 12:00:24 | 显示全部楼层
感谢分享,学习了。
码农网,只发表在实践过程中,遇到的技术难题,不误导他人。
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

免责声明:
码农网所发布的一切软件、编程资料或者文章仅限用于学习和研究目的;不得将上述内容用于商业或者非法用途,否则,一切后果请用户自负。本站信息来自网络,版权争议与本站无关。您必须在下载后的24个小时之内,从您的电脑中彻底删除上述内容。如果您喜欢该程序,请支持正版软件,购买注册,得到更好的正版服务。如有侵权请邮件与我们联系处理。

Mail To:help@itsvse.com

QQ|手机版|小黑屋|架构师 ( 鲁ICP备14021824号-2 )|网站地图

GMT+8, 2024-3-29 13:23

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表