Zum Inhalt springen

SSH mit Zertifikaten: Wie du den SSH-Schlüssel-Wildwuchs zähmst

11. März 2025 durch
SSH mit Zertifikaten: Wie du den SSH-Schlüssel-Wildwuchs zähmst
Tom Ziegler

"Schlüssel hier, Schlüssel da, Schlüssel überall - und nicht einer passt ins Schloss!" So oder so ähnlich fühlt es sich an, wenn man mit dem SSH-Schlüssel-Wildwuchs zu kämpfen hat. Doch bei uns PLUTEX IT-Superhelden ist das kein Problem. Wir haben das ultimative Tool, um den Schlüssel-Chaos zu zähmen: eine eigene SSH-CA. Klingt kompliziert? Ist es aber nicht! Schließlich sind wir hier, um dir zu zeigen, wie es geht.

Erst einmal brauchst du natürlich ein Zertifikat. Das erzeugst du ganz einfach mit dem `ssh-keygen` Befehl:

```bash

ssh-keygen -t rsa -b 4096 -f ca

```

Dieser Befehl erstellt ein neues RSA-Zertifikat mit einer Schlüssellänge von 4096 Bit. Der Schlüssel wird in der Datei 'ca' gespeichert. Jetzt hast du deine eigene SSH-CA. Damit bist du der Herr über den Schlüssel-Wildwuchs.

Aber was bringt dir das eigentlich? Nun, mit deiner eigenen SSH-CA kannst du Zertifikate für Benutzer und Hosts erstellen und signieren. Das vereinfacht die Authentifizierung enorm und reduziert die Anzahl der benötigten Schlüssel.

Um ein Benutzerzertifikat zu erstellen, verwendest du wieder `ssh-keygen`, aber diesmal mit anderen Parametern:

```bash

ssh-keygen -s ca -I username -n username -V +52w ~/.ssh/id_rsa.pub

```

Der `-s` Parameter gibt an, welcher Schlüssel für die Signatur verwendet werden soll. Mit `-I` wählst du den Namen des Zertifikats und mit `-n` den Benutzernamen. `-V +52w` legt die Laufzeit des Zertifikats fest und als letztes gibst du den Pfad zu deinem öffentlichen Schlüssel an.

Aber wir wären nicht die IT-Superhelden, wenn wir nicht noch einen draufsetzen könnten. Du kannst auch Host-Zertifikate erstellen. So kannst du sicherstellen, dass du dich auch wirklich mit dem richtigen Server verbindest. Der Befehl dafür sieht so aus:

```bash

ssh-keygen -s ca -I hostname -h -n servername -V +52w /etc/ssh/ssh_host_rsa_key.pub

```

Im Grunde genommen ist das fast das gleiche wie bei den Benutzerzertifikaten. Nur dass du mit `-h` angibst, dass es sich um ein Host-Zertifikat handelt und mit `-n` den Namen des Servers.

Und so zähmst du den SSH-Schlüssel-Wildwuchs. Mit deiner eigenen SSH-CA hast du die Kontrolle über die Schlüssel und kannst die Authentifizierung vereinfachen. Also, mach Schluss mit dem Schlüssel-Chaos und werde zum SSH-Schlüssel-Dompteur!

SSH mit Zertifikaten: Wie du den SSH-Schlüssel-Wildwuchs zähmst
Tom Ziegler 11. März 2025
Diesen Beitrag teilen