标签: docker-networking

为什么 firewalld 允许公共流量到达绑定到 Docker 容器的非公共端口?

我正在尝试在 Fedora 中实现一个非常简单的防火墙,其中公共互联网可以访问 SSH、HTTP、HTTPS 和 Cockpit,但不能访问其他内容。同时,服务器通过 Docker 运行微服务,可以在端口 8000-8999 上相互通信。

网络图

我使用以下命令在新安装的 Fedora 服务器上进行了设置:

firewall-cmd --zone=public --add-service=cockpit
firewall-cmd --zone=public --add-service=http
firewall-cmd --zone=public --add-service=https

firewall-cmd --zone=internal --add-source=192.168.1.65
firewall-cmd --zone=internal --add-source=192.168.1.66

firewall-cmd --zone=internal --add-port=8000-8999/tcp

firewall-cmd --runtime-to-permanent
Run Code Online (Sandbox Code Playgroud)

当我使用 检查我的配置时--list-all,一切看起来都正确:

> firewall-cmd --list-all --zone=internal
internal (active)
  target: default
  icmp-block-inversion: no
  interfaces:
  sources: 192.168.1.65 192.168.1.66
  services: dhcpv6-client ssh
  ports: 8000-8999/tcp
  protocols:
  forward: no
  masquerade: no
  forward-ports:
  source-ports:
  icmp-blocks:
  rich rules:

> firewall-cmd --list-all --zone=public
public (active)
  target: default
  icmp-block-inversion: no
  interfaces: enp2s0
  sources:
  services: …
Run Code Online (Sandbox Code Playgroud)

networking firewalld fedora-server docker-networking

6
推荐指数
1
解决办法
4147
查看次数

Ubuntu Server (Rasberry Pi) 上的 Docker 无法在网桥上创建端点,不支持操作

我在 Rasberry Pi 4 (aarch64) 上使用 Ubuntu 21.10,当我尝试运行 Docker(使用版本 20.10.7)容器时,它返回以下错误消息:

docker: Error response from daemon: failed to create endpoint goofy_hypatia on network bridge: failed to add the host (veth3da4a58) <=> sandbox (veth987ce17) pair interfaces: operation not supported.
ERRO[0000] error waiting for container: context canceled 
Run Code Online (Sandbox Code Playgroud)

我已经尝试过以下方法:

谢谢你的帮助。

回答:

我遇到了同样的问题,经过快速搜索后,我在这里找到了解决方案:[Bug 1947601] Cannot start docker container on ubuntu 21.10 server for 64-bit raspberry pi

您需要安装Raspberry Pi Linux 内核额外模块

sudo apt install linux-modules-extra-raspi

networking ubuntu docker docker-networking

6
推荐指数
0
解决办法
3286
查看次数