Parallele SSH-Verbindungen unter Linux mit Pssh
Secure Shell (SSH) ist ein unverzichtbares Werkzeug für Linux-Nutzer, die regelmäßig mit Linux-Servern, Computern oder Netzwerkgeräten aus der Ferne interagieren. Es zeichnet sich durch Geschwindigkeit und Sicherheit aus und ermöglicht es Anwendern, vielfältige Aufgaben zu erledigen, von der Befehlsübermittlung an entfernte Rechner und Server bis hin zum Ausführen von Programmen über das Internet.
Obwohl SSH äußerst nützlich ist, erlaubt es standardmäßig nur die Interaktion mit einem einzigen Rechner zur gleichen Zeit. Diese Beschränkung stört in der Regel Gelegenheitsnutzer von SSH nicht, die es nur sporadisch für Remote-Verbindungen verwenden. Wenn Sie jedoch das SSH-Protokoll täglich nutzen, um sich mit einer Vielzahl von Linux-Rechnern zu verbinden, kann dies die Produktivität erheblich beeinträchtigen.
Die Linux-Community hat sich im Laufe der Zeit mit diesen Einschränkungen der Secure Shell auseinandergesetzt und verschiedene Lösungsansätze entwickelt. Eine solche Lösung ist Parallel SSH, auch bekannt als Pssh. Mit diesem Programm können Anwender gleichzeitig mit mehreren entfernten Computern über Secure Shell interagieren.
Einrichten von SSH
Das parallele SSH-Tool greift auf OpenSSH unter Linux zurück. Daher ist es wichtig, dass Sie es auf Ihrem System eingerichtet haben, bevor Sie mit dieser Anleitung fortfahren. Die Einrichtung eines SSH-Servers ist glücklicherweise unkompliziert und schnell erledigt.
Konsultieren Sie den Wiki-Eintrag Ihrer jeweiligen Linux-Distribution, um detaillierte Anweisungen zur Einrichtung von SSH zu erhalten. Sollten Sie Schwierigkeiten haben, empfehlen wir unsere ausführliche Anleitung zum Einrichten von SSH unter Linux, die alle wichtigen Aspekte abdeckt.
Installation von Pssh unter Linux
Bevor wir uns der Verwendung des Pssh-Tools widmen, ist es wichtig, die Installation zu betrachten. Um das Programm nutzen zu können, sind verschiedene Befehle erforderlich. Öffnen Sie daher ein Terminalfenster und folgen Sie den Anweisungen, die zu Ihrem Betriebssystem passen.
Ubuntu
sudo apt install pssh
Debian
sudo apt-get install pssh
Arch-Linux
Pssh ist in den Standard-Paketquellen von Arch Linux nicht enthalten. Jedoch ist die Installation über das Pssh AUR-Paket sehr einfach. Führen Sie die folgenden Schritte aus, um Pssh auf Ihrem Arch-PC zu installieren:
sudo pacman -S base-devel git git clone https://aur.archlinux.org/python-pssh.git cd python-pssh makepkg -sri
Fedora
sudo dnf install pssh -y
OpenSUSE
sudo zypper install pssh
Python-PIP
Nicht jedes Linux-Betriebssystem bietet Pssh in seinen Softwarequellen an. Wenn Sie eine Distribution verwenden, die Pssh nicht beinhaltet, müssen Sie eine alternative Installationsmethode wählen.
Derzeit ist der einfachste Weg, Pssh auf weniger verbreiteten Linux-Systemen zu installieren, die Verwendung des Python-Paketinstallationsprogramms (pip).
Hinweis: Stellen Sie sicher, dass python-pip oder pip auf Ihrem System eingerichtet ist, bevor Sie Pssh damit installieren.
sudo python-pip install pssh
oder
sudo pip install pssh
Sollte Pip bei Ihnen nicht funktionieren, können Sie alternativ den Pssh-Quellcode herunterladen.
Einrichten von Pssh
Um das parallele SSH-Tool nutzen zu können, müssen Sie eine Host-Datei erstellen, die alle Remote-Computeradressen enthält, mit denen Sie arbeiten möchten. Erstellen Sie eine neue Pssh-Hostdatei im Terminal mit dem Befehl:
touch ~/.pssh_hosts_files
Öffnen Sie die Datei mit einem Texteditor, wie z.B. Nano, und tragen Sie die Adressen aller entfernten Linux-Rechner ein, die SSH ausführen und mit denen Sie per Pssh interagieren möchten. Nutzen Sie für optimale Ergebnisse die lokale oder Internet-IP-Adresse anstelle des Hostnamens.
Denken Sie daran, dass Sie beim Erstellen der Host-Datei auch den Benutzernamen in folgender Form angeben müssen: [email protected]
nano ~/.pssh_hosts_files
Speichern Sie die Änderungen in der Hostdatei mit Strg + O und beenden Sie Nano mit Strg + X.
Befehle mit Pssh senden
Pssh ist ein Wrapper für SSH, der es Ihnen erlaubt, gleichzeitig mit mehreren Rechnern zu interagieren. Die Syntax ist dabei nicht kompliziert. Wenn Sie bereits mit dem Linux-Terminal vertraut sind, sollte die Verwendung von Pssh intuitiv sein.
Um einen beliebigen Befehl über Pssh an Ihre Liste von Remote-Computern zu senden, gehen Sie wie folgt vor:
pssh -i -h ~/.pssh_hosts_files terminal command
Sind Sie sich noch nicht sicher, wie Pssh funktioniert? Probieren Sie einige der folgenden Beispielbefehle aus:
Laufende Prozesse
Möchten Sie die laufenden Prozesse auf allen Ihren Linux-Rechnern gleichzeitig überprüfen? Führen Sie den Befehl „top“ mit Pssh aus:
pssh -i -h ~/.pssh_hosts_files top
Betriebszeit des Computers
Möchten Sie wissen, wie lange Ihre Linux-Computer bereits laufen? Verwenden Sie den Befehl „uptime“ zusammen mit dem Pssh-Tool:
pssh -i -h ~/.pssh_hosts_files uptime
Festplattenplatz
Überprüfen Sie den verfügbaren Festplattenspeicher auf jedem entfernten Linux-Computer gleichzeitig, indem Sie den Befehl „df“ mit Pssh verwenden:
pssh -i -h ~/.pssh_hosts_files df -h
Systemspezifikationen
Führen Sie den Befehl „inxi“ aus, um die Systemspezifikationen aller Remote-Linux-Computer in der Hostliste zu überprüfen:
pssh -i -h ~/.pssh_hosts_files inxi -F