Secure Shell (SSH) ist ein unverzichtbares Werkzeug für Systemadministratoren, Entwickler und alle, die Remote-Server verwalten. Mit SSH können Sie sich sicher mit einem entfernten Rechner verbinden, Befehle ausführen, Dateien übertragen und Verwaltungsaufgaben durchführen. In diesem Artikel stellen wir Ihnen 10 gängige SSH-Befehle vor, die Sie heute verwenden sollten.
Der grundlegendste SSH-Befehl wird verwendet, um eine Verbindung zu einem entfernten Server herzustellen:
ssh user@remote_hostErsetzen Sie user durch Ihren Benutzernamen und remote_host durch die IP-Adresse oder den Domänennamen des Servers.
SSH verwendet standardmäßig Port 22, aber Sie können bei Bedarf auch einen anderen Port angeben:
ssh -p 2222 user@remote_hostDies ist nützlich, wenn der SSH-Server so konfiguriert ist, dass er über einen nicht standardmäßigen Port läuft.
Statt mit einem Passwort können Sie sich auch mit einem SSH-Schlüssel authentifizieren:
ssh -i /pfad/zu/privater_schlüssel user@remote_hostEinen SSH-Schlüssel können Sie wie folgt generieren:
ssh-keygen -t rsa -b 4096Dadurch wird die Sicherheit erhöht und die Notwendigkeit, jedes Mal ein Passwort einzugeben, entfällt.
Sie können einen einzelnen Befehl auf einem entfernten Server ausführen, ohne eine interaktive Sitzung zu eröffnen:
ssh user@remote_host "ls -l /var/www/html"Dies ist nützlich für schnelle administrative Aufgaben.
Mit dem Secure Copy Protocol (SCP) können Sie Dateien zwischen lokalen und entfernten Rechnern übertragen:
scp file.txt user@remote_host:/remote/directory/Um ein Verzeichnis rekursiv zu kopieren:
scp -r /lokal/Verzeichnis user@remote_host:/remote/Verzeichnis/Eine Alternative zu SCP ist rsync, das für die Synchronisierung von Dateien effizienter ist:
rsync -avz /local/directory user@remote_host:/remote/directoryEs minimiert die Datenübertragung, indem es nur die Unterschiede zwischen den Dateien überträgt.
Mit SSH-Tunneling können Sie den Netzwerkverkehr sicher weiterleiten. So erstellen Sie einen lokalen Tunnel:
ssh -L 8080:localhost:80 user@remote_hostDadurch wird der Datenverkehr von Ihrem lokalen Port 8080 an den Port 80 des entfernten Servers weitergeleitet.
Mit Reverse Tunneling kann ein entfernter Server auf Ihren lokalen Rechner zugreifen:
ssh -R 9090:localhost:22 user@remote_hostDies ist nützlich für den Zugriff auf ein System hinter einer Firewall.
Wenn Sie sich häufig mit demselben Server verbinden, können Sie SSH beschleunigen, indem Sie Multiplexing aktivieren:
ssh -o ControlMaster=yes -o ControlPath=~/.ssh/socket user@remote_hostDadurch wird der Authentifizierungsaufwand für mehrere SSH-Sitzungen reduziert.
Um eine SSH-Sitzung zu beenden, geben Sie einfach ein:
exitOder verwenden Sie die Escape-Sequenz:
~.Dies ist hilfreich, wenn die Verbindung nicht mehr reagiert.