Jak używać SSL_CERT_FILE dla OpenSSL Windows (OpenSSL 1.0.1c)
Jak (jeśli w ogóle) można zdefiniować pojedynczy plik certyfikatu zaufanego dla OpenSSL w systemie Windows (Win-7, OpenSSL 1.0.1c) przy użyciu zmiennej środowiskowej SSL_CERT_FILE?
Różne badania doprowadziły mnie do pobrania wersji grudnia '12 zaufanych certyfikatów Mozilli w formacie PEM, stąd:http://curl.haxx.se/docs/caextract.html Zawiera wszystkie certyfikaty i różne powiązane informacje połączone w jeden plik.
Znalazłem różne odniesienia do użycia zmiennych środowiskowych SSL_CERT_DIR i SSL_CERT_FILE w odniesieniu do innych produktów opartych na OpenSSL. Na przykład,http://lynx.isc.org/current/README.sslcerts wskazuje, że można ustawić oba z nich, a bazowe biblioteki OpenSSL będą z nich korzystać. Nie było to jednak moje doświadczenie z samym narzędziem OpenSSL.
Udało mi się pomyślnie użyć SSL_CERT_DIR, ale z wielkim bólem, jak następuje. Wyeksportowałem (z IE 8) certyfikat z www.wellsfargo.com (wybrany losowo), wraz z dwoma certyfikatami w jego łańcuchu zaufania, oba z Verisign. Umieściłem każdy z dwóch certyfikatów Verisign w katalogu C :_st_stuff, a dla każdego wygenerowałem skrót
openssl x509 -hash -noout -in "Verisign Intl Server.cer"
który miał wyjście a302054c, i stąd utworzył łącze
mklink a302054c.0 "Verisign Intl Server.cer"
a także dla innych Verisign cert. Następnie umieściłem Wells Fargo cert. w innym katalogu i udało się go zweryfikować za pomocą
set SSL_CERT_DIR = C: ca_stuff openssl sprawdza "Wells Fargo web.cer"
Jednak po zdefiniowaniu SSL_CERT_FILE, wskazując na pobrany plik cacert.pem pobrany z witryny cURL, to samo polecenie nie powiodło się. Zrobił to z i bez zdefiniowania SSL_CERT_DIR. Sprawdziłem, czy wymagane certyfikaty CA znajdują się w pakiecie i potwierdziłem, że ich numery seryjne odpowiadają tym, które ręcznie wyodrębniłem z IE.
Wydaje się, że żmudnym procesem jest ręczne wyodrębnienie każdego certyfikatu i umieszczenie go we własnym pliku z linkiem mieszania wskazującym na niego. Gdyby to był Unix, mógłbym go zautomatyzować, ale w systemie Windows ... najwyraźniej źle zrozumiałem, jak uzyskać jeden duży plik certyfikatu CA pracujący z OpenSSL.
Z góry dziękujemy za wszelkie zalecenia, informacje i pomoc.