SSH Zertifikat erstellen

Letztes Update am Samstag, dem 15. Januar 2011

Wie erstellt man ein SSH-Zertifikat um sich sicher mit einem Linux-Server zu verbinden? Das geht ganz einfach – mit Abstrichen. Folgendes als root über die Konsole/Putty auf dem Server ausführen:

ssh-keygen -t rsa -b 2048

Damit werden der private und öffentliche Schlüssel mit RSA und 2048 Bit erzeugt. Für weitere Einstellungsmöglichkeiten siehe Handbuch. Jetzt wird zuerst gefragt, wo man die Dateien speichen möchte. Wenn nichts angegeben wird, werden die Dateien unter /root/.ssh/ als id_rsa und id_rsa.pub gespeichert. Wenn für einen anderen Nutzer SSH-Schlüssel angelegt werden sollen, dann muss man mit diesem die Schritte ausführen. Dabei werden die Dateien in dem entsprechenden Home-Verzeichnis (/home/$username/.ssh/) angelegt. Danach wird nach einer Passphrase gefragt, welche die Sicherheit natürlich nochmals erhöht – kann aber auch einfach leer gelassen werden.

Als nächstes muss die Datei authorized_keys im selben Verzeichnis angelegt werden. Dieser muss über folgenden Befehl der öffentliche Schlüssel hinzugefügt werden:

cat id_rsa.pub >> /root/.ssh/authorized_keys

Damit sind die Arbeiten, soweit man nicht die Konfigurationsdatei unter /etc/ssh/sshd_config weiter anpassen möchte, auf dem Server abgeschlossen. Weiter gehts auf dem PC. Doch zuvor muss der private Schlüssel auf diesen, bspw. über WinSCP, runtergeladen werden. Der öffentliche bleibt auf dem Server.

Wer jetzt denkt, dass man den Schlüssel einfach in Putty angibt, wird mit der Meldung begrüßt, dass Putty damit nichts anfangen kann. Man muss zuerst den Schlüssel in ein Format konvertieren, was Putty versteht.

Dazu braucht man PuttyGen. Zuerst muss der Schlüssel in das Programm geladen werden, dazu wird, falls bei der Generierung eine angegeben wurde, nach der Passphrase gefragt. Danach speichert man den privaten Schlüssel ab und gibt diesen dann in Putty an. Und schon klappt die sichere Verbindung zum Server.

Optional kann in der Konfigurationsdatei die Anmeldung per Passwort verboten werden, oder dass ein anderer Port verwendet wird, was Angriffe verringert.

Dieser Artiekl wurde am Samstag, dem 15. Januar 2011 von erstellt.
Er gehört zu folgenden Kategorien: Linux, Netzwerk, Server, Sicherheit, Verschlüsselung, Webserver