Meiner Erfahrung nach sind die Validierer in den meisten Fällen wählerisch auf selbstsignierten Zertifikaten.
Im Allgemeinen, wenn Sie "gefälschte" Zertifikate verwenden, sollten Sie immer den zusätzlichen Schritt machen und eine gefälschte CA erstellen und das gefälschte Zertifikat mit der CA signieren. Wenn nichts anderes, macht dies Ihre Tests mehr wie ein reales Leben Szenario.
sind hier eine kurze Anleitung, wie man dies mit OpenSSL zu tun:
- eine CA erstellen (selbst signiertes)
- erstellen Server-Schlüssel und csr
openssl req -out server.csr -pubkey -new -keyout server.secure.key
- das Passwort Take off
openssl rsa -in server.secure.key -out server.key
- Signieren Sie das Serverzertifikat mit der CA
openssl x509 -req -in server.csr -CA ca.crt -CAkey ca.key -CAcreateserial -out server.crt -days 1825
- (Verwenden Sie für weitere Zertifikate die vorhandene Seriennummer
openssl x509 -req -in server.csr -CA ca.crt -CAkey ca.key -CAserial ca.srl -out server.crt -days 1825
)
Jedes Mal, wenn Sie Probleme mit jeden SSL (nicht nur HTTPS) - roh openssl
verwenden, indem Sie debuggen
openssl s_verify -connect <hostname>:<portnumber> <options>
tun z.B. Diese
openssl s_verify -connect localhost:443 -CAfile myfakeca.pem
in der Regel spart Ihnen eine Menge Ärger, herauszufinden, Probleme mit Ihrem tatsächlichen Zertifikate, die eigentlich nichts mit Ihrem Code zu tun haben.
Ich füge meine gefälschtes Zertifikat in /etc/ssl/certs/ca-certificates.crt Datei und Fehler zu geändert 'OpenID fehlgeschlagen OpenID Ermittlungsfehler: Fehler XRDS Dokument Abrufen: (77,‚Problem mit dem SSL CA cert (Pfad? Zugriffsrechte?) ') ' – sdnaghdi
Der Fehler ist ein Fehler der CURL-Bibliothek http://curl.haxx.se/libcurl/c/libcurl-errors.html#CURLESSLCACERT. Die CURL-Dokumentation besagt, dass der Server, zu dem Sie eine Verbindung herstellen, über ein Zertifikat verfügt, das nicht überprüft werden kann. Wann tritt der Fehler auf, unter welcher URL? – ziima