Wer sein System permanent überwacht, hat den Grundstein dafür gelegt Engpässe zu vermeiden und Fehler frühzeitig zu erkennen. Neben dem Platzhirsch Nagios ... (mehr)

Grafische Clients

Im Übrigen können auch einige Dateimanager wie etwa Midnight Commander über eine SSH-Verbindung auf das Dateisystem eines entfernten Hosts zugreifen (Abbildung 3). Zwar setzt die Methode via »mc« keine Kernel-Unterstützung auf dem Client voraus, ist dann aber auch nur in »mc« verfügbar. FUSE-basierte Dateisysteme sind wie jedes herkömmliche Dateisystem mit jedem Programm verwendbar.

Abbildung 3: Auch der Midnight Commander kann via SSH auf entfernte Verzeichnisse zugreifen.

Auch der Gnome-Dateimanager Nautilus unterstützt das SSH-Protokoll, wozu der Admin lediglich die gewünschte Adresse in der Form »ssh://Rechnername/Pfad« in der Adressleiste eingeben muss. Da die aktuelle Nautilus-Version 3.2.1 in Gnome 3 die Adressleiste per Default nicht mehr anzeigt, muss man sie erst mit [Strg]+[L] einschalten (Abbildung 4), womit Nautilus den SSH-Anmelde-Dialog zeigt (Abbildung 5).

Abbildung 4: Nautilus 3.2.1 erfordert ein manuelles Zuschalten der Adressleiste mit
Abbildung 5: Der Sftp-Zugriff via Nautilus gestaltet sich komfortabel.

Selbstverständlich kann man sich auch mit einem anderen Benutzernamen am SSH-Server anmelden:

ssh://Benutzer@Hostname/Pfad

Wer es noch bequemer haben will, kann in Nautilus auch den Assistenten »Datei | Mit Server verbinden« benutzen, im Listenauswahlfeld »Typ« im Bereich »Serverdetails« des Dialogs »Mit Server verbinden« den Eintrag »ssh« wählen und die Authentifizierungsdaten über die zugehörigen Felder im Dialog eintragen (Abbildung 6). Ganz nebenbei funktioniert diese Art SFTP-/SSH-Anmeldung auch in den meisten anderen Gnome-Anwendungen.

Abbildung 6: Nautilus ermöglicht Gelegenheitsnutzern neben der direkten URL-Eingabe auch die komfortable Anmeldung an einem entfernten Server via SSH mithilfe des Dialogs

Auch in KDE ist SSH-Unterstützung schon länger vorhanden, allerdings lautet die zugehörige Adresseingabe-Syntax in Dolphin oder Konqueror: »fish://Rechnername/Pfad« beziehungsweise »fish://Benutzer@Rechnername/Pfad« . Auch Dolphin zeigt in aktuellen Versionen die URL-Eingabeleiste per Default nicht mehr an, allerdings findet der Nutzer die zugehörige Funktion schnell im Menü »Ansicht | Adresse | Editierbare Adressleiste« . Dolphin präsentiert dann unmittelbar den Dialog zur Benutzer-Authentifizierung, allerdings ist hier zunächst der momentan gültige lokale Benutzername als Default eingetragen, der daher in den meisten Fällen mit dem entfernten Benutzernamen zu überschreiben ist (Abbildung 7).

Abbildung 7: Auch KDEs Dateimanager Dolphin erlaubt komfortable Sftp-Transfers.

Darüber hinaus können KDE-Nutzer in Dolphin auch unter »Orte | Netzwerk« mit »Netzwerkordner hinzufügen« einen SSH-Netzwerkordner als Bookmark hinzufügen (Abbildung 8).

Abbildung 8: Dolphin erlaubt auch die Einrichtung eines auf SSH basierenden Netzwerkordners.

Übrigens funktioniert die beschriebene Fish-Syntax zum Zugriff auf entfernte Dateien im gesamten KDE-Kontext und damit auch aus den meisten KDE-Anwendungen heraus mit »Datei | Öffnen« (Abbildung 9). Allerdings muss der Nutzer im KDE-Dateiselektor ebenfalls die per Default abgeschaltete editierbare Adress-Eingabe einschalten, wozu er direkt in der Dateiauswahl mit einem Rechtsklick neben der aktuellen Pfadanzeige das Kontextmenü des Dateiselektors aufruft und dort statt der Default-Option »Navigieren« auf »Bearbeiten« umstellt.

Abbildung 9: Unter KDE kann der Admin aus so ziemlich jeder Anwendung via Fish-Adresse eine Sftp-Sitzung öffnen und auf Dateien des entfernten Rechners zugreifen.

Kompression nutzen

SSH unterstützt übrigens auch Kompression, was besonders dann nützlich ist, wenn sich das Netz als Engpass erweist. Das Komprimieren der Kommunikation zwischen »ssh« und »sshd« erfordert zwar auf beiden Seiten etwas mehr Rechenzeit, dafür muss SSH aber nur etwa 50 Prozent der Pakete übertragen. Baut der Admin die Kompression auf Server-Seite mithilfe der Zeile »Compression yes« permanent in der Datei »/etc/ssh/sshd_config« ein, lassen sich langsame DSL- oder gar ISDN-Übertragungsstrecken etwa in Verbindung mit Port Forwarding spürbar beschleunigen.

Auf Client-Seite lässt sich eine permanente Kompression analog mit »Compression yes« in »$HOME/.ssh/config« festlegen. Zum temporären Einschalten einer komprimierten Übertragung genügt der Parameter »-C« , nicht zu verwechseln mit »-c« für die Cipher-Spezifikationen der Verschlüsselung.

Der sogenannte Master Mode erlaubt es dem Admin, durch eine physische Verbindung weitere logische SSH-Verbindungen aufzubauen, wozu er eine SSH-Verbindung als Master startet. Jetzt lassen sich alle weiteren SSH-Verbindungen zum gleichen Host mit dem gleichen User auf der Gegenseite über diese Master-Verbindung schicken, ohne eine neue physische Verbindung aufbauen zu müssen.

Dazu verbindet sich der Client mithilfe eines Unix-Socket auf den Master und nicht unmittelbar zum Server auf der Gegenseite, wozu allerdings ein entsprechender Master-Socket anzugeben ist. Das Übertragen mehrere Sitzungen über einen einzigen Master-Kanal kann ebenfalls einen signifikanten Latenz-Vorteil bringen. Zum Konfigurieren von "opportunistic sharing" ergänzt man die Datei »$HOME/.ssh/config« beispielsweise um folgende Zeilen:

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

»Host *« sorgt dafür, dass die folgende Konfiguration für Verbindungen von jedem Host gilt; alternativ ließe sich ein fixer Hostname eintragen. Mit »ControlMaster auto« verwendet SSH wenn möglich eine existierende Verbindung für den Master Mode. Andernfalls öffnet SSH eine neue Verbindung. Der Eintrag

ControlPath ~/.ssh/master-%l-%r@%h:%p

gibt an, wo SSH das Socket-File anlegen soll, das die Master-Verbindung repräsentiert. Dabei wird »%r« durch den Login-Namen ersetzt, »%h« durch den Hostnamen und »%p« durch die Port Nummer. Das Initiieren der Master-Verbindung erfolgt dann mit »ssh -M -S $HOME/.ssh/Socket User@Host« . Der Aufbau aller weiteren Verbindungen zum gleichen Host mit gleichem User erfolgt dann mit »ssh -S $HOME/.ssh/Socket User@Host«

Ähnliche Artikel

comments powered by Disqus

Artikel der Woche

Eigene Registry für Docker-Images

Wer selber Docker-Images herstellt, braucht auch eine eigene Registry. Diese gibt es ebenfalls als Docker-Image, aber nur mit eingeschränkter Funktionalität. Mit einem Auth-Server wird daraus ein brauchbares Repository für Images. (mehr)
Einmal pro Woche aktuelle News, kostenlose Artikel und nützliche ADMIN-Tipps.
Ich habe die Datenschutzerklärung gelesen und bin einverstanden.

Konfigurationsmanagement

Ich konfiguriere meine Server

  • von Hand
  • mit eigenen Skripts
  • mit Puppet
  • mit Ansible
  • mit Saltstack
  • mit Chef
  • mit CFengine
  • mit dem Nix-System
  • mit Containern
  • mit anderer Konfigurationsmanagement-Software

Google+

Ausgabe /2020