Node.js - динамическое изменение сертификата SSL для сервера HTTPS во время выполнения - PullRequest
2 голосов
/ 28 октября 2011

Я создаю HTTPS-прокси в node. По сути, я позволяю людям устанавливать псевдоним DNS CNAME для моего прокси-сервера (на котором настроен DNS-символ подстановки) и импортировать их сертификат SSL в мое приложение (как это делает AWS Elastic Load Balancer), чтобы их Имя хоста CNAME должным образом защищено и распознается клиентом при каждом запросе.

Сейчас я работаю на стороне прокси и пытаюсь найти способ динамической загрузки нужного сертификата перед рукопожатием SSL с клиентом. Рабочий процесс:

  1. Новый запрос получен сервером
  2. Получить имя хоста, запрошенное клиентом (то есть псевдоним DNS CNAME, установленный пользователем)
  3. Загрузить правильный сертификат, принадлежащий этому имени хоста
  4. Использовать загруженный сертификат в текущем запросе (нужна помощь здесь)
  5. Рукопожатие (с загруженным сертификатом - который варьируется от запроса к запросу)

Есть ли способ сделать это?

1 Ответ

1 голос
/ 29 октября 2011

Вот так: использование SNI в узле должно заставить его работать.

Проблема в том, что пока не все клиенты (браузеры или библиотеки) поддерживают его.

...