Beide Seiten der vorigen Revision Vorhergehende Überarbeitung | |
development:net:openssl [2017-03-07 08:45] – Martin Prochnow | development:net:openssl [2023-05-01 08:11] (aktuell) – gelöscht Martin Prochnow |
---|
====== OpenSSL ====== | |
| |
===== Fehler ===== | |
Fehlermeldungen der OpenSSL-Bibliothek sind teilweise schon etwas kryptisch. Hier der Versuch, etwas Klarheit zu schaffen (basierend auf eigenen Erfahrungen ohne Anspruch auf Korrektheit oder Vollständigkeit). | |
^Code ^ Meldung ^Server/Client ^Bemerkung ^ | |
|1407609C |SSL23_GET_CLIENT_HELLO:http request |Server |Client beginnt Verbindung nicht mit SSL-Handshake, z.B. wenn HTTP gegen einen HTTPS-Server verwendet wird | | |
|14090086 |SSL3_GET_SERVER_CERTIFICATE:certificate verify failed|Client | Client kann das Server-Zertifikat nicht verifizieren | | |
|14094416 |SSL3_READ_BYTES:sslv3 alert certificate unknown |Server |Client kann das Server-Zertifikat nicht verifizieren | | |
|14094412 |SSL3_READ_BYTES:sslv3 alert bad certificate |Server/Client |Gegenstelle akzeptiert das Zertifikat nicht (z.B. weil CN != Hostname) | | |
|140890C7 |SSL3_GET_CLIENT_CERTIFICATE:peer did not return a certificate|Server |Client-Authentifizierung ist aktiv, aber Client liefert kein Zertifikat | | |
|14094410 |SSL3_READ_BYTES:sslv3 alert handshake failure|Server |Client-Authentifizierung ist aktiv, aber Client liefert kein Zertifikat | | |
|14090086 |SSL3_GET_SERVER_CERTIFICATE:certificate verify failed |Client |Server-Zertifikat konnte nicht verifiziert werden | | |
| |Certificate Verification : Error (26): unsupported certificate purpose|Server | Ein Zertifikat mit gesetztem Server-Flag wurde als Client-Zertifikat verwendet | | |
|14077410 |SSL23_GET_SERVER_HELLO:sslv3 alert handshake failure |Server/Client |Kein unterstützter Cipher für die Kommunikation gefunden | | |
| |
===== Mit Wireshark tcpdump des Verbindungsaufbaus debuggen ===== | |
* tcpdump-Datei in Wireshark öffnen | |
* Rechtsklick auf Listeneintrag, der zur Verbindung gehört, die debuggt werden soll | |
* //Follow TCP Stream// auswählen | |
* Wieder Rechtsklick auf Listeneintrag, //Decode as...// auswählen, im erscheinenden Dialog //SSL// auswählen | |
| |
===== Links ===== | |
*Artikelserie zur OpenSSL-Programmierung bei Heise-Developers: | |
* [[http://www.heise.de/developer/artikel/OpenSSL-Implementierung-innerhalb-eines-Client-und-Server-Programms-Teil-1-1050619.html|Teil 1]] | |
* [[http://www.heise.de/developer/artikel/OpenSSL-Implementierung-innerhalb-eines-Client-und-Server-Programms-Teil-2-1058771.html|Teil 2]] | |
* [[http://www.heise.de/developer/artikel/OpenSSL-Implementierung-innerhalb-eines-Client-und-Server-Programms-Teil-3-1157455.html|Teil 3]] | |
* [[http://www.heise.de/developer/artikel/OpenSSL-Implementierung-innerhalb-eines-Client-und-Server-Programms-Teil-4-1157918.html|Teil 4]] | |
* [[http://www.strlen.de/talks/ssl-programming.pdf|Folien zur OpenSSL-Programmierung]] | |
* [[http://h71000.www7.hp.com/doc/83final/ba554_90007/ch04s03.html|SSL Programming Tutorial]] | |
* http://www.skytale.net/blog/archives/22-SSL-cipher-setting.html | |
* [[https://www.peereboom.us/assl/assl/html/openssl.html|OpenSSL is written by monkeys]] | |
| |
| |
{{tag>SSL/TLS OpenSSL Wireshark}} | |