SSH Verbindung vereinfachen mit ~/.ssh/config

Wer etwas häufiger mit SSH (Secure Shell) auf unterschiedlichen Systemen arbeitet wird schnell feststellen, dass es nervig wird jedes mal die komplette Kommandozeile in die Shell einzugeben. Meist sehen einfache Kommandozeilen wie folgt aus:

ssh foo@bar.server.com

Nicht so schwierig, allerdings wird es nervig, wenn man den entsprechenden Server nur per IP Adresse ansprechen kann und viele weiter Optionen verwenden möchte um z.B. die Art der Anmeldung zu definieren oder etwas schwierigere Aufgaben wie SSH Tunneling zu verwenden.

SSH bietet hierfür jedoch eine sehr einfache Lösung um den Aufwand etwas zu verringern, nämlich die Dateien ~/.ssh/config sowie das globale Gegenstück, welches bei Ubuntu unter /etc/ssh/ssh_config liegt. In diesen können Verbindungskonfigurationen abgelegt werden. So können z.B. Synonyme für bestimme Konfigurationen festgelegt werden die dann anstelle der gesamten Parameterliste verwendet werden können. Eine mögliche Konfiguration könnte wie folgt aussehen:

Host Bar
    Hostname bar.server.com
    User foo
    RSAAuthentication yes
    PasswordAuthentication no

Dieser Konfigurationsblock erstellt das Synonym Bar. Die Optionen beschreiben den Verbindungsaufbau zum Server bar.server.com als Benutzer foo und es soll eine Public Key Authentisierung verwendet werden. Aufgerufen werden kann das ganze dann einfach mit:

ssh Bar

Das ganze funktioniert auch mit Autocompletion, was eine Vervollständigung mit der Tabulatortaste ermöglicht. Neben der einfachen Anmeldung verwende ich diese Methode um meinen Server als SOCKS-Proxy zu verwenden. Dazu kann man die folgende Konfiguration verwenden:

Host Bar-Proxy
    HostName bar.server.com
    User foo
    RSAAuthentication yes
    PasswordAuthentication no
    DynamicForward 4321

Wobei nun localhost:4321 von Anwendungen wie Browsern als Proxy verwendet werden kann, was den gesamten Traffic über den Server leitet. Weitere Optionen die verwendet werden können findet man in der Manpage ssh_config.

Leave a Reply