Сквозной TLS (незавершающий) обратный прокси-сервер HTTPS/балансировщик нагрузки для HTTP/3

У меня есть хост-система с одним общедоступным IP-адресом, на которой работают несколько виртуальных машин. На каждой виртуальной машине размещено несколько веб-сайтов, и она должна сохранять контроль над ключами TLS для своих HTTPS-соединений. Чтобы эта настройка работала, хост-система должна запустить обратный прокси-сервер на порту 443, который перенаправляет входящие запросы на соответствующую виртуальную машину на основе SNI. Таким образом, хост-системе не нужно расшифровывать трафик TLS. Хост-система получает запросы через HTTP/1 или HTTP/2 и пересылает их виртуальным машинам, используя протокол PROXY , чтобы сообщать виртуальным машинам подробности о входящем соединении.

Этот тип настройки часто называют «сквозным TLS» и поддерживается различными веб-серверами хост-системы, например:

Теперь я хотел бы добавить поддержку HTTP/3 в хост-систему. У меня недостаточно знаний по этой теме, чтобы судить, должны ли виртуальные машины также поддерживать HTTP/3 (и работает ли протокол PROXY с HTTP/3 в этом случае), или может ли хост-система преобразовывать входящий HTTP/3. /3 запросы к HTTP/1 без их шифрования перед пересылкой на виртуальные машины.

Я не смог найти способ настроить это:

  • nginx пока не поддерживает HTTP/3 в своей стабильной версии
  • traefik не поддерживает маршрутизацию SNI для HTTP/3 (проблема , обсуждение )
  • У меня нет опыта работы с haproxy, но ответов на этот вопрос нет.

Существует ли какое-либо программное обеспечение обратного прокси-сервера/балансировщика нагрузки, которое поддерживает сквозную передачу TLS с маршрутизацией SNI для HTTP/3?

(Обратите внимание, что альтернативный подход — перенаправить отдельный порт HTTP/3 UDP на каждую виртуальную машину. Порт должен быть < 1024.)

0 ответов

Другие вопросы по тегам