Mit SSH Multiplexing schneller einloggen

Jede Woche erscheint in unserem Newsletter ein neuer ADMIN-Tipp. Eine Sammlung aller Tipps finden Sie im Archiv der ADMIN-Tipps.

Mit dem Multiplexing-Feature lassen sich SSH-Verbindungen deutlich beschleunigen.

Ungeduldige Naturen können von der Secure Shell durchaus einmal genervt sein, denn das Login auf einem entfernten Rechner kann, je nach CPU und Netzwerk, leicht ein paar Sekunden dauern. Abhilfe schafft das Multiplexing-Feature von SSH, das es ermöglicht, eine SSH-Verbindung mehrfach zu verwenden. Damit fällt der Overhead durch TCP-Verbindungsaufnahme und Key-Austausch weg und das zweite Einloggen geht deutlich schneller vonstatten.

Um Multiplexing pauschal für alle Verbindungen zu aktivieren, tragen Sie die folgenden Zeilen in der Konfigurationsdatei "$HOME/.ssh/config" ein:

Host *
    ControlMaster auto
    ControlPath ~/.ssh/s/m-%r@%h:%p

Die für das Multiplexing verwendeten Sockets werden somit im Verzeichnis "~/.ssh/s/" erzeugt, das Sie erst mit passenden Rechten vergeben müssen:

mkdir ~/.ssh/s
chmod go-rwx ~/.ssh/s/

Wenn Sie sich nun auf einem anderen Rechner einloggen, zeigt ein Blick in das Verzeichnis einen neuen Socket an:

$ ls -l .ssh/s
total 0
srw------- 1 oliver oliver 0 Dez  5 14:07 m-oliver@supersecret.org:22

Weitere SSH-Sessions nutzen diesen Socket, solange die erste Verbindung geöffnet ist. Die folgenden beiden Aufrufe demonstrieren den Gewinn. Im ersten Beispiel wird eine neue Verbindung gestartet, das zweite macht per Multiplexing von dem offenen Kanal Gebrauch:

$ time ssh one.supersecret.org date
Mon Dec  5 14:08:11 CET 2016

real    0m6.017s
user    0m0.028s
sys    0m0.000s
$ time ssh one.supersecret.org date
Mon Dec  5 14:10:21 CET 2016

real    0m0.104s
user    0m0.004s
sys    0m0.008s

Eine weitere für das Multiplexing interessante Option ist "ControlPersist", das die maximale Dauer der Master-Verbindung angibt.

Auch Ansible, das sich für das zentrale Konfigurationsmanagement von Servern nutzen lässt und dazu auf SSH zurückgreift, lässt sich mit dieser Methode beschleunigen. Dazu dient diese Zeile in der Ansible-Konfiguration:

ssh_args = -o ControlMaster=auto -o ControlPersist=60s
06.04.2016
SSH

Ähnliche Artikel

  • ADMIN-Tipp: Fenster-Multiplexer

    Wer am Nachmittag auf Arbeit noch einen lang laufenden Job auf seinem  mitgebrachten Laptop startet, einen Benchmark wie iozone beispielsweise, der schießt sich schnell ins Knie: Der Prozess läuft weit in den Feierabend hinein, man kann aber den Rechner nicht abschalten und einpacken, ohne den Benchmark im Beispiel abzubrechen und viele Stunden bereits absolvierter Laufzeit zu verlieren. Doch es gibt einen Ausweg.
     

  • Die 10 besten SSH-Tipps

    SSH-Logins gehören für die meisten Admins zum Alltag. Das kontinuierlich weiterentwickelte Programm bietet eine Menge Möglichkeiten, die nicht jeder kennt.

  • Microsoft veröffentlicht HTTP-2.0-Server

    Für Interoperabilitätstests bietet Microsoft den Quellcode eines Webservers an, der wesentliche Teile des kommenden HTTP-2.0-Standards implementiert.

  • News
  • Exakte Systemkontrolle
comments powered by Disqus

Artikel der Woche

Support-Ende von SMBv1

Mit dem aktuellen Update für Windows 10 und Windows Server 2016 steht eine Änderung ins Haus, die gerade für Benutzer älterer Linux-Distributionen große Auswirkungen hat. Nachdem Microsoft es über viele Jahre schon angekündigt hat, entfernt der Konzern mit dem aktuellen Update-Release den Support für das SMB-Protokoll 1. (mehr)
Einmal pro Woche aktuelle News, kostenlose Artikel und nützliche ADMIN-Tipps.
Ich habe die Datenschutzerklärung gelesen und bin einverstanden.

Linux-Backup

Welche Backup-Lösung setzen Sie für Linux im professionellen Umfeld ein?

  • keine
  • eigene Scripts
  • rsnapshot
  • rdiff-backup
  • Bacula
  • Bareos
  • Borg
  • Duplicity
  • Amanda
  • Burp
  • Clonezilla
  • Acronis
  • Arkeia
  • SEP sesam
  • Veeam
  • Redo Backup
  • Relax-and-Recover
  • andere kommerzielle Software
  • andere Open-Source-Software

Google+

Ausgabe /2017

Microsite