Я пытаюсь внедрить аутентификацию на основе сертификата, и я получаю сообщение об ошибке во время установления связи SSL/TLS. Я пытался отладить его с помощью openssl s_client -state -debug -connect example.si:443
, но я честно не разбирался достаточно, чтобы иметь возможность интерпретировать результаты:Ошибка установления связи SSL/TLS после обмена ключами клиента
Из того, что я могу сказать, цепочка сертификатов правильно проверить (я «ве также проверили here), и это не кажется, что я сделал ошибки в моем httpd.conf
файле, при установке VirtualHost на Apache 2.2 сервера:
<VirtualHost *:443>
DocumentRoot D:/www/authentication
ServerName lpt.uni-mb.si
ServerAlias lpt.uni-mb.si
SSLEngine on
SSLCertificateFile "C:\Program Files (x86)\Apache Software Foundation\Apache2.2\conf\ssl\22_lpt.uni-mb.si.crt"
SSLCACertificateFile "C:\Program Files (x86)\Apache Software Foundation\Apache2.2\conf\ssl\root.crt"
SSLCertificateKeyFile "C:\Program Files (x86)\Apache Software Foundation\Apache2.2\conf\ssl\server.key"
SSLCertificateChainFile "C:\Program Files (x86)\Apache Software Foundation\Apache2.2\conf\ssl\11_Intermediate.crt"
SSLProtocol all -SSLv2 -SSLv3
SSLCipherSuite HIGH:!aNULL:!MD5:!RC4
SSLVerifyClient require
SSLVerifyDepth 10
SSLOptions +StdEnvVars +ExportCertData
<Directory "D:/www/authentication">
Options Indexes Includes
AllowOverride All
Order Deny,Allow
Allow from all
Options +FollowSymlinks
</Directory>
</VirtualHost>
Может быть, есть какая-то проблема с обмен ключа клиента, учитывая очень короткую операцию записи?
Хотя это не решит вашу проблему, вы не должны разрешать устаревшие вкусы SSLv2/v3, а скорее настраивать только TLS: 'SSLProtocol all -SSLv2 -SSLv3'. –
При тестировании взаимного сертификата с сертификатами с использованием 's_client' вам необходимо указать сертификат и ключ. Также см. Страницу ['s_client' man] (http://www.openssl.org/docs/manmaster/apps/s_client.html). – jww