Существуют различные страницы, которые советуют настроить открытый VPN-сервер на Amazon EC2, но все, что мне нужно, - это настроить клиент (так что любой доступ в Интернет маршрутизируется через VPN, а не напрямую с IP-адресов AWS). Я могу перенести на него файл .ovpn и запустить его с
openvpn --config client.ovpn
Но как только я это сделаю, я потеряю ssh-соединение и ничего не могу с ним сделать. много погуглил и нашел различные предложения, в которых утверждается, что можно обойти определенные порты или определенные IP-адреса. Любой из них будет в порядке, т.е. я счастлив, что у меня есть ограничения на определенные IP-адреса для подключения через ssh при его запуске.
Однако ни один из них, похоже, не работает в среде амазонок, например видеть Клиент OpenVPN на Amazon EC2. Это новый экземпляр, поэтому если это поможет, он будет находиться в VPC.
В моем случае выполнение следующего успешно запустило соединение openvpn без потери функциональности ssh:
sudo route add -host 96.113.49.112 gw 10.0.0.1
openvpn --config newvpnconfigfile1.ovpn
где ip следующий host
это общедоступный IP-адрес нашей офисной сети (вы можете получить его, просто набрав «какой у меня IP-адрес» в Google на своем компьютере) и следующий IP-адрес gw
IP-адрес шлюза экземпляра ec2 (отображается в первой строке, втором столбце выходных данных netstat -anr
когда вы выполняете его на своем сервере AWS).
Проверка сообщенного общедоступного IP-адреса до и после выполнения вышеуказанного показала, что он изменился с отчета в качестве нашего обычного IP-адреса на отчет в качестве IP-адреса сервера VPN.
Дополнительную справочную информацию можно найти здесь: Предотвращение потери соединения SSH после входа в VPN на сервере
В моем случае мне нужно было только маршрутизировать определенный IP-адрес через VPN-соединение, поэтому я добавил эти строки в файл конфигурации OpenVPN:
route-nopull
route The.IP.To.Go 255.255.255.255
А потом:
sudo openvpn --config vpnconfigfile.ovpn
Взято из https://serverfault.com/a/747828 и https://superuser.com/a/628488