Proxy Service Airlock — это прокси с учётом идентичности и веб-интерфейсом. Основные возможности:
- Аутентификация пользователей через SSO или локальные учётные данные для доступа к SSH и рабочим столам Windows через веб-интерфейс.
- Перехват трафика по протоколам SSH, Kubernetes, HTTPS и баз данных с проверкой аутентификации клиентов.
- Запись команд, API-вызовов и запросов с отправкой в журнал аудита.
- Обратные туннели для подключения серверов и прокси за межсетевыми экранами.
- TLS-маршрутизация — сжатие всех портов и протоколов в один TLS-порт.
Минимальный кластер Airlock состоит из Auth Service и Proxy Service. В домашней лаборатории оба сервиса можно запустить одним бинарным файлом airlock.
Веб-интерфейс
В веб-интерфейсе Proxy Service использует WSS (защищённые веб-сокеты) для проксирования целевого ресурса — SSH-сервера или рабочего стола.
При использовании веб-интерфейса Proxy Service завершает TLS-трафик и переформатирует данные для клиентского соединения.
Режим Identity-Aware Proxy (IAP)
В режиме IAP пользователи инициируют SSO или локальный вход для подписи открытых ключей на клиентской машине.
Режим IAP считается более безопасным, чем доступ через веб-интерфейс: закрытые ключи не покидают клиент, соединение с ресурсом взаимно аутентифицировано, браузер используется меньше — снижается риск CSRF и перехвата файлов cookie.
Туннели
В этом режиме ресурсы за межсетевым экраном устанавливают обратные туннели к прокси. Прокси перенаправляет клиентские соединения к целевым ресурсам через эти туннели.
Например, пользователь подключается к кластеру Kubernetes за межсетевым экраном через два туннеля.
Все описанные режимы включены в Proxy Service по умолчанию. Специальная настройка не требуется, если нужно отключить отдельные режимы.
Несколько экземпляров Proxy Service
Кластер Airlock может включать несколько Proxy Service, работающих параллельно. Это стандартный способ масштабирования и повышения отказоустойчивости.
| Цель | Как помогает несколько прокси |
|---|---|
| Доступность | Отказ одного узла не блокирует доступ: трафик переключается на другие экземпляры |
| Нагрузка | Балансировщик распределяет сессии пользователей и соединения между прокси |
| Latency | Прокси в разных ДЦ/регионах сокращают путь до пользователей и до агентов |
Пользователи подключаются к одному адресу (например, https://airlock.example.com) через балансировщик. Агенты при регистрации открывают обратные туннели ко всем Proxy Service кластера, поэтому любой прокси может маршрутизировать трафик к нужному агенту.
Балансировщик должен использовать round-robin (или аналог без привязки сессии к одному узлу). Sticky session для Proxy Service не подходит.
Подробнее о подключении агентов к нескольким прокси: подключение по join-токену.