Jump to content
Калькуляторы

Настроить SSL в Apache 2.2

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

Когда-то давно у меня была такая рабочая конфигурация:

   SSLEngine on
   SSLCertificateFile    "cert/site.crt"
   SSLCertificateKeyFile "cert/site.key"
   SSLCACertificateFile  "cert/ca.crt"
#   SSLCARevocationFile   "cert/ca.crl"
   <Location />
       SSLRequireSSL
#        SSLVerifyClient require
#        SSLVerifyDepth 4
#        SSLRequire %{SSL_CLIENT_I_DN_Email} in {"ca@site.local", "staff@site.local"}
#        SSLOptions +ExportCertData +FakeBasicAuth
#        SSLUserName SSL_CLIENT_S_DN_Email
#        AuthName "Service Area"
#        AuthType Basic
#        AuthUserFile "cert/site.usr"
#        Require valid-user
   </Location>

Разумеется в ней все строки был раскомментированы.

ca.crt и ca.crl это сертификат собственного (самоподписанного) CA, site.crt и site.key это сертификат и ключ на сайт, подписанный собственным CA, site.usr это список email (в клиентском сертификате), которым разрешен доступ на сайт. Причем клиентские сертификаты должны были быть выданы либо корневым CA (ca@site.local), либо промежуточным CA (staff@site.local).

 

Ранее это все работало нормально.

Теперь в таком виде (с закомментированными строками) работает, но разумеется клиентский сертификат не проверяется.

Как только раскомментирую SSLVerifyClient require, работать сразу же перестает, на клиенте ошибка "Сайт не отправил данных", на сервере в логах "Re-negotiation handshake failed".

 

Не подскажите, куда копать?

Share this post


Link to post
Share on other sites

Блин, разобрался.

Все было правильно.

Просто у меня на ПК был установлен Касперский, который считал себя слишком умным и подменял CA на свой сертификат, для MITM.

Share this post


Link to post
Share on other sites

Я и сам впечатлился.

Подается под соусом благих намерений (проверять вирусы и трояны на https-страницах), однако при двухсторонней проверке (клиента сервером) это разумеется вылезло.

Share this post


Link to post
Share on other sites

Антивирусы, как правило приносят больше геморроя, чем пользы. :) А тут еще и MITM встроенный, прекрасно.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this