Назад | Перейти на главную страницу

Несколько IP-адресов на основе SSL на lighttpd

У меня есть lighttpd в качестве веб-сервера, и на нем я установил сертификаты SSL на основе IP.

Я хочу иметь возможность иметь несколько сертификатов SSL на каждом новом IP-адресе, который может получить сервер.

Например, на данный момент у меня есть https://127.0.0.1 и он работает, но это сертификат, на котором CN = 127.0.0.1, поэтому, если веб-сервер получает новый IP-адрес от DHCP-сервера, скажем 192.168.1.x, сервер вызовет несоответствие SSL.

Вместо этого мне нужен новый сертификат исключительно для этого IP-адреса.

Как я могу создать сертификат SSL на основе нескольких IP-адресов? Конечно на lighttpd.

3 варианта:

  • Используйте разные сертификаты, прослушивая каждый ip с отдельным $SERVER["socket"] блокировать
  • Использовать TLS / SNI («Указание имени сервера») - поддерживается не всеми клиентами
  • Используйте SubjectAltName, см. http://wiki.cacert.org/VhostTaskForce (Рекомендую выбрать этот вариант)

Я не уверен, что правильно понял ваш вопрос, но если вы хотите использовать один и тот же сертификат на всех IP-интерфейсах на сервере, определите сокет без указания IP:

$SERVER["socket"] == ":443" {
     ssl.engine                  = "enable" 
     ssl.pemfile                 = "/path/to/ssl/certificate.pem" 
}

Таким образом, он прослушивает и обслуживает https с тем же сертификатом (certificate.pem) на всех интерфейсах, независимо от того, какой IP-адрес был назначен