Vorbereiten von SSL-Zertifikaten für die Installation

Es wurde viel über die Installation von SSL-Zertifikaten auf einem Webserver geschrieben, und normalerweise ist diese Frage für Systemadministratoren nicht schwierig. Es ist jedoch hilfreich, kurz vor der Installation einige Überprüfungen durchzuführen, um nicht die lästige Meldung "Das Sicherheitszertifikat der Site ist nicht vertrauenswürdig!" (Das Sicherheitszertifikat der Site ist nicht vertrauenswürdig!) Dies gilt insbesondere dann, wenn Sie Zertifikate nicht vom Registrar, sondern vom Kunden erhalten, der beispielsweise private Schlüssel verwechseln oder ein Zertifikat im Format seines Texteditors mit zusätzlichem Formatierungsmüll senden kann.

Damit alles sofort funktioniert, ist es ratsam, vor der Installation des SSL-Zertifikats einige Überprüfungen durchzuführen.

Also, fangen wir an ...

1. Überprüfen Sie die Integrität des Zertifikats:

openssl x509 -noout -modulus -in certificate.crt 

Wenn wir das Modul am Ausgang erhalten, wird die Integrität des Zertifikats nicht beeinträchtigt. Andernfalls wird der Fehler "Zertifikat kann nicht geladen werden" angezeigt.

2. Ebenso überprüfen wir die Integrität des privaten Schlüssels:

 openssl rsa -noout -modulus -in privatekey.key 

3. Wir betrachten die Gültigkeitsdauer des Zertifikats:

 openssl x509 -noout -text -in certificate.crt | grep -e "Not Before" -e "Not After" 

4. Überprüfen Sie das Zertifikat auf Widerruf .

5. Überprüfen Sie die Konformität des Zertifikats und des privaten Schlüssels:

 openssl x509 -noout -modulus -in certificate.crt | openssl md5 openssl rsa -noout -modulus -in privatekey.key | openssl md5 

Wenn die Ergebnisse identisch sind, stimmen Zertifikat und privater Schlüssel überein.

Automatisierung


Wenn Sie ein paar SSL-Zertifikate pro Jahr installieren müssen, reichen die oben genannten Befehle völlig aus. Wenn Sie jedoch regelmäßig mit Zertifikaten arbeiten müssen, verwenden Sie am besten vorgefertigte Skripte. Als Beispiel würde ich es wagen, meine eigene Entwicklung unter Bash vorzuschlagen. Die Skripte führen all diese Aktionen ohne unnötige Gesten aus (getestet in Ubuntu, aber höchstwahrscheinlich funktioniert es auch in anderen Linux-Distributionen).

 wget https://raw.githubusercontent.com/o-pod/security/master/ssl-check-matching.sh chmod a+x ssl-check-matching.sh wget https://raw.githubusercontent.com/o-pod/security/master/ssl-check-revoc.sh chmod a+x ssl-check-revoc.sh 

Überprüfen des Zertifikats und des privaten Schlüssels auf Integrität und Konformität miteinander:

 ./ssl-check-matching.sh certificate.crt privatekey.key -v 

Überprüfung der Gültigkeitsdauer des Zertifikats und seiner Abwesenheit in den Widerrufslisten:

 ./ssl-check-revoc.sh -f certificate.crt -v 

Die oben beschriebenen Tests decken die Probleme bei der Installation von SSL-Zertifikaten ab, auf die ich jemals in der Praxis gestoßen bin. Aber wenn Sie denken, dass es sich lohnt, andere Parameter zu überprüfen, teilen Sie in den Kommentaren, ich werde dankbar sein.

Source: https://habr.com/ru/post/de418857/


All Articles