Diese Anleitung bietet eine kompakte Übersicht wichtiger OpenSSL-Kommandos zur Erstellung, Verwaltung und Nutzung von RSA-Schlüsseln, Zertifikaten und Signaturen. Sie richtet sich an Nutzer, die kryptografische Aufgaben wie das Erstellen von Schlüsselpaaren, das Generieren von Zertifikatsanfragen oder das Signieren und Verifizieren von Dateien durchführen möchten.
OpenSSL-Kommandos
- Erzeugen eines RSA-Keys (mit Passphrase):
openssl genrsa -des3 -out key_private.pem -rand [files] 2048
- Erzeugen eines RSA-Keys (ohne Passphrase):
openssl genrsa -out key_private.pem -rand [files] 2048
- Passphrase entfernen:
openssl rsa -in key_private.pem -out key_private_ohne.pem
- Passphrase hinzufuegen:
openssl rsa -des3 -in key_private_ohne.pem -out key_private.pem
- Erzeugen eines Requests:
openssl req -new -key key.pem -out req.pem
- Erzeugen eines pkcs12-Files (Endung .pfx wichtig):
openssl pkcs12 -export -in cert -inkey private.key -out test.pfx
- Ein Textfile signieren:
openssl dgst -sha1 -sign private.key -out file.signiert.sha1 file.txt
(Besser sha254 anstelle von sha1 nehmen, wenn verfuegbar.) - Signatur verifizieren:
openssl dgst -sha1 -verify public.key -signature file.signiert.sha1 file.txt
(Wenn beim Signieren sha254 verwendet wurde, muss beim Verifizieren auch sha254 verwendet werden. Der public.key ist im Zertifikat enthalten. Siehe nächster Befehl.) - Public Key aus dem Zertifikat exportieren:
openssl x509 -in users.crt -pubkey > public.key
- Privaten Schlüssel aus einer pfx-Datei exportieren:
openssl pkcs12 -in server.pfx -nocerts -nodes -out server.key
- Zertifikat aus einer pfx-Datei exportieren:
openssl pkcs12 -in server.pfx -clcerts -nokeys -out server.crt
- Zertifikats-Kette extrahieren (falls vorhanden):
openssl pkcs12 -in server.pfx -cacerts -nokeys -chain | sed -ne '/-BEGIN CERTIFICATE-/,/-END CERTIFICATE-/p' > inter.pem
IT Service Desk
Universitätsrechenzentrum, Bernhard-von-Cotta-Str. 1
09599 Freiberg
servicedesk [at] tu-freiberg.de
+49 3731 39-1818