Назад | Перейти на главную страницу

Переадресация портов хоста Firewalld / IPTables перестает работать после подключения гостевой виртуальной машины к OpenVPN

У меня возникли проблемы с использованием переадресации портов между одним хост-компьютером (machine01) и одной из его гостевых виртуальных машин (machine02), которая подключается к удаленному серверу OpenVPN, и мне нужна помощь в поиске проблемы, поскольку она возникает только тогда, когда machine02 подключается к удаленному серверу VPN и бывает с любым портом.

machine01 (хост, Fedora 31 Server) информация о сети:

Interface eth0:
ip: 10.0.2.100/24
gateway: 10.0.2.1

Interface virbr0 (virtual):
ip: 10.0.5.1/24

machine02 (гость, CentOS 8) информация о сети

interface eth0 (virtual):
ip: 10.0.5.10/24
gateway: 10.0.5.1

Если я настрою machine01 для перенаправления порта 2222 на порт 22 machine02, используя:

[admin@machine01 ~]$ sudo firewall-cmd --zone=FedoraServer --add-masquerade --permanent;
[admin@machine01 ~]$ sudo firewall-cmd --permanent --zone=FedoraServer --add-forward-port=port=2222:proto=tcp:toport=22:toaddr=10.0.5.10;
[admin@machine01 ~]$ sudo firewall-cmd --reload;

Я могу успешно подключиться к machine02 с другого компьютера в той же сети, что и machine01, используя:

[admin@laptop ~]$ ssh user@machine01.local -p 2222

или

[admin@laptop ~]$ ssh user@10.0.2.100 -p 2222

Но когда я подключаю machine02 к какому-либо серверу OpenVPN, не имеет значения, используется ли openvpnclient или systemd, я больше не могу подключаться к machine02 с любого другого компьютера таким же образом, вместо этого у меня каждый раз был тайм-аут.

[admin@laptop ~]$ ssh user@10.0.2.100 -p 2222
ssh: connect to host 10.0.2.100 port 2222: Connection timed out

Единственный способ получить доступ к портам machine02 (то есть: порт 22 openssh) - это machine01.

Используя iptstat в machine01, я вижу, что соединение застряло на "SYN_SENT" до TTL

[admin@machine01 ~]$ sudo iptstate
Source             Destination   Prt   State     TTL
10.0.2.150:60056   10.0.5.10:22  tcp   SYN_SENT  0:00:20

На самом деле я не знаю, что можно сделать по этому поводу, и мне нужна помощь, чтобы выяснить, в чем проблема, ошибка ли это или что-то в этом роде, и самое главное: проблема в конфигурации machine01 или machine02.

Спасибо за внимание и извиняюсь за ошибку в моем написании, я не владею английским языком.