/dev/blog/ID10T

Putty und Server via RSA-Key verbinden

• Linux • Comments
Advertisement

Vor Kurzem habe ich berichtet, wie man einen neuen Server oder vServer absichert. Unter anderem habe ich dort empfohlen, einen neuen Nutzer zu erstellen, über den man sich via SSH einwählen kann, um anschließend den Root Login via SSH zu verbieten.
Es geht allerdings noch eine Stufe sicherer, mithilfe von Schlüsselauthentifizierung. Das funktioniert im Endeffekt so, dass ihr einen Schlüssel habt und der Server ein "Schloss", in den dieser Schlüssel passt. Passt er nicht, kommt man nicbtmal bis zum Loginscreen. Das beugt Bruteforceattacken natürlich noch effizienter vor und ist dadurch natürlich auch noch ein Stückchen sicherer. Doch wie macht man dies?

Der meiner Meiner nach einfachste Weg fängt bei Putty an. Bei dem Programm PUTTYGEN um genau zu sein. Dieses bekommt ihr wie alle anderen Putty-Werkzeuge auf der Putty Website.

  1. Klickt nach dem Start von Puttygen auf Generate und bewegt eure Maus den Anweisungen entsprechend möglichst zufällig auf der angezeigten Fläche.
  2. Nachdem der Schlüssel erzeugt wurde, wollen wir ihn noch mit einem Passwort sichern. Dazu gebt ihr euer sicheres Passwort in die beiden Passphrase-Felder ein.
  3. Anschließend sichern wir sowohl Private- als auch Public-Key irgenwohin, wo wir sie wiederfinden.
  4. Jetzt wird es interessant. Verbindet euch auf  eure Linuxkiste und loggt euch als der Benutzer ein, mit dem ihr euch auch mittelds Schlüsselauthentifizierung verbinden wollt. Bleiben wir beim Beispiel meiner letzten Anleitung und nennen ihn sshuser.
  5. Nun brauchen wir einen Ordner .ssh im Benutzerverzeichnis und in diesem eine Datei authorized_keys, in der dann die akzeptierten Schlüssel hinterlegt werden. Ordner und Datei bekommen anschließend noch korrekte Berechtigungen gesetzt.
    mkdir ~/.ssh
    touch ~/.ssh/authorized_keys
    chmod 700 ~/.ssh
    chmod 600 ~/.ssh/authorized_keys
  6. Kopiert euch anschließend den Schlüssel, der in der oberen Hälfte des PUTTYGEN-Fensters unterhalb von Public key for pasting into OpenSSH authorized_keys file steht in die Zwischenablage und fügt ihn in den nächsten Befehl ein. Hierbei will ich präventiv auf  meine Erläuterung zu Copy und Paste bei Putty verweisen.
    echo [HIER DEN KOPIERTEN KEY EINFÜGEN] > ~/.ssh/authorized_keys
  7. Jetzt müssen wir  noch Putty einrichten. Unter den Menüpunkten Connection -> SSH -> Auth finden wir den Punkt Private Key file for authentication. Dort geben wir den Pfad zu unserem in Schritt 3 gespeicherten Private (!) Key an. Danach stellen wir aus Bequemlichkeitsgründen noch unter Connection -> Data als auto-login username den Namen unseres SSH-Benutzers ein.
  8. Dann testen wir die Verbindung mit den oben vorgenommenen Änderungen. Nur wenn die Anmeldung problemlos und ohne Fehlermeldung (!) klappt, solltet ihr fortfahren. Sonst besteht die Gefahr, dass ihr euch selber aussperrt.
  9. Hat alles geklappt, editieren wir die sshd_config. Dafür müssen wir dann aber root werden.
    su -
    vi /etc/ssh/sshd_config

    Hier ändern wir einige Einstellung oder fügen diese hinzu, falls es si noch nicht gibt. Wie in jedem Beitrag mit vi weise ich auch hier auf  DIESE kurze Anleitung hin.

    PasswordAuthentication noPasswordAuthentication no #Passwortauthentifizierung abschalten
    PubkeyAuthentication yes # Dafuer Publikkey Authenfizierung aktivieren
  10. Ein Anschließender Neustart des SSH-Dienstes versteht sich quasi von selbst.
    /etc/init.d/ssh restart

Wenn alles geklappt hat, sieht die Authentifizierung bei einem neuen Fenster etwa so aus. Viel Spaß damit!

Advertisement
More posts
comments powered by isso

Advertisement