Назначение IP-адресов подсети клиентам OpenVPN в AWS

Назначение IP-адресов подсети клиентам OpenVPN в AWS

У меня есть рабочий сервер OpenVPN, установленный на экземпляре EC2 внутри моего VPC. Он используется для того, чтобы позволить удаленным пользователям получать доступ к сервисам внутри частной подсети. До сих пор это было достаточным решением, но в настоящее время все клиенты отображаются как IP-адрес VPN-сервера.

Можно ли настроить сервер OpenVPN на экземпляре EC2 и назначить клиентам IP-адреса (предпочтительно статические для каждого пользователя)?

Допустим, у меня есть 10.0.0.0/16VPC с 10.0.10.0/24подсетью A и 10.0.11.0/24подсетью B. Я хотел бы назначить IP-адреса из подсети 2 VPN-клиентам.

решение1

На самом деле вы используете опцию NAT (по умолчанию), что означает, что все клиенты будут видеть сам сервер OpenVPN.

Вы можете использовать другой вариант, Routed. В этом случае вашим клиентам будут назначены IP-адреса из определенного вами диапазона (10.0.11.0/24 из вашего примера). Убедитесь, что эта подсеть (10.0.11.0/24) не существует в вашем VPC или OMLY ваш сервер OpenVPN находится в этой подсети.

Единственное, что вам нужно иметь в виду, это то, что ваши экземпляры в частной подсети, к которой получают доступ ваши пользователи, должны знать, как достичь IP-адресов ваших пользователей (в данном случае 10.0.11.0/24), поскольку AWS не знает, куда направлять трафик, предназначенный для этой «новой» подсети, и поэтому будет отброшен.

Исправление этой проблемы:

  • Добавьте маршрут в таблицу маршрутизации AWS (в вашей частной подсети) для отправки всего трафика, предназначенного для 10.0.11.0/24, на ваш сервер OpenVPN.
  • Отключите проверку источника/назначения на вашем экземпляре сервера OpenVPN
  • Убедитесь, что группа безопасности вашего экземпляра сервера OpenVPN разрешает трафик с 10.0.11.0/24.
  • Если вы используете NACL, убедитесь, что вы не блокируете и этот трафик.

Связанный контент