Tutorial: Sicherer SSH Zugang

Wer auf seinen Server kommen möchte, ohne Benutzer und Passwort eingeben zu müssen, kann sogenannte ssh-rsa keys erstellen. Diese bestehen aus 2 Teilen:

Private-Key: Dieser Key wird benutzt um sich auf dem Server einzuloggen. Am besten sollte man diesen Key so behehandeln wie sein root Passwort. Auf keinen Fall weitergeben oder öffentlich aufbewahren.

Public-Key: Dieser Key wird auf dem Server gespeichert. Wenn ein Private Key beim login eingegeben wird, und es existiert ein passender Public-Key auf dem Server, so wird der Login akzeptiert.

Es besteht weiterhin die Möglichkeit für jeden User auf dem Server einen Public-Key zu hinterlassen. Wer den passenden Private-Key hat, kann sich auf den Server ohne Passwort einloggen. Benötigt wird folgende Software

Putty

Putty-Gen

Sofern nicht vorhanden müssen die beiden Programme runter geladen werden.

Putty-Gen starten und bei Parameters “SSH-2 RSA” auswählen. Anschließend auf “Generate” klicken und die Maus über das Feld bewegen, damit die beiden Keys generiert werden können. Kopiert euch den gesammten Key, der dort im Textfeld steht, in die Zwischenablage. Klickt auf den Button “Save private Key”. Die Meldung mit “yes” bestätigen. Gewünschten Dateinamen für den Private-Key angeben und merken, wo ihr ihn gespeichert habt.

Loggt euch als root ein. Wechselt in das Homeverzeichnis des Root Benutzers:

cd /root

Sollte in dem Homeverzeichnis kein Unterverzeichnis “.ssh” exisiteren, so muss dieses erzeugt werden:

mkdir .ssh

Wechselt in das Verzeichnis:

cd .shh

Öffnet vim wie folgt:

vim authorized_keys

Vim öffnet die Datei, falls sie schon vorhanden ist, oder erstellt eine neue, wenn es diese noch nicht gibt. Nun muss man den Public-Key dort einfügen. Dazu muss man mit “i” in den Insert Mode kommen. Mit der rechten Maustaste fügt man den Key dann aus der Zwischenablage ein. Mit ESC beendet man den Insert Mode. Um die Änderugen zu speichern tippt ihr “:x” ein. Der Server ist nun fertig konfiguriert.

Putty öffnen und ganz normal den Hostnamen eingeben oder aus den gespeicherten Verbindungen auswählen und “Load” klicken. Links im Menü den Menüeintrag “SSH->Auth” auswählen. Dort in das passende Feld eure Datei angeben, in der ihr euren Private-Key gesichert habt. Gegebenfalls das Profil abspeichern und dann auf “Open” klicken.

Wenn ihr euch nun als root einloggen wollt wird der Private-Key genommen. Sollte dieser fehlerhaft sein hat man immer noch die Möglichkeit sich per Usernamen und Passwort einzuloggen.

  • Jürgen

    auf ner linux kiste is das glaub sogar noch einfacher… beim installieren von openssh-server werden keys automatisch generiert und installiert. in die ~/.ssh/config kommt dann auf dem rechner von dem aus man sich verbinden will so ein eintrag:

    Host MeinServer
    HostName 192.168.178.100
    Port 22
    User MeinName

    anschliessend auf der konsole “ssh-copy-id MeinServer” eingeben, passwort einmal eingeben und schon kann man sich ohne passwort und va sicher, wg den keys dort anmelden

    btw – nice tutorial ;)
    und grüße aus rosstal

    jürgen