Zertifikate lassen sich mit einem GUI wie TinyCA sehr leicht administrieren, trotzdem kann es unverzichtbar sein grundlegende Befehle zu beherrschen. OpenSSL wird über die Datei /etc/ssl/openssl.conf (bei Debian Etch) eingerichtet. Es folgt nun eine List von einigen wichtigen Kommandos.
$ openssl genrsa -aes256 -out 1024 $ openssl req -new -key -out $ openssl x509 -signkey -in -req -out -set_serial 1
Im einzelnen wird als erstes eine privater Schlüssel generiert (1024 Bit lang). Der Schlüssel wird dabei mit AES verschlüsselt um ihn vor Unbefugten zu schützen. Danach wird eine Signierungsanfrage oder CSR (certificat signing request) erstellt. Diese enthält Informationen über den Besitzer des zu erstellenden Zertifikats und den öffentlichen Schlüssel (passend zum im ersten Schritt erstellen privaten Schlüssel). Im dritten Schritt wird dann der CSR von der CA eine Signatur angehängt, wodurch ein Zertifikat entsteht. Erstellen eines Zertifikates (wird mit dem Zertifikat der Zertifizierungstelle signiert)
$ openssl genrsa -aes256 -out 1024 $ openssl req -new -key -out $ openssl x509 -CA -CAkey -in -req -out
Im Debian Paket von Openssl befindet sich das Skript CA.sh mit welchem sich die beschriebenen Schritte vereinfacht erledigen lassen.
$ openssl dhparam -out 1024
$ openssl verify -CAfile
$ openssl x509 -in -noout -text
$ openssl ca -gencrl -out
Die CRL ist eine Datei die der Öffentlichkeit zur Verfügung gestellt wird. In dieser Datei sind die widerrufenen Zertifikate aufgeführt. Widerrufen eines Zertifikates (Status eines Zertifikates steht in der Datei index.txt):
$ openssl ca -revoke
$ openssl ocsp -index -port 8888 -CA
OCSP ist ein Protokoll welches es erlaubt den Status eines Zertifikats zur Echtzeit zu ermitteln (Alternative zu CRL).
Für weitere Informationen siehe http://www.openssl.org.