Я знаю, что вам нужно несколько IP-адресов, если вы хотите использовать несколько сертификатов SSL с Apache. Предполагая, что у меня есть 2 IP-адреса на моем VPS (назовем их 1.1.1.1 и 2.2.2.2), Мне было интересно, возможна ли следующая установка:
domain1.com будет на 1.1.1.1 и используйте подписанный сертификат SSL (от такого поставщика, как Verisign)
domain2.com, domain3.com, .. будет на 2.2.2.2 и поделитесь самозаверяющим сертификатом ...
Другими словами, одному домену нужен собственный подписанный сертификат, потому что он должен обрабатывать финансовые транзакции и т. Д., Поэтому он будет «один» на первом IP-адресе. Другим доменам нужен только самоподписанный сертификат, поскольку он предназначен только для их области администратора, и я не возражаю против предупреждений, поэтому все они будут на втором IP
Возможна ли такая установка? Если да, то какие-нибудь примеры того, как будет выглядеть конфигурация виртуального хоста?
Любая помощь будет оценена по достоинству!
Довольно просто получить другой сертификат для другого IP-адреса; просто поместите сертификат SSL в виртуальные хосты для каждого.
Наличие нескольких виртуальных хостов на одном IP на данном этапе не сработает. Есть некоторые технологии, которые могут сработать для этого в будущем, но пользователи не используют браузеры, которые могут это сделать. Пользовательский агент (браузер) устанавливает SSL-соединение и проверяет SSL-соединение, прежде чем сообщить серверу, к какому хосту он подключается. Вам действительно нужен отдельный IP-адрес для каждого виртуального хоста SSL.
<VirtualHost 1.1.1.1:443>
ServerName foo
DocumentRoot /var/www/foo
CustomLog /var/log/httpd/foo.ssl_access_log combined
ErrorLog /var/log/httpd/foo.ssl_error_log
SSLEngine on
SSLProtocol all -SSLv2
SSLCipherSuite ALL:!ADH:!EXPORT:!SSLv2:RC4+RSA:+HIGH:+MEDIUM:+LOW
SSLCertificateFile /etc/pki/tls/certs/foo.crt
SSLCertificateKeyFile /etc/pki/tls/private/foo.key
</VirtualHost>
<VirtualHost 2.2.2.2:443>
ServerName bar
DocumentRoot /var/www/bar
CustomLog /var/log/httpd/bar.ssl_access_log combined
ErrorLog /var/log/httpd/bar.ssl_error_log
SSLEngine on
SSLProtocol all -SSLv2
SSLCipherSuite ALL:!ADH:!EXPORT:!SSLv2:RC4+RSA:+HIGH:+MEDIUM:+LOW
SSLCertificateFile /etc/pki/tls/certs/bar.crt
SSLCertificateKeyFile /etc/pki/tls/private/bar.key
</VirtualHost>
Как уже упоминалось freiheit, есть новый способ настроить vhosts с другим ssl
сертификаты на единый ip. Но поддержка со стороны клиента все еще неполная.
Это называется SNI (указание имени сервера) и это стоит прочитать.
С уважением...