У меня есть хост A, на котором у меня есть 2 контейнера lxc (X и Y).
Первоначально у меня был порт 22 на моем хосте (A), перенаправленный на X. Используя эту конфигурацию, я не мог выполнить ssh из контейнера X, и когда ssh-ing выходил из контейнера Y, это приводило к тому, что соединение ssh было каким-то образом перенаправлен на X (хотя я был ssh-in на внешний компьютер).
При изменении порта 22, перенаправляющего с хоста на порт перенаправления 2222 на X: 22, все вернулось в норму ...
Есть ли способ перенаправить порт 22 в контейнер lxc?
Команда Iptables, которую я использовал для перенаправления порта 22 на хосте A, в контейнер 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
Спасибо.
Исправлено добавлением -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