Dlaczego nie zwijasz certyfikatu SSL z podpisem własnym?

Skopiowałem plik PEM do / usr / local / share / ca-certificate / i uruchomiłem update-ca-certificate, i sprawdziłem, że wynikowy certyfikat jest teraz zawarty w /etc/ssl/certs/ca-certificates.crt, który jest plik wydrukowany przez curl-config --ca. Sprawdziłem również, czy certyfikat wydrukowany przez openssl s_client -connect example.com:443 był identyczny z moim plikiem PEM. A jednak nadal otrzymuję „błąd: 14090086: komunikat SSL: SSL3_GET_SERVER_CERTIFICATE: weryfikacja certyfikatu nie powiodła się”. Dzieje się tak nawet wtedy, gdy używam opcji curl --cacert, jak opisano whttp://curl.haxx.se/docs/sslcerts.html aby powiedzieć, jakiego certyfikatu użyć.

Działa, jeśli całkowicie wyłączę weryfikację certyfikatu za pomocą curl -k, ale nie chcę tego robić, ponieważ próbuję napisać wiązkę testową, która ma poprawnie przetestować SSL.

Działa dobrze, jeśli mam dostęp do tego samego adresu URL w lynx, który zwykle narzeka, jeśli występują błędy SSL. Ale nie mogę po prostu użyć Lynxa dla tej wiązki testowej, chyba że znajdę jakiś sposób na sprawienie, by AsyncHTTPClient Tornado używał Lynx zamiast libcurl. I wydaje się, że nie ma sensu, aby instalacja samopodpisanego certyfikatu spełniała Lynx, ale nie zwinęła.

Używam Ubuntu 12.04 LTS w VirtualBox Vagrant; ma zwijanie 7.22.0. Serwer proxy kończący SSL to nginx / 1.3.13 działający na tej samej maszynie, a nazwa domeny jest wskazywana na 127.0.0.1 przez wpis w / etc / hosts.

Jakieś wskazówki na temat tego, co może być problemem? Dzięki.

questionAnswers(1)

yourAnswerToTheQuestion