SSH:Clients

Aus KissDoc

Wechseln zu: Navigation, Suche

Inhaltsverzeichnis

Top

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.

Top

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 ;).

Top

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
Top

Windows

Auch unter Win benötigt man zunächst einen Key. Dieser kann mit dem Putty Key Generator puttygen.exe erstellt werden:

  1. SSH-2 RSA auswählen
  2. Schaltfläche Generate
  3. Die Mouse über den Bildschirm bewegen
  4. Einen Key comment eingeben
  5. Eine passphrase eigeben (wirkt später wie ein Paßwort)
  6. Save public key und Save private key am besten gleich ins Home ~/.ssh
  7. Den öffentlichen OpenSSH Key im oberen Fenster rauskopieren und in der Datei authorized_keys
  8. 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:

  1. In Session das Protokoll ssh auswählen und den Host eintragen
  2. In Connection/data den Usernamen in Auto-login username eintragen
  3. In Connection/SSH die SSH Version 2 only auswählen
  4. In Connection/SSH/Auth die private Key-Datei (~/.ssh/user.ppk) eintragen
  5. In Session einen Namen für Saved Sessions eintragen 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.

Top
Persönliche Werkzeuge