Advertisement
DD3AH

check SSL

Apr 10th, 2014
434
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Bash 1.18 KB | None | 0 0
  1. p=yourserver.com
  2.  
  3. t=$(mktemp -d)
  4. cd $t
  5.  
  6. # hole die ganzen Zertifikate ab bis zur root-CA
  7. openssl s_client -connect $p:443  -showcerts  -verify 5 -CApath /etc/ssl/certs/ -sess_out https.txt > https2.txt
  8. # Mit Q kann man den Ablauf beenden um das Warten auf den Timeout abzubrechen.
  9.  
  10. # Speichere die enthaltenen Zertifikate in die Dateien 1..n:
  11. awk 'BEGIN {n=0;o=0} (/BEGIN CERTIFICATE/){n++;o=1}(o==1){print >> n }(/END CERTIFICATE/){o=0}END{print n}' https2.txt
  12. # Das erste ist das vom eigentlichen Server, die weiteren die Chain und das letzte dann die Root-CA.
  13. # TODO: das mit "bis zur root-CA" klappt nicht immer, warum?
  14.  
  15. # Hole die OCSP aus dem Server-Zertifikat:
  16. ocsp=$(openssl x509 -in 1 -noout -text | perl -ne 'if (m;OCSP - URI:http://(.*)/?;) {print "$1\n"}' )
  17.  
  18. # Die Chain bis zum Root werden denn in umgekehrter Reihenfolge n..2 als -issuer übergeben und das vom Server als -cert.
  19. # TODO die issuer automatisch korrekt einfügen
  20. openssl ocsp -issuer 3 -issuer 2 -cert 1 -text -host $ocsp:80 > https3.txt
  21.  
  22. # Auf error-out sollte dann Response verify OK erscheinen.
  23. # Die genauen Details der Prüfung stehen in https3.txt
  24.  
  25. # Wenn alles geprüft ist aufräumen
  26. cd
  27. rm -rf $t
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement