EC2 Windows: VPN-клиент, VPN-сервер или шлюз AWS?
Экземпляр Windows EC2 может запускать ПО VPN, но клиент, самостоятельно управляемый сервер и шлюз AWS — это разные роли с разными владельцами.
Команде нужна VPN-связность для приложения, работающего на экземпляре Windows EC2: она находит совместимое клиентское ПО, устанавливает его и затем спрашивает, почему остальная часть VPC не может им пользоваться. Установка прошла успешно; роль так и не была определена. Программное обеспечение внутри гостя может быть клиентом, подключающимся к чужой сети, сервером, принимающим других клиентов, или ни одним из продуктов VPN, управляемых AWS, и каждая роль оставляет вам разную работу.
Симптом обычно — неверная роль
Типичный симптом — работающий туннель, который решает не ту задачу. Клиент в виртуальной машине даёт этой машине исходящий путь; он не даёт вашему ноутбуку, офису или другой подсети пути внутрь. Сервер в виртуальной машине даёт другим путь внутрь, но теперь вы владеете слушателем, аутентификацией и пересылкой.
Управляемые сервисы переносят эксплуатацию сервиса в AWS и оставляют проектирование вам. Site-to-Site VPN соединяет сети через шлюз заказчика и шлюз AWS, а Client VPN даёт удалённым устройствам управляемую конечную точку. В обоих случаях маршруты, правила авторизации и источник идентичности — это ваша конфигурация, и ни один из продуктов не устанавливает клиент общего назначения внутри гостя Windows.
Возможны четыре формы, и таблица разделяет их по тому, что с чем соединяется и кто несёт эксплуатационную нагрузку.
| Role | What connects | Who owns the VPN software |
|---|---|---|
| Client in the Windows VM | This VM dials out into someone else's network | You, plus the software vendor |
| Server in the Windows VM | Inbound clients and sites attach to this VM | You, end to end |
| AWS Site-to-Site VPN | Two networks meet through a customer gateway and an AWS gateway | AWS operates the tunnels; you own the peer and route design |
| AWS Client VPN | User devices attach to an endpoint AWS operates | AWS operates it; you own the access rules |
Читайте строку, а не название продукта: один и тот же экземпляр Windows может находиться в двух разных строках в зависимости от того, какое ПО в нём работает.
Клиент внутри виртуальной машины: машина подключается к сети
Исходящему клиенту нужно проверить сборку Windows, архитектуру и требования к драйверам до того, как что-либо будет установлено. Клиент изменит маршруты и DNS на экземпляре, что может повлиять на уже работающие там сервисы, включая путь, который вы используете для удалённого администрирования. Запишите имя адаптера и метрику интерфейса, которую задаёт клиент, потому что новый интерфейс может получить приоритет над существующим. Если экземпляром управляют через менеджер сеансов, а не через SSH или RDP, подтвердите, что этот путь работает и после подключения клиента.
Решите, какой трафик должен нести клиент, прежде чем включать его. Полный туннель может захватить сеанс управления и запереть вас снаружи, а разделённый туннель может оставить экземпляр с доступом в частную сеть, тогда как остальной трафик уходит другим путём. Тестируйте при наличии второго пути управления и записывайте маршруты, которые устанавливает клиент, чтобы позднее изменение можно было объяснить.
Сервер внутри виртуальной машины: другие клиенты подключаются к нему
Для самостоятельно управляемого сервера вы владеете слушателем, сертификатом или ключевым материалом, базой пользователей и правилами пересылки. Если сервер пересылает трафик для других клиентов, экземпляр становится маршрутизатором, а для этого нужна пересылка на уровне гостя плюс изменения маршрутов и групп безопасности на уровне AWS.
Проверьте слушатель из гостя и затем из другой подсети, потом проверьте хост, для которого экземпляр пересылает трафик. Здоровый локальный сервис ничего не доказывает о пересылаемом пути, поэтому запишите оба результата в заметку об изменении.
Управляемые шлюзы сохраняют сервис, а не вашу схему доступа
AWS Site-to-Site VPN документирует роли туннелей шлюза заказчика и шлюза AWS, и покупка этого соединения не заменяет каждую схему удалённого доступа. Client VPN документирует управляемую конечную точку с клиентскими персонами, а правила авторизации и целевые маршруты остаются вашими. AWS поддерживает работу конечной точки и её сертификатов; кто может достичь какого приложения — по-прежнему правило авторизации, которое вы пишете и поддерживаете.
Выбирайте между продуктами по пяти осям: какую роль играет каждый, какие протоколы принимает, какой источник идентичности ожидает, как пересылается трафик и как обеспечивается доступность. Игнорируйте любую отдельную цифру пропускной способности, приведённую в ветке форума, потому что опубликованная ёмкость меняется вместе с сервисом. И не предполагайте, что управляемая пара туннелей меняет поведение произвольного гостевого клиента.
Выберите роль до продукта
Напишите одно предложение, называющее направление: эта машина подключается к сети, эта машина принимает клиентов, или шлюз AWS соединяет определённые сети.
Это предложение определяет короткий список продуктов, владельца ПО и режимы отказов, которые вы будете отлаживать. Если требование — чтобы удалённые пользователи достигали приложения, клиент, установленный в виртуальной машине приложения, — неправильная форма. Если требование — чтобы одна машина достигала сети партнёра, управляемый шлюз «сайт-сайт» — это больше механизмов, чем нужно задаче. Оба ответа законны; лишь один соответствует написанному вами предложению.