Hier mal eine kleines HowTo für die SSH Config Datei:

Wo ist die Datei?

Sie gehört in den ".ssh" Ordner unter den Benutzer den ihr verwendet.

  • Linux: /home/user/.ssh
  • Windows(cygwin): c:\cygwin64\home\user\.ssh

Die Datei heist "config" ohne eine Endung.

Aufbau der Datei

Die Datei ist für euch quasi eine Erleichterung um SSH verbindungen aufzubauen. Ähnlich wie Putty könnt ihr dort alles einstellen was ihr für einen Verbindung zu der Remote Maschine benötigt. Der Grundaufbau sieht folgendermaßen aus:

Host Name
     Befehle

Nutzung der Datei

Wenn ihr einen Host in der Datei konfiguriert habt braucht ihr nur noch in der Konsole ssh Name einzugeben. Die Einstellungen werden dann aus der Datei genommen.

Nutzbahre Befehle

Hier mal ein Beispiel:

Host server1
     HostName 200.200.200.200
     User maxmuster
     LocalForward 10000 127.0.0.1:10000
     IdentityFile C:\Users\maxmuster\Documents\ssh\server1.key
  • HostName : Die IP Adresse des Servers oder der DNS Name
  • User : Der Benutzer als der ihr euch Anmelden wollt.
  • LocalForward : Der Port den ihr zu eurem Rechner durchleiten wollt. Port-auf-server 127.0.0.1:Port-auflokalem-Rechner
  • IdentityFile: Der ssh Schlüssel der für die Anmeldung gebraucht wird.

Weitere nützliche Befehle

Hier noch ein paar Befehle die ich auch immer gerne gebrauche.

 Port 1234

Wenn der SSH Server nicht auf dem Standartport läuft.

 UserKnownHostsFile /home/user/.ssh/known_host2

Damit lässt sich für einen Bestimmten Server ein anderes Known_Host File angeben. Nützlich wenn man einen Server mit Remote preeboot encryption hat den man erst entsperren muss bevor er hochfährt.

Wildcard Einstellung

Ihr könnt auch einen wildcard Host definieren die Einstellungen die dann dort gemacht werden gelten dann für alle Hosts.

 Host *
     Befehle

Sicherheit

Zur sicherheit solltet ihr folgendes immer in einer Hosteinstellung haben:

Update 11.10.2017: Da einige MAC´s aus der aktuellen ssl version entführ worden sind müssen die folgenden zeilen angepasst werden.

KexAlgorithms curve25519-sha256@libssh.org,diffie-hellman-group-exchange-sha256
Ciphers chacha20-poly1305@openssh.com,aes256-ctr,aes192-ctr,aes128-ctr
MACs hmac-sha2-512-etm@openssh.com,hmac-sha2-256-etm@openssh.com,hmac-ripemd160-etm@openssh.com,umac-128-etm@openssh.com,hmac-sha2-512,hmac-sha2-256,hmac-ripemd160,umac-128@openssh.com

KexAlgorithms curve25519-sha256@libssh.org,diffie-hellman-group-exchange-sha256

Ciphers chacha20-poly1305@openssh.com,aes256-ctr,aes192-ctr

MACs hmac-sha2-512-etm@openssh.com,hmac-sha2-256-etm@openssh.com

Damit stellt ihr sicher das ihr nur die als sicher gelten Hashes und Cyphers verwendet. Entnommen habe ich diese Einstellungen aus diesem Blogeintrag.

Diese drei Einträge sollten auch in eurer sshd_config vom Server stehen um die Sicherheit zu gewährleisten.

Achtung!
Bei der Verwendung von Dropbear anstarrt des OpenSSH Servers können diese Sicherheitseinstellungen nicht verwendet werden, da Dropbear die vorgeschlagenen Einstellungen nicht beherrscht. Ihr solltet also den OenSSH Server verwenden wenn möglich.

Und nun viel Spaß am Gerät ;-)