Wie man einen SSH-Key erzeugt und verwendet
, 15. 08. 2020 - 12:19SSH ist ein grundlegendes Werkzeug für Systemadministratoren, um auf Deinen Server zuzugreifen. Der Zugang mit Benutzernamen und Passwort ist nicht mehr sicher, mit SSH-Keys ist es nicht nur einfacher, sondern auch sicherer. Viele Bots versuchen automatische einen Serverzugang zu knacken. Diese machen Bruteforce Attacken und wenn das Passwort schlecht ist, kann ein Serverzugang sehr schnell geknackt sein.
Der bessere Weg ist, SSH wohl offen zu lassen, weil Du es brauchst, aber Du deaktivierst die Benutzer/Passwort-Authentifizierung am Server und meldest Dich mit einem SSH-Key an. Diese Methode besteht aus der Authentifizierung über asymetrische Kryptographie. Der private Schlüssel des Benutzers ist derjenige, der die Authentifizierung gewährt.
Ein weiterer Vorteil von SSH-Keys ist, dass Du keine anderen Passwörter benötigst, um sich an verschiedenen Servern anzumelden. Es ist möglich, dass sich ein Benutzer auf allen Server authentifizieren kann, wo kein öffentlicher Schlüssel installiert ist.
So erzeugst Du SSH-Keys
SSH-Key erzeugen auf Mac OS oder Linux
Öffne den Terminal auf Deinem Computer.
Gib in die Befehlszeile folgendes ein:
ssh-keygen -t rsa -C "your_email@example.com"
Statt der E-Mail Adresse kannst Du auch Deinen eigenen Hostnamen wählen. Drücke "Enter".
Du siehst nun die folgende Ausgabe:
Generating public/private rsa key pair.
Enter file in which to save the key (/home/username/.ssh/id_rsa):
Unter Mac OS wird Dein Schlüssel unter /Users/username/.ssh/id_rsa gespeichert, wobei "username" für Deinen Benuternamen auf Deinem System steht.
Belasse den vorgeschlagenen Pfad und drücke wieder "Enter".
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Wenn Du nicht möchtest, dass Du bei jeder Verwendung Deines Schlüssels nach einem Passwort gefragt wirst, gib nichts ein und drücke stattdessen bei jeder Frage "Enter".
Your identification has been saved in /home/username/.ssh/id_rsa.
Your public key has been saved in /home/username/.ssh/id_rsa.pub.
Jetzt wurde Dein Schlüsselpaar erzeugt.
id_rsa ist Dein privater Schlüssel. Teile diesen Schlüssel niemals, behalte diesen nur auf Deinem Computer.
id_rsa.pub ist Dein öffentlicher Schlüssel. Diesen Schlüssel installierst Du auch am Server und diesen kannst Du weiter geben.
SSH-Key erzeugen unter Windows
Um unter Windows einen SSH-Key zu erzeugen, benötigst Du ein zusätzliches Programm. Wir empfehlen dazu PuTTY. PuTTY ist ein SSH-Client für Windows mit dem Du auch SSH-Keys erzeugen kannst. PuTTY kannst Du hier herunterladen: www.chiark.greenend.org.uk.
Wenn Du PuTTY installierst, so wird auch das Dienstprogramm PuTTYgen installiert. PuTTYgen ist das Programm mit dem Du einen SSH-Key erzeugen kannst.
Um einen SSH-Key mit PuTTYgen zu erstellen, gehe wie folgt vor:
- Öffne PuTTYgen.
- Als Schlüssel-Typ, der generiert werden soll, wähle SSH-2 RSA.
- Klicke auf Generate.
- Bewege die Maus in den Bereich oberhalb des Fortschrittsbalken. Wenn der Fortschrittsbalken voll ist, erstellt PuTTYgen Dein Schlüsselpaar.
- Wenn Du nicht möchtest, dass Du bei jeder Verwendung Deines Schlüssels nach einem Passwort gefragt wirst, gib in das Passphrase-Feld nichts ein.
- Klicke nun auf den Button Save private key. Wichtig! Du musst den Privaten Schlüssel sichern, denn diesen benötigst Du, damit Du auf den Server zugreifen kannst.
- Schaue nun in das Feld "Public key for pasting into OpenSSH authorized_keys". Hier befindet sich der öffentliche Schlüssel (public key). Mache einen Rechts-Klick und wähle "Alles Auswählen".
- Nachdem alles ausgewählt ist, mache nochmals einen Rechts-Klick und wähle "Kopieren".
- Speichere auch Deinen öffentlichen Schlüssel, den Du kopiert hast in einer Text-Datei. Diesen Schlüssel gibst Du weiter, bzw. verwendest Du am Server.
SSH Key am Server installieren.
Gehe am Server in das Verzeichnis des Benutzers, der sich mit seinem SSH-Key anmelden können soll.
Öffne dort nun die Datei ~/.ssh/authorized_keys
mit einem Text-Editor.
Fügen am Ende der Datei nun den öffentlichen Schlüssel, den Du in die Zwischenablage kopiert hast, in der Datei authorized_keys
hinzu.
Nun kannst Du Dich per SSH und per SFTP unter Verwendung Deines Schlüssels auf Deinem Server anmelden.
SSH Key
« zurück