Это довольно запутано, я знаю. Позвольте мне объяснить все это.
У меня на моем роутере установлен динамический DNS. Я проверил, что после переадресации портов я могу подключиться к нужному приложению (если я запустил что-то на порту 1337 и перенаправлю порт на соответствующую машину, я могу подключиться к нему извне без проблем).
Теперь, если я подключу свой Macbook к VPN и запусту что-нибудь, как описано выше, он будет работать как положено. НО , если я подключаю свою машину с Ubuntu Server 16.04 к VPN и что-то запускаю или хочу подключиться по ssh, это не удается. Я перенаправил порт, который я использую для соединения SSH на маршрутизаторе. Я также попытался хостинг веб-сервера, который также не удалось.
Что я могу сделать с этим вопросом? Это не имеет смысла для меня.
О машине с Ubuntu Server: это чистая установка с настроенным клиентом openvpn и ssh-сервером, брандмауэр не запущен, iptables не отредактирован, подключен к маршрутизатору через Ethernet.
РЕДАКТИРОВАТЬ: Вот таблицы маршрутизации: http://pastebin.com/ay6fpLcL
ip -4 r
на Ubuntu,netstat -f inet -rn
на Mac)?Ответы:
ОК, мне удалось найти решение.
Использование
openvpn
пакета без каких-либо оберток:Добавьте эти 2 строки в ваш
.ovpn
файл (или,.conf
если вы подключаетесь автоматически):Затем создайте
/etc/openvpn/up.sh
с исполняемыми разрешениями (755/700):Например, вот моя конфигурация:
Использование другого VPN-клиента / другой конфигурации:
Я не могу предсказать необходимые шаги, но обычно вам нужно запускать
up.sh
скрипт (см. Выше) каждый раз, когда ваше VPN-соединение установлено.Надеюсь, это поможет кому-то, имеющему ту же проблему. Ура!
источник