网易首页 > 网易号 > 正文 申请入驻

如何将 Docker 与 UFW 防火墙一起使用

0
分享至

令人惊讶的是,Docker 无法与 Linux 的“通用防火墙”或 UFW 一起使用。它们都修改了相同的 iptables 配置,这可能导致错误配置暴露不应该公开的容器。这是修复它的方法。

为什么 Docker 不能与 UFW 一起使用?

UFW 旨在成为一个非常简单的防火墙。问题是 UFW 和 Docker 都试图修改相同的底层防火墙规则,如果你想一起运行 UFW 和 Docker,这种冲突需要额外的设置来解决。

如果您将基本的 UFW 防火墙设置为默认拒绝并允许 HTTP 和 SSH,这将显得安全——但它不会阻止 Docker 启动绑定到其他端口的容器。这个问题很难发现,因为 UFW 和 Docker 是独立的系统。UFW 在不知不觉中对您撒谎,并且不会显示 Docker 容器的开放端口。

如果你没有抓住它,这可能是一个大问题。例如,也许您想在端口 8000 上运行一个内部管理面板,并将其列入您自己的 IP 地址的白名单。虽然这不是最安全的设置,但通常没问题,特别是如果面板有额外的身份验证。

但是,UFW 会将防火墙规则显示为正确列入白名单,并且您当然可以从您列入白名单的位置看到它。但是,如果它通过 Docker 运行,则默认情况下它会在任何地方的 8000 端口上可见。

修复 Docker 的配置

Docker 提供了一个解决方案,通过编辑 或 完全关闭 Docker 的 功能:

/etc/default/docker

/etc/docker/daemon.json

iptables

DOCKER_OPTS="--iptables=false"

这可行,但是,这只是解决方案的一半。它禁用了 Docker 管理自己的网络的能力,并可能导致容器根本无法访问互联网。这仍然可以工作,但是您需要手动维护 Docker 容器和自定义网络的规则,这很复杂,很烦人,并且违背了 UFW 简单的目的。

iptables

真正的解决方案很复杂,但幸运的是很常见,有一个有用的 Github 存储库详细说明了问题和解决问题的步骤。本质上,您需要修改 UFW 的配置以 在末尾添加以下块:

/etc/ufw/after.rules

# 开始 UFW 和 Docker
*筛选
:ufw-user-forward - [0:0]
:ufw-docker-logging-deny - [0:0]
:DOCKER-USER - [0:0]
-A DOCKER-USER -j ufw-user-forward
-A DOCKER-USER -j 返回 -s 10.0.0.0/8
-A 码头工人用户 -j 返回 -s 172.16.0.0/12
-A 码头工人用户 -j 返回 -s 192.168.0.0/16
-A DOCKER-USER -p udp -m udp --sport 53 --dport 1024:65535 -j RETURN
-A DOCKER-USER -j ufw-docker-logging-deny -p tcp -m tcp --tcp-flags FIN,SYN,RST,ACK SYN -d 192.168.0.0/16
-A DOCKER-USER -j ufw-docker-logging-deny -p tcp -m tcp --tcp-flags FIN,SYN,RST,ACK SYN -d 10.0.0.0/8
-A DOCKER-USER -j ufw-docker-logging-deny -p tcp -m tcp --tcp-flags FIN,SYN,RST,ACK SYN -d 172.16.0.0/12
-A DOCKER-USER -j ufw-docker-logging-deny -p udp -m udp --dport 0:32767 -d 192.168.0.0/16
-A DOCKER-USER -j ufw-docker-logging-deny -p udp -m udp --dport 0:32767 -d 10.0.0.0/8
-A DOCKER-USER -j ufw-docker-logging-deny -p udp -m udp --dport 0:32767 -d 172.16.0.0/12
-A 码头工人用户 -j 返回
-A ufw-docker-logging-deny -m limit --limit 3/min --limit-burst 10 -j LOG --log-prefix "[UFW DOCKER BLOCK] "
-A ufw-docker-logging-deny -j DROP
犯罪
# 结束 UFW 和 Docker

您可以手动执行此操作,但此 repo 中还提供了一个不错的实用程序,可以自动执行此操作,并提供一些有用的命令来检查真实的防火墙状态。你可以从这个 repo 下载它:

sudo wget -O /usr/local/bin/ufw-docker https://github.com/chaifeng/ufw-docker/raw/master/ufw-docker
sudo chmod +x /usr/local/bin/ufw-docker

然后,安装配置,然后重新启动 UFW。

ufw-docker 安装
sudo systemctl 重启 ufw

重新启动后,更改应该会自动应用,但如果没有,您可能需要重新启动 Docker 或您的机器。一旦启用,所有端口都应该被正确阻止。

使用 UFW 将 Docker 容器端口列入白名单

此解决方案确实需要您稍微不同地配置端口。该 实用程序有一个命令,可以选择性地将特定 Docker 容器的端口列入白名单。

ufw-docker

ufw-docker 允许 httpd 80

但是,如果您想使用更高级的规则,例如基于 IP 的白名单,则必须使用

ufw route allow

ufw route 允许从 1.2.3.4 到任何端口 9443 的 proto tcp

特别声明:以上内容(如有图片或视频亦包括在内)为自媒体平台“网易号”用户上传并发布,本平台仅提供信息存储服务。

Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.

相关推荐
热点推荐
杨丽萍裸体当观众面跳,身上每处可见,为艺术献身还是道德沦丧?

杨丽萍裸体当观众面跳,身上每处可见,为艺术献身还是道德沦丧?

小影的娱乐
2024-05-23 19:41:06
赖清德用这种方式回应解放军演习

赖清德用这种方式回应解放军演习

煮酒杂谈
2024-05-23 22:58:17
未付7.9万元工资成“老赖”,昔日明星车企烧光几十亿却造不出车

未付7.9万元工资成“老赖”,昔日明星车企烧光几十亿却造不出车

每日经济新闻
2024-05-24 00:40:51
王室又发布凯特新照片了,凯特身穿红色上衣,白色打底,有点累

王室又发布凯特新照片了,凯特身穿红色上衣,白色打底,有点累

亦纯杂谈
2024-05-23 18:03:22
罕见!郑树森院士被国际期刊终身禁稿

罕见!郑树森院士被国际期刊终身禁稿

TOP大学来了
2024-05-23 19:57:53
这两个新闻连在一起看,简直让人窒息

这两个新闻连在一起看,简直让人窒息

顾礼先生
2024-05-14 16:42:44
建湖一男子送父亲异地治病被抢走手机车票!派出所长:领导命令!

建湖一男子送父亲异地治病被抢走手机车票!派出所长:领导命令!

兵叔评说
2024-05-23 08:21:06
荷兰光刻机巨头阿斯麦强烈发声,希望华为遵守游戏规则

荷兰光刻机巨头阿斯麦强烈发声,希望华为遵守游戏规则

体坛片语
2024-05-23 12:30:39
李再勇被控25年敛财超4.32亿,曾致六盘水3年新增1500亿债务

李再勇被控25年敛财超4.32亿,曾致六盘水3年新增1500亿债务

界面新闻
2024-05-23 18:07:59
解放军发布《越海杀器》组合海报 暗含细节预示“台独”咎由自取的惨烈下场

解放军发布《越海杀器》组合海报 暗含细节预示“台独”咎由自取的惨烈下场

环球时报国际
2024-05-23 21:31:23
谭咏麟病愈后首次公开现身,瘦到青筋毕现感慨声线不好

谭咏麟病愈后首次公开现身,瘦到青筋毕现感慨声线不好

小萝卜天下事
2023-07-21 21:57:53
众星转发“台湾不是一个国家”,蔡依林等人沉默:台艺人都哑了?

众星转发“台湾不是一个国家”,蔡依林等人沉默:台艺人都哑了?

拾娱先生
2024-05-22 23:25:35
媒体人:当年韦世豪更衣室和李铁吵架,说阿兰费南多凭什么不首发

媒体人:当年韦世豪更衣室和李铁吵架,说阿兰费南多凭什么不首发

直播吧
2024-05-23 21:25:04
加征关税实属无奈之举,一辆八万元的比亚迪海鸥引发的蝴蝶效应

加征关税实属无奈之举,一辆八万元的比亚迪海鸥引发的蝴蝶效应

大老客
2024-05-21 16:12:23
王红权星被封后首露面,穿1.4w卫衣变化大,友人公开其财富来源!

王红权星被封后首露面,穿1.4w卫衣变化大,友人公开其财富来源!

古希腊掌管月桂的神
2024-05-23 17:48:39
准备动手!两岸统一进入倒计时!

准备动手!两岸统一进入倒计时!

燕梳楼频道
2024-05-23 12:45:57
央妈打出王炸组合拳,新闻联播播放三分钟,比降息都还要炸裂!

央妈打出王炸组合拳,新闻联播播放三分钟,比降息都还要炸裂!

静守时光落日
2024-05-23 14:18:39
男生常见体型的9种标准,你属于哪一种?兄弟!

男生常见体型的9种标准,你属于哪一种?兄弟!

四象八卦
2024-05-23 16:47:31
日本表态针对解放军东部战区今展开环台“联合利剑-2024A”演习

日本表态针对解放军东部战区今展开环台“联合利剑-2024A”演习

穷游天下的阿等
2024-05-23 20:07:18
枢密院十号:为准备“与中国的大规模冲突”,美国连“爱国者”导弹都“下海”了……

枢密院十号:为准备“与中国的大规模冲突”,美国连“爱国者”导弹都“下海”了……

环球网资讯
2024-05-22 23:09:20
2024-05-24 02:08:49
智能科技咖
智能科技咖
世界那么大我想去看看
73文章数 88216关注度
往期回顾 全部

科技要闻

黄仁勋业绩会万字实录:我们的压力太大了

头条要闻

奥迪车主称每次启动车辆就会显示"续费弹窗" 客服回应

头条要闻

奥迪车主称每次启动车辆就会显示"续费弹窗" 客服回应

体育要闻

欧文,三十二而立

娱乐要闻

大S儿子被学校退学,张兰称孙子没人管

财经要闻

九鼎金租减值罗生门:郑州银行藏雷?

汽车要闻

上汽大通大家7超混/大家9超混将于6月7日正式上市

态度原创

健康
本地
手机
家居
军事航空

在中国,到底哪些人在吃“伟哥”?

本地新闻

强制措施展铁腕 “交叉执行”勇亮剑

手机要闻

vivo S19系列再次被确认:三款版本,能打过OPPO Reno12系列吗?

家居要闻

光阴流年 摇曳爱恋

军事要闻

以军继续杰宁攻势 巴武装组织打击以目标

无障碍浏览 进入关怀版