SSH:Clients
Aus KissDoc
Inhaltsverzeichnis |
Allgemein
Es gibt zwei ssh Zugriffsvarianten: eine mit Usernamen und Paßwort und einen paßwortlosen Zugang mit einem Key-File und dem Usernamen. Beide Varianten zusammen, also abhängig des anzumeldenden Users, ist nicht so einfach. Sicherer ist unstrittig der paßwortlose Zugang, da dabei keinerlei Paßwörter über das Netz übertragen werden und der Key des Clients (Users) dem Server bekannt sein muß. Diesen Weg verfolgen wir auch. Weiterhin hat dieser Weg den Vorteil, daß mittels Script Befehle auf dem entfernten Server ausgeführt werden können (non-interacive). Dies ist z.Bsp. mit einer Zeile wie
ssh user@host "ls -la --color" möglich.
Linux
Zunächst wird ein Schlüssel benötigt. Mit ssh-keygen -t rsa|dsa werden die beiden Schlüssel
in ~/.ssh/id_rsa (private) und ~/.ssh/id_rsa.pub (public) hinterlegt. Auch hier sollte
die optional Phrase (beliebiger Länge) angegeben werden, welche den Schlüssel nochmals sichert und wie
ein Paßwort wirkt. Der öffentliche Schlüssel muß wiederum auf den Server in die Datei
authorized_keys eingetragen werden. Damit ist auch schon ein paßwortloser Login mit
ssh user@host möglich. Bei der ersten Verbindung wird der Fingerprint des Servers in der Datei
~/.ssh/known_hosts hinterlegt. Mit ssh -o StrictHostKeyChecking=no kann dies
auch abgeschalten werden. Das ist aber nicht empfehlenswert, selbst nicht für Scripte, denn jedes Script durchläuft
einige Test's und somit ist der Key bereits bekannt. Sollte sich der Key ändern, steigt das Script aus ... und das
ist auch gut so ;).
putty
Unter X gibts es auch ein Putty, welches der Windowsversion gleicht. Allerdings benötigt man für ein Keyfile ein Putty-Spezifisches Format, welches nicht dem vom Window-Putty gleicht. Um sich das File aus einem existierendem Keyfile (id_rsa)zu erstellen existiert das Binray puttygen:
puttygen id_rsa -o id_rsa.lnxputty
Windows
Auch unter Win benötigt man zunächst einen Key. Dieser kann mit dem Putty Key Generator
puttygen.exe erstellt werden:
- SSH-2 RSA auswählen
- Schaltfläche Generate
- Die Mouse über den Bildschirm bewegen
- Einen Key comment eingeben
- Eine passphrase eigeben (wirkt später wie ein Paßwort)
- Save public key und Save private key am besten gleich ins Home ~/.ssh
- Den öffentlichen OpenSSH Key im oberen Fenster rauskopieren und in der Datei
authorized_keys - auf dem Server im Userhome (
~/.ssh/authorized_keys) des entsprechenden Users eintragen
Für den eigentlichen Zugriff wird dann Putty (putty.exe) benötigt. Dazu sind noch einige Einstellungen nötig:
- In
Sessiondas Protokollsshauswählen und den Host eintragen - In
Connection/dataden Usernamen inAuto-login usernameeintragen - In
Connection/SSHdie SSH Version2 onlyauswählen - In
Connection/SSH/Authdie private Key-Datei (~/.ssh/user.ppk) eintragen - In
Sessioneinen Namen fürSaved Sessionseintragen und dann erst mal speichern
Der von Putty erstellte öffentliche OpenSSH Key sieht so aus:
ssh-rsa AAAAB3NzaC1yc2EAAAABJQAAAIEApXaiu3IuuztKt3Btu1SxnHfR3/u1P9aWnz519CsLcbrKoF3xwPibhw7FTQFWd0WTJB85NDU3sLmHKhMCWAGUbRu3TPIo3FBEOmQHR5BJUmA6/arHEM3sde30VJNTYU0DsRUqN3Ae7MDvnZ4l2I5lZ0HKOoN2qErreYRbU6NeXJ8= rsa-key-20060628
Und das alles in einer Zeile ... und nicht so (ich mußte mir das aufschreiben, weil ich so selten Win laufen habe und immer irgendwelche Key kommen .. ):
---- BEGIN SSH2 PUBLIC KEY ---- Comment: "rsa-key-20060628" AAAAB3NzaC1yc2EAAAABJQAAAIEApXaiu3IuuztKt3Btu1SxnHfR3/u1P9aWnz51 9CsLcbrKoF3xwPibhw7FTQFWd0WTJB85NDU3sLmHKhMCWAGUbRu3TPIo3FBEOmQH R5BJUmA6/arHEM3sde30VJNTYU0DsRUqN3Ae7MDvnZ4l2I5lZ0HKOoN2qErreYRb U6NeXJ8= ---- END SSH2 PUBLIC KEY ----
Beim ersten Login stellt der Client fest, daß der öffentliche Schlüssel des Servers noch nicht bekannt ist bzw. noch nicht gespeichert wurde. Dieser Schlüssel wird dann in der Registry hinterlegt. Sollte diese Meldung wieder erscheinen, ohne das sich der Schlüssel auf dem Server geändert hat, ist etwas schwer faul ... Serverfälschung z.Bsp.
Eine genaue Beschreibung der Software ist im User Manual zu finden. Mit einem Link unter Win (*.lnk), kann eine eingestellte Session auch per putty -load "name" leicht aufgerufen werden.
Achtung: die vom Putty Key Gen erzeugten Schlüssel sind keine OpenSSH Schlüssel. Diese können aber mit puttygen -L id_rsa|dsa.ppk > id_rsa|dsa.pub konvertiert werden. Auch der angezeigte Schlüssel oben in dem grauen Feld ist ein OpenSSH Key.

