默认bridge网络存在严重合规与安全风险,因其缺乏逻辑隔离、无dns解析、ip不可控,违反等保2.0和gdpr“最小化暴露面”要求;必须禁用并迁移到带--internal/--subnet的自定义bridge网络,且容器需显式加入、禁止0.0.0.0端口暴露。

直接检查默认 bridge 网络是否仍在生产环境使用——这是等保测评和GDPR/等保2.0中最常被扣分的起点。Docker 默认 bridge 网络不具备逻辑隔离能力,所有容器天然互通、无DNS解析、IP不可控,不符合“最小化暴露面”与“分区分域”要求。
确认是否仍在用默认 bridge
运行命令查看当前活跃网络:
-
docker network ls—— 若输出中 bridge 网络状态为 active,且有业务容器挂载其上,即存在合规风险 -
docker network inspect bridge | grep -A5 "Containers"—— 检查是否有正在运行的生产容器(如数据库、API服务)直接连在默认网桥上 - 特别注意:即使没显式指定
--network=bridge,只要启动容器时未指定其他网络,Docker 就会自动加入默认 bridge
验证自定义网络是否真正启用隔离
仅创建自定义网络还不够,必须确保它被正确使用并具备基础安全属性:
- 检查网络创建参数是否含
--internal(禁外网)或--subnet(固定子网),例如:docker network create --driver bridge --subnet 10.10.10.0/24 --internal app-backend - 确认容器已明确加入该网络:
docker ps --format "{{.Names}}\t{{.Networks}}" | grep -v "bridge" - 测试容器间通信:同一自定义网络内,应能通过容器名互访(
curl http://other-container:8080);跨网络则应完全不通(无 iptables 手动放行前提下)
检查端口映射与外部暴露策略
bridge 模式下端口映射是主要攻击入口,需严格控制:
- 禁止使用
-P(随机映射全部端口)或宽泛映射如-p 0.0.0.0:8080-8090:80 - 生产环境应限定绑定地址:
-p 127.0.0.1:8080:80或仅绑定内网 IP,避免监听0.0.0.0 - 对管理类端口(如 Docker API、Prometheus /metrics)必须禁用外部访问,或前置反向代理+身份校验
核对内核与守护进程级配置
Docker 27 的强制网络隔离机制已在生产环境逐步落地,需确认是否适配:
- 检查 daemon.json 是否启用严格模式:
"network-isolation-policy": "strict" - 执行
docker info | grep -i "network isolation",输出应为 enabled - 若尚未升级至 Docker 27,至少应关闭默认 bridge 的 iptables 自动规则注入:
"iptables": false,改由宿主机 firewalld 或 eBPF 工具统一管控











