Impressum | Kontakt
 Startseite | Kurse | Projekte | Haskell | Linux Suche | Blog

Login auf einem Server mit key ohne Passwort

  Quelle: http://linuxwiki.de/OpenSSH

Für Vielfachnutzer und Schreibfaule gibt es die Möglichkeit, sich auch ohne
Eingabe eines Schlüssels bei ssh mit einem Server zu verbinden. Im Folgenden
wird die Verbindung des Benutzers motti auf dem Server sserver.dyndns.org
beschrieben. Der lokale Benutzername (auf dem Heimrechner) ist bob.

(1) Zuerst muss ein Schlüsselpaar (hier 2048 Bit) erzeugt werden:

bob@localhost:~ > ssh-keygen -b 2048 -t rsa

(2) Jetzt muss der öffentliche Teil dieses Schlüssels auf den entfernten
Server übertragen werden:

bob@localhost:~ > ssh-copy-id -i .ssh/id_rsa.pub motti@sserver.dyndns.org

Wenn der Befehl ssh-copy-id nicht zur Verfügung steht, muss auf dem Server
erst das Verzeichnis .ssh im Home-Ordner erstellt werden (falls nicht
bereits vorhanden). Anschließend wird der öffentliche Schlüssel an die
Datei authorized_keys in diesem Verzeichnis angehängt. Diese
Datei erhält folgende Rechte:

-rw-r--r-- 1 motti staff 403 Nov 6 23:07 authorized_keys

(3) Der öffentliche Schlüssel .ssh/id_rsa.pub muss auch in die lokale Datei
der bekannten Host-Rechnern aufgenommen werden.

bob@localhost:~ > cat .ssh/id_rsa.pub >> .ssh/known_hosts

(4) Bei uns sind die benutzernamen am Heimrechner und am Server unterschiedlich.
Deshalb muss noch die lokale ssh-Konfiguration ergänzt werden.

bob@localhost:~ > cat ~/.ssh/config
# Eintrag für Verbindung von motti zu sserver.dyndns.org
Host pns
Hostname sserver.dyndns.org
User motti
Port 22
Protocol 2
Compression yes
# ForwardX11 yes # nur wenn man jedes mal auf dem Remotesystem
# X11-Programme starten will.



Vorsicht:

Das beschriebene vereinfachte Einloggen kann ein Sicherheitsrisiko darstellen.
Hat jemand Zugriff auf den privaten Schlüssel, so kann er sich problemlos
einloggen. Besser ist es, wenn ein ssh-agent im Hintergrund mitwerkelt.

Wenns immer noch nicht klappt: eventuell ist in der ssh-Konfigurationsdatei
des Servers der "PubkeyAuthentification" nicht aktiviert.