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

Коммерческий сертификат SSL и самозаверяющий сертификат для аутентификации

У меня есть хост apache 2, работающий с коммерческим (quickssl) подписанным сертификатом, и мне нужно сгенерировать клиентские сертификаты для аутентификации.

Я создал ЦС (согласно http://www.cafesoft.com/products/cams/ps/docs30/admin/ConfiguringApache2ForSSLTLSMutualAuthentication.html ) и соответствующим образом изменил мой файл конфигурации apache.

<VirtualHost *:443>
  Servername SITEtest.XXX.com
  DocumentRoot /SITE/html

        CustomLog /SITE/html.log vhost_combined
        SSLEngine on
        SSLCertificateFile /etc/apache2/ssl/comercialcert.cer
        SSLCertificateChainFile /etc/apache2/ssl/comercialcert.int
        SSLCertificateKeyFile /etc/apache2/ssl/comercialcert.key

  <Directory /SITE>
        AllowOverride All
        SSLRequireSSL
            SSLCACertificateFile /etc/apache2/ssl/selfsignedcaCA.crt
            SSLVerifyClient require
            SSLVerifyDepth 1
            SSLOptions +StrictRequire +StdEnvVars +ExportCertData +FakeBasicAuth
  </Directory>

</VirtualHost>

Я импортировал в браузер файл pkcs12, созданный с помощью того же центра сертификации. Каждый раз, когда я пытаюсь получить доступ, я получаю сообщение об ошибке «Не удалось выполнить повторное согласование: не принято клиентом !?» в журнале ошибок apache.

Все работает нормально, если я использую сертификат, сгенерированный моим центром сертификации, в SSLCertificateFile, но это работает не так, как задумано, поскольку браузер распознает сертификат веб-сервера как самоподписанный.

Дальнейшие подробности:

Apache / 2.2.9 (Debian Lenny) mod_ssl / 2.2.9 OpenSSL / 0.9.8g

Возможно, вы используете дистрибутив apache, в который были перенесены обходные пути повторного согласования. Один быстрый способ попробовать - добавить SSLInsecureRenegotiation off директива. Если это не сработает, измените свой SSLVerifyClient директива к Optional.

Это откроет сервер для уязвимостей повторного согласования TLS для этого местоположения каталога, но вы мало что сможете с этим поделать, пока Debian не обновит свой дистрибутив (или вы не скомпилируете свой собственный дистрибутив).