为什么端口 22 重定向会导致 lxc 容器通过 ssh 连接到主机?

为什么端口 22 重定向会导致 lxc 容器通过 ssh 连接到主机?

我有一个主机 A,上面有 2 个 lxc 容器(X 和 Y)。

我最初将主机 (A) 上的端口 22 转发到 X。使用此配置,我无法通过 ssh 退出容器 X,而当通过 ssh 退出容器 Y 时,它导致 ssh 连接以某种方式转发到 X(即使我已通过 ssh 登录到外部计算机)。

当将主机的端口 22 转发更改为将端口 2222 转发至 X:22 时,一切都恢复正常......

有没有办法将端口 22 转发到 lxc 容器?

我使用 Iptables 命令将主机 A 上的端口 22 转发到容器 X:

iptables -t nat -A POSTROUTING -s 10.0.0.4 -o eth0 -j MASQUERADE

iptables -t nat -A PREROUTING -p tcp --dport 22 -j DNAT --to-destination 10.0.0.4:22

谢谢。

答案1

通过将 添加-i eth0到我的 iptable 规则来修复(指定仅外部流量应重定向到容器 X:22。

iptables -t nat -A PREROUTING -p tcp --dport 22 -i eth0 -j DNAT --to-destination 10.0.0.4:22

相关内容