Управление удалённым маршрутизатором. Как пробросить порт извне в хост за туннелем? Дано: HV1 гипервизор debian c белым IPVM1 внутри гипервизора с установленным OpenVPN-серверомМаршрутизатор R1 c поднятым туннелем tun0 до VM1До VM1 нормально пробрасывается снаружи порт, т.к. работают SSH и OpenVPNC VM1 работает telnet до R1@VM1 cat /etc/sysctl.conf net.ipv4.ip_forward=1 Конфигурация OpenVPN сервера:port 9094 proto tcp dev tun ca .keys/ca.crt cert .keys/server.crt key .keys/server.key # This file should be kept secret dh .keys/dh2048.pem server 10.0.141.0 255.255.255.0 client-config-dir /etc/openvpn/ccd keepalive 10 120 tun-mtu 1500 mssfix 1450 cipher AES-256-CBC auth sha1 user nobody group nogroup persist-key persist-tun @VM1 cat /etc/openvpn/ccd/cli1:iroute 192.168.141.0 255.255.255.0 10.0.141.2 ifconfig-push 10.0.141.2 10.0.141.1 @VM1 tcpdump:10:32:52.881288 IP ip1-2-3-4.58268 > 10.0.141.2.http: Flags [S], seq 2942271875, win 8192, options [mss 1460,nop,wscale 2,nop,nop,sackOK], length 0 10:32:58.638323 IP ip1-2-3-4.58266 > 10.0.141.2.http: Flags [S], seq 2324022312, win 8192, options [mss 1460,nop,nop,sackOK], length 0Задача: Как сделать, чтобы при обращении на порт HV1 клиент попадал на порт R1? Грубо говоря, хочу удалённо управлять роутером, который использует 4G подключение
Для проброса порта извне в хост за туннелем необходимо выполнить следующие шаги:
Настройте порт проброса на маршрутизаторе R1 через туннель tun0 до VM1. Для этого вам нужно добавить правило iptables:iptables -t nat -A PREROUTING -i tun0 -p tcp --dport <внешний порт> -j DNAT --to-destination 10.0.141.2:<порт хоста>
Где <внешний порт> - это порт, на который вы хотите пробросить трафик, <порт хоста> - порт, на который нужно перенаправить трафик на VM1 (например, порт R1).
Убедитесь, что на маршрутизаторе R1 включен IP-проброс и обработка IP-пакетов. Для этого выполните:echo 1 > /proc/sys/net/ipv4/ip_forwardУбедитесь, что правило проброса сохранится после перезагрузки маршрутизатора R1. Для этого добавьте соответствующее правило в файл /etc/rc.local:iptables -t nat -A PREROUTING -i tun0 -p tcp --dport <внешний порт> -j DNAT --to-destination 10.0.141.2:<порт хоста>
После выполнения этих шагов, трафик, поступающий на указанный внешний порт маршрутизатора R1 через туннель tun0, будет перенаправлен на указанный порт хоста VM1.
Для проброса порта извне в хост за туннелем необходимо выполнить следующие шаги:
Настройте порт проброса на маршрутизаторе R1 через туннель tun0 до VM1. Для этого вам нужно добавить правило iptables:iptables -t nat -A PREROUTING -i tun0 -p tcp --dport <внешний порт> -j DNAT --to-destination 10.0.141.2:<порт хоста>Где <внешний порт> - это порт, на который вы хотите пробросить трафик, <порт хоста> - порт, на который нужно перенаправить трафик на VM1 (например, порт R1).
Убедитесь, что на маршрутизаторе R1 включен IP-проброс и обработка IP-пакетов. Для этого выполните:echo 1 > /proc/sys/net/ipv4/ip_forwardУбедитесь, что правило проброса сохранится после перезагрузки маршрутизатора R1. Для этого добавьте соответствующее правило в файл /etc/rc.local:iptables -t nat -A PREROUTING -i tun0 -p tcp --dport <внешний порт> -j DNAT --to-destination 10.0.141.2:<порт хоста>После выполнения этих шагов, трафик, поступающий на указанный внешний порт маршрутизатора R1 через туннель tun0, будет перенаправлен на указанный порт хоста VM1.