Проблема было в неправильной настройке httpd.conf и в некоректной подписи CA.CA :
openssl req -new -newkey rsa:1024 -nodes -keyout ca.key -x509 -days 500 -subj /C=RU/ST=Msk/L=Msk/O=mars/OU=mars/CN=mars.in/emailAddress=admin@mars.in -out ca.crt
Сертификат Для сервера
openssl genrsa -des3 -out mars-server.key 1024
openssl req -new -key mars-server.key -out mars-server.csr -subj /C=RU/ST=Msk/L=Msk/O=mars/OU=mars2/CN=mars.in/emailAddress=admin@mars.in
openssl x509 -req -in mars-server.csr -out mars-server.crt -sha1 -CA ca.crt -CAkey ca.key -CAcreateserial -days 3650
Сертификат Для Клиента
openssl req -new -newkey rsa:1024 -nodes -keyout client01.key -subj /C=RU/ST=Msk/L=Msk/O=mars/OU=mars1/CN=mars.in/emailAddress=admin@mars.in -out client01.csr
openssl ca -config ca.config -in client01.csr -out client01.crt -batch
openssl pkcs12 -export -in client01.crt -inkey client01.key -certfile ca.crt -out client01.p12 -passout pass:1234
Обязательно проверить правильность готовых сертификатов:
openssl verify -CAfile ca.crt client01.crt
openssl verify -CAfile ca.crt mars-server.crt
В http.conf
<VirtualHost *:443>
SSLEngine on
SSLCipherSuite ALL:!ADH:!EXPORT56:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv2:+EXP:+eNULL
SSLProtocol all -SSLv2
SSLCertificateFile /usr/local/etc/apache/ssl.crt/mars-server.crt
SSLCertificateKeyFile /usr/local/etc/apache/ssl.key/mars-server.key
SSLCertificateChainFile /usr/local/etc/apache/ssl.crt/ca.crt
SSLCACertificatePath /root/
SSLCACertificateFile /usr/local/etc/apache/ssl.crt/ca.crt #CA
<Directory /home/mars/data/www/mars.in/test/restructed/>
SSLRequireSSL
SSLVerifyClient require #требовать авторизацию сертификатом
SSLVerifyDepth 1 #проверять CA, 0 не проверять.
</Directory>
</VirtualHost>
<VirtualHost 10.10.10.10:443>
ServerName mars.in
DocumentRoot /home/mars/data/www/mars.in
Group mars
User mars
CustomLog /home/mars/logs/mars.in.access.log combined
ErrorLog /home/mars/logs/mars.in.error.log
ServerAlias www.mars.in
ServerAdmin admin@mars.in
SSLEngine on
SSLCACertificateFile /usr/local/etc/apache/ssl.crt/ca.crt # CA
SSLCertificateFile /home/httpd-cert/mars-server.crt
SSLCertificateKeyFile /home/httpd-cert/mars-server.key
SSLVerifyClient require
SSLVerifyDepth 1
SetEnvIf User-Agent ".*MSIE.*" nokeepalive ssl-unclean-shutdown downgrade-1.0 force-response-1.0
</VirtualHost>
Так работает. Правдо, в 2х местах пришлось все это прописывать.
Не хочеться ничего менять, т.к. 2 недели разбирался...
client01.p12 импортируем в IE7. В FireFox вроде тоже работает.
доп информация :
http://www.vanemery.com/Linux/Apache/apache-SSL.html
http://www.webscript.ru/stories/04/05/29/2604693
http://www.modssl.org/docs/2.8/ssl_faq.html#ToC9
http://httpd.apache.org/docs/2.2/mod/mod_ssl.html#sslciphers...
Здесь таже проблема на eng :
http://www.mail-archive.com/openssl-users@openssl.org/m...
Тема закрыта.