URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID9
Нить номер: 9706
[ Назад ]

Исходное сообщение
"Подпись клиентских сертификатов купленным сертификатом"

Отправлено soleg , 13-Июл-13 02:43 
Всем привет. Вопрос по теме http://www.opennet.me/base/sec/ssl_cert.txt.html

Такой вопрос.
Есть сайт авторизация происходит по клиентским сертификатом.Подписываются они самоподписаным сертификатом. И браузер ругается при переходе на сайте.
Сейчас купил сертификат от комодо. Подписываю им. Но при открытия защишенной страницы и указания нужного сертификата выдаёт ошибку

ERR_BAD_SSL_CLIENT_AUTH_CERT

Вот такой конфиг хоста

<VirtualHost %IP%:443>
    SSLEngine on
    SetEnvIf User-Agent ".*MSIE.*" nokeepalive ssl-unclean-shutdown downgrade-1.0 force-response-1.0
    SSLCertificateFile /ca.crt
    SSLCertificateKeyFile /ca.key
    SSLCACertificateFile /ca.crt    
         SSLCertificateChainFile /ca.ca-bundle  
    <Directory /var/www/user/data/www/site.ru/>
    SSLVerifyClient require
    </Directory>
    SSLOptions +StdEnvVars +ExportCertData
    ServerName site.ru
    DocumentRoot /var/www/user/data/www/site.ru
    AssignUserID user user
    ErrorLog /var/www/httpd-logs/site.ru.error.log
    ServerAlias site.ru
    ServerAdmin webmaster@site.ru
    php_admin_value open_basedir "/var/www/user/data:."
    php_admin_value sendmail_path "/usr/sbin/sendmail -t -i -f webmaster@site.ru"
    php_admin_value upload_tmp_dir "/var/www/user/data/mod-tmp"
    php_admin_value session.save_path "/var/www/user/data/mod-tmp"
    AddType application/x-httpd-php .php .php3 .php4 .php5 .phtml
    AddType application/x-httpd-php-source .phps
</VirtualHost>

Если же убрать эти строки


<Directory /var/www/user/data/www/site.ru/>
    SSLVerifyClient require
    </Directory>

То просто выдаёт защищенную страницу без запроса сертификата, при этом показывает что соединение достоверное. т.е. зелённый - https:

Возник вопрос. А можно ли вообще подписывать клиентские сертификаты не самоподписанным сертификатом?

Если можно, то скажите что делаю не так?

Клиентский сертификат создаю


openssl req -new -newkey rsa:1024 -nodes -keyout clien01.key  -subj /C=RU/CN=clien01/emailAddress=usr@dm.ru -out clien01.csr
openssl ca -config ca.config -in clien01.csr -out clien01.crt -batch
openssl pkcs12 -export -in clien01.crt -inkey clien01.key -certfile ca.crt -out clien01.p12 -passout pass:q1w2e3


Содержание

Сообщения в этом обсуждении
"Подпись клиентских сертификатов купленным сертификатом"
Отправлено gg , 13-Июл-13 13:47 
>[оверквотинг удален]
> сертификатом?
> Если можно, то скажите что делаю не так?
> Клиентский сертификат создаю
>
 
> openssl req -new -newkey rsa:1024 -nodes -keyout clien01.key  -subj /C=RU/CN=clien01/emailAddress=usr@dm.ru
> -out clien01.csr
> openssl ca -config ca.config -in clien01.csr -out clien01.crt -batch
> openssl pkcs12 -export -in clien01.crt -inkey clien01.key -certfile ca.crt -out clien01.p12
> -passout pass:q1w2e3
>

Во-первых, браузер мог ругаться на самоподписной сертификат сервера, а не клиента. На самоподписной сертификат клиента может ругаться сервет, если ему не сказано принимать эти сертификаты. Клиентские сертификаты обычно подписывают своим СА.
Во-вторых, ca.crt в конфиге - это так назван подписанный сертификат вашего сервера?
В-трерьих, вы купили сертификат, которым можете подписывать любые клиентские сертификаты?


"Подпись клиентских сертификатов купленным сертификатом"
Отправлено soleg , 13-Июл-13 18:14 
>[оверквотинг удален]
>> -out clien01.csr
>> openssl ca -config ca.config -in clien01.csr -out clien01.crt -batch
>> openssl pkcs12 -export -in clien01.crt -inkey clien01.key -certfile ca.crt -out clien01.p12
>> -passout pass:q1w2e3
>>

> Во-первых, браузер мог ругаться на самоподписной сертификат сервера, а не клиента. На
> самоподписной сертификат клиента может ругаться сервет, если ему не сказано принимать
> эти сертификаты. Клиентские сертификаты обычно подписывают своим СА.
> Во-вторых, ca.crt в конфиге - это так назван подписанный сертификат вашего сервера?
> В-трерьих, вы купили сертификат, которым можете подписывать любые клиентские сертификаты?

ca.crt это переименнованный .crt файл полученный при покупке серта.

Подскажите, где такой можно купить?


"Подпись клиентских сертификатов купленным сертификатом"
Отправлено gg , 13-Июл-13 21:29 

> ca.crt это переименнованный .crt файл полученный при покупке серта.

Вы посылали в удостоверяющий центр сгенерированный сертификат вашего сервера? Тогда это он.
> Подскажите, где такой можно купить?

Этого я не знаю.))
Проще сгенерировать свой СА сертификат (создать свой удостоверяющий центр), и подписывать им клиентские.