Мы используем VPN для подключения удаленного офиса к нашему главному офису, и машина в удаленном офисе должна открыть порт 22 для внешнего Интернета.
Осложнения:
В главном и удаленном офисах установлены маршрутизаторы серии DrayTek Vigor2925 с последней прошивкой. Маршрутизатор, расположенный непосредственно перед Draytek удаленного офиса, представляет собой дешевый черный ящик без возможности DDNS, VPN или чего-либо еще, что кажется полезным.
Что работает:
Насколько я понимаю, от Документация DrayTek и в другом месте, заключается в том, что NAT несовместим с туннелированием IPSec, особенно с заголовком аутентификации, но должно быть возможно установить VPN с использованием L2TP и инкапсуляции IPSec, если оба устройства поддерживают NAT-T, что маршрутизаторы требовать поддержки.
Итак: мы настроили удаленный офис для дозвона, используя «L2TP с политикой IPsec», отключили заголовок аутентификации, настроили маршрутизатор главного офиса на перенаправление портов на целевой компьютер и использовали интерфейс telnet для проверки этого vpn -passthrough был отключен, и мы по-прежнему не можем подключиться.
В качестве альтернативы мы могли бы использовать решение с динамическим DNS, если бы могли считывать плавающий IP-адрес удаленного офиса. Однако мы не контролируем маршрутизатор в восходящем направлении от удаленного офиса, и мы перенаправляем весь трафик через офисную VPN: все машины в удаленном офисе думают, что их общедоступный IP-адрес является фиксированным адресом, принадлежащим главному офису. .
Мы почти готовы купить Raspberry Pi для подключения к восходящему маршрутизатору и использовать его для запуска задания cron, которое wget
s icanhazip.com.
Итак ... есть ли шаг, который я пропустил в настройке маршрутизатора? Или есть менее хакерский способ прочитать IP-адрес изнутри VPN?
Весь трафик из удаленного офиса проходит через VPN, например vpn - шлюз по умолчанию? В противном случае вам может потребоваться SNAT для всех подключений из Интернета, идущих на порт 22 на удаленном компьютере. В противном случае соединения будут возвращаться через ваше интернет-соединение в удаленном офисе.
Другая возможность - выполнить переадресацию удаленного порта через SSH, выполнив ssh -R 22:127.0.0.1:22 <main gateway>
например.