Менеджер сети на Ubuntu 24 в AWS EC2 – IPSec L2TP – попытка поддерживать SSH/RDP

Вопрос или проблема

У меня есть сервер Ubuntu на AWS EC2, с которым я теряю соединение, как только включаю настроенный VPN-клиент. Насколько я понимаю, маршрутизация по умолчанию переопределяется. Я видел похожие сообщения для openvpn с route-nopull. Может кто-нибудь посоветовать, что я могу сделать, чтобы сохранить подключение с этой машиной и чтобы только VPN-трафик направлялся на определенный IP?

Я попробовал добавить маршрут перед включением VPN ip route add xx.xx.xxx.xxx/32 via yy.y.yy.y dev ens5, где x — это мой публичный IP, а y — внутренний.

Я изменил маршруты ipv4, как в ответе GUI здесь: OpenVPN: Only route a specific IP addresses through VPN? с VPN-шлюзом и тем внутренним IP, на который должен быть направлен весь трафик, но безуспешно.

Ответ или решение

Как поддерживать подключение SSH/RDP при использовании VPN клиента на Ubuntu Server в AWS EC2

Ваша проблема заключается в утрате соединения с сервером Ubuntu в AWS EC2 при активации VPN-клиента, настроенного для использования IPSec L2TP. Потеря соединения, скорее всего, обусловлена изменением таблицы маршрутизации, где весь трафик перенаправляется через VPN, включая трафик SSH/RDP, из-за чего вы теряете доступ к серверу. Рассмотрим подробно, как можно решить эту проблему и сохранить подключение.

Анализ проблемы

Когда вы подключаете VPN, это, как правило, меняет маршрут по умолчанию на маршрутизацию всего интернет-трафика через VPN. Чтобы сохранить SSH/RDP подключение, необходимо вручную настроить маршруты, чтобы только определенный трафик проходил через VPN, а все остальное оставалось неизменным.

Шаги для решения проблемы

  1. Узнайте свой внешний IP-адрес: Перед тем, как активировать VPN, вам необходимо знать ваш публичный IP-адрес. Это важно для добавления корректного маршрута.

  2. Добавьте маршрут до активации VPN:

    • Используйте команду ip route add для добавления статического маршрута, который будет направлять трафик к вашему публичному IP-адресу через основной шлюз.
    • Пример команды:
      ip route add <ваш_публичный_IP>/32 via <внутренний_шлюз_вашей_сети> dev ens5
    • Здесь <ваш_публичный_IP> — это адрес, с которого вы подключаетесь, а <внутренний_шлюз_вашей_сети> — это IP, через который вы обычно выходите в интернет из вашей локальной сети.
  3. Настройка специфичных маршрутов через VPN:

    • Измените конфигурацию VPN-клиента для маршрутизации только определенного трафика через VPN.
    • Если вы используете Network Manager, откройте настройки VPN-профиля, и в настройках IPv4 укажите маршруты, которые должны идти через VPN. Например, вы можете добавить маршрут для специфичного внутреннего IP назначения, которое должно использовать VPN.
    • Включите опцию "не использовать это подключение как маршрут по умолчанию" (Use this connection only for resources on its network). Это предотвратит переопределение основного маршрута VPN.

Примеры реализации

  • Конфигурация Network Manager:

    • В GUI Network Manager, откройте раздел "IPv4 Settings" вашего VPN-профиля, и в поле маршрутов добавьте нужные IP-адреса.
  • Редактирование файла конфигурации:

    • Настройте файл конфигурации /etc/ipsec.conf и добавьте специфичные маршруты, если используете IPsec для VPN.

Завершение

Следуя данным шагам, вы сможете сохранить доступ к вашему Ubuntu Server через SSH/RDP, при этом направляя через VPN только тот трафик, который должен идти по защищённой сети. Эти изменения обеспечат вам стабильное подключение без потери связи при активации VPN.

Оцените материал
Добавить комментарий

Капча загружается...