LINUX.ORG.RU
ФорумAdmin

apache и клиентские сертификаты для авторизации


0

0

имеем конфиг

SSLEngine on

SSLCertificateFile /etc/apache2/web-server.pem
SSLCertificateKeyFile /etc/apache2/web-server.pem

SSLCACertificateFile /etc/apache2/root_ca.crt

<Location /sa/ >
SSLVerifyClient require
SSLVerifyDepth 1
</Location>

при попытке зайти на https://some-site/sa/ имеем запросы сертификата и ошибку в браузере - типа невозможно отобразить страницу, невозможно завершить безопасную передачу (в опере, ие, файрфоксе), а в апачевских логах имеем "[error] Re-negotiation handshake failed: Not accepted by client!?", если "SSLVerifyClient require" поставить не в <Location> а прямо в описании хоста, то все работает. По тексту ошибки из логов, нашел только упоминание бага в апаче ~2002 года, что он де не различает различные SSLVerifyClient в разных директориях.
Система Debian etch, apache 2.2.3

Кто нибудь может подсказать в чем дело и как с эимс бороться?


Re: apache и клиентские сертификаты для авторизации

Если не ошибаюсь, проблема в контексте определения директивы.

SSLVerifyClient
...
Context: server config, virtual host
...

kondor ★★★ ()

Re: apache и клиентские сертификаты для авторизации

добавьте в httpd.conf

SSLProtocol all -SSLv2 SSLVerifyClient none

borisych ★★★★★ ()

Re: apache и клиентские сертификаты для авторизации

и так, кое что прояснилось, но не все.
у меня имелось 2 виртулхоста - VirtualHost _default_:443 и VirtualHost *:443
Первый был просто заглушка с одной страничкой, а второй уже нормальный, с ServerName и с SSLVerifiyClient. После удаления первого хоста, все заработало. Чувствую, что связано примерно с тем, что name based хостам нельзя давать индивидуальные сертификаты, но как не понимаю.
С двумя хостами, вроде все работает как надо, если заходишь на ???.domain.ru то попадаешь на хост-заглушку, если заходишь на target.domain.ru то попадаешь куда надо, но SSLVerifyClient не хочет работать. А после удаления первого хоста-заглушки, все работает как надо, но с любого адреса, а не только с определенного.
Буду признателен, если кто-нибудь объяснит сей феномен.

CFA ()

Re: apache и клиентские сертификаты для авторизации

Нашел в апачевских доках такую строчку - "Name-based virtual hosting cannot be used with SSL secure servers because of the nature of the SSL protocol", с одной стороны это вроде объясняет проблемы, но с другой стороны - работает же... до определенного момента.

CFA ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.