|
|
ru.perl- RU.PERL ---------------------------------------------------------------------- From : Artem Chuprina 2:5020/400 13 Jul 2007 15:33:19 To : Sergey Gernichenko Subject : Re: SSL LWP -------------------------------------------------------------------------------- Sergey Gernichenko -> All @ Fri, 13 Jul 2007 08:53:58 +0400: SG>> Подскажите, что и где можно почитать по поводу SSL, сертификатов, их SG>> проверки клиентом... SG> Взял файлы SG> ca-bundle.crt SG> notacacert.pem SG> notacakeynopass.pem SG> из дистриба перл-модуля Crypt::SSLeay с cpan. SG> сам модуль поставил с theoryx5 - PPM-репозитория (пока под виндой всё SG> отлаживаю) SG> настроил переменные окружения в скрипте: SG> $ENV{HTTPS_DEBUG} = 1; SG> # DEFAULT SSL VERSION SG> $ENV{HTTPS_VERSION} = '3'; SG> # CLIENT CERT SUPPORT SG> $ENV{HTTPS_CERT_FILE} = 'certs/notacacert.pem'; SG> $ENV{HTTPS_KEY_FILE} = 'certs/notacakeynopass.pem'; SG> # CA CERT PEER VERIFICATION SG> $ENV{HTTPS_CA_FILE} = 'certs/ca-bundle.crt'; SG> $ENV{HTTPS_CA_DIR} = 'certs/'; SG> выполняю запрос к https - серверу, в stderr сыпется: SG> SSL_connect:before/connect initialization SG> SSL_connect:SSLv2/v3 write client hello A SG> SSL_connect:SSLv3 read server hello A SG> SSL3 alert write:fatal:unknown CA SG> SSL_connect:error in SSLv3 read server certificate B SG> SSL_connect:error in SSLv3 read server certificate B SG> SSL_connect:before/connect initialization SG> SSL_connect:SSLv3 write client hello A SG> SSL_connect:SSLv3 read server hello A SG> SSL3 alert write:fatal:bad certificate SG> SSL_connect:error in SSLv3 read server certificate B SG> SSL_connect:before/connect initialization SG> SSL_connect:SSLv2 write client hello A SG> SSL_connect:error in SSLv2 read server hello B SG> SSL_connect:before/connect initialization SG> SSL_connect:SSLv2/v3 write client hello A SG> SSL_connect:SSLv3 read server hello A SG> SSL3 alert write:fatal:unknown CA SG> SSL_connect:error in SSLv3 read server certificate B SG> SSL_connect:error in SSLv3 read server certificate B SG> SSL_connect:before/connect initialization SG> SSL_connect:SSLv3 write client hello A SG> SSL_connect:SSLv3 read server hello A SG> SSL3 alert write:fatal:bad certificate SG> SSL_connect:error in SSLv3 read server certificate B SG> SSL_connect:before/connect initialization SG> SSL_connect:SSLv2 write client hello A SG> SSL_connect:error in SSLv2 read server hello B SG> SSL_connect:before/connect initialization SG> SSL_connect:SSLv2/v3 write client hello A SG> SSL_connect:SSLv3 read server hello A SG> SSL3 alert write:fatal:unknown CA SG> SSL_connect:error in SSLv3 read server certificate B SG> SSL_connect:error in SSLv3 read server certificate B SG> SSL_connect:before/connect initialization SG> SSL_connect:SSLv3 write client hello A SG> SSL_connect:SSLv3 read server hello A SG> SSL3 alert write:fatal:bad certificate SG> SSL_connect:error in SSLv3 read server certificate B SG> SSL_connect:before/connect initialization SG> SSL_connect:SSLv2 write client hello A SG> SSL_connect:error in SSLv2 read server hello B SG> SSL_connect:before/connect initialization SG> SSL_connect:SSLv2/v3 write client hello A SG> SSL_connect:SSLv3 read server hello A SG> SSL3 alert write:fatal:unknown CA SG> SSL_connect:error in SSLv3 read server certificate B SG> SSL_connect:error in SSLv3 read server certificate B SG> SSL_connect:before/connect initialization SG> SSL_connect:SSLv3 write client hello A SG> SSL_connect:SSLv3 read server hello A SG> SSL3 alert write:fatal:bad certificate SG> SSL_connect:error in SSLv3 read server certificate B SG> SSL_connect:before/connect initialization SG> SSL_connect:SSLv2 write client hello A SG> SSL_connect:error in SSLv2 read server hello B SG> 500 SSL negotiation failed:error:1407E086:SSL SG> routines:SSL2_SET_CERTIFICATE:certificate verify failed SG> Что ему не нравится? подскажите, плиз... Hе те сертификаты? если так, то SG> где можно взять те, что надо? например, как бы их экспортировать все из ИЕ SG> или оперы... Судя по ругани, он не находит сертификата того CA, которым подписан сертификат сайта. Потому ли, что его вообще нет, или потому, что ты ему чего-нибудь с ошибкой указал - вопрос более сложный. Я бы взял openssl (форматы файлов с сертификатами у них одинаковые) и попробовал им (openssl s_client -connect с различными ключами отладки), подсовывая ему эти файлы (и наоборот). У него бывает более внятная диагностика. Опять же, он расскажет, что именно за сертификат подсунули. Правда, расскажет только в случае успешного соединения, но его, кажется, можно уговорить не проверять сертификат. -- Artem Chuprina RFC2822: <ran{}ran.pp.ru> Jabber: ran@jabber.ran.pp.ru Чем отличается свобода от независимости? Hезависимость - это когда за тебя не платят. А свобода - когда за тебя не думают. --- ifmail v.2.15dev5.3 * Origin: Leninsky 45 home network (2:5020/400) Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.perl/25606e8adc236.html, оценка из 5, голосов 10
|