Was sind SSH-Keys?

Alternativ zur Anmeldung via Passwort erlaubt SSH die Authentifizierung mithilfe sogenannter SSH-Keys (genauer: SSH-Key-Pairs).

Der Vorteil bei der Verwendung von SSH-Keys ist, dass hierdurch eine Anmeldung am Server ohne Benutzerinteraktion wie z.B. Passworteingabe möglich ist und somit skriptgesteuerte Aktionen durchgeführt werden können.

Zusätzlich werden die Schlüsseldaten zufällig generiert und sind dadurch für Angreifer wesentlich schwerer zu erraten als ein einfaches Passwort. Hierfür wird zum einen ein öffentlicher Schlüssel zur Hinterlegung auf Ihrem vServer erzeugt. Zusätzlich wird ein privater Schlüssel sicher auf Ihrem eigenen PC verwahrt.

Zur Verwendung von SSH-Keys benötigen Sie:

  • eine SSH-Client Software

Unter Linux, macOS und Windows mit Babun ist der SSH-Client direkt im System installiert und kann vom Terminal aus verwendet werden.

Zum Erzeugen eines neuen SSH-Key-Pairs geben Sie folgenden Befehl in Ihr Terminal ein und bestätigen mit “Enter”:

openssh-keygen -t rsa

Anschließend werden zusätzliche Informationen abgefragt, die Sie eintippen müssen. In Klammern sehen Sie den jeweils vorgeschlagenen Wert, den Sie durch “Enter” übernehmen können. So wird z.B. vorgeschlagen, die generierten Schlüsseldaten in Ihrem Benutzerverzeichnis unter $HOME/.ssh/ abzuspeichern. Von dort aus werden später die Schlüsseldaten auch wieder automatisch geladen.

Wichtig: Wenn Sie möchten, können Sie an dieser Stelle ein Passwort für den Zugriff auf Ihren privaten Schlüssel festlegen. Dies wird empfohlen, wenn kein Zugriff auf Ihr SSH von anderen Personen erfolgen soll.

Unter Windows mit PuTTY müssen Sie das zu PuTTY mitgelieferte Programm “puttygen” verwenden, um Ihre Schlüssel zu erzeugen. Eine Anleitung finden Sie z.B. hier.

Nachdem Sie Ihr SSH-Key-Pair generiert haben, können Sie den öffentlichen Schlüssel auf Ihrem vServer hinterlegen. Dies geht z.B. bei der Neuinstallation des Systems direkt über unsere Oberfläche oder nachdem Sie sich zunächst via SSH mit Passwort am Server angemeldet haben.

Bei letzterer Variante verfahren Sie nach der Anmeldung am Server wie folgt:

  • Stellen Sie sicher, dass das Verzeichnis “$HOME/.ssh” existiert mkdir $HOME/.ssh
  • Erstellen Sie die Datei “$HOME/.ssh/authorized_keys” und fügen Sie dort per strg+c/strg+v Ihren öffentlichen Schlüssel (beginnend mit ssh-rsa) ein. Alternativ können Sie unter Linux und macOS auch mit dem Tool “ssh-copy-id” arbeiten. nano $HOME/.ssh/authorized_keys
  • Speichern Sie die Änderungen in der Datei (strg+o) und schließen Sie diese (strg+x)

Bei Ihrer nächsten Anmeldung wird nun Ihr SSH-Key verwendet.