Fernadministration von Linux-PCs über die Konsole

Um einen oder mehrere Linux-Rechner über das Netzwerk oder Internet fernzusteuern und zu administrieren eignet sich unter Linux ssh (= Secure Shell) besonders gut. In den Paketquellen einer jeden Linux-Distribution sollten die benötigten Pakete enthalten sein. Die Fernadministration ist also distributionsunabhngig, d.h. ein Debiansystem kann also auch ein OpenSuse mithilfe von SSH administrieren.

SSH.png

Die Installation ist denkbar einfach. Konsole üffnen und den Befehl
sudo apt-get install ssh
eingeben.

Nach der erfolgreichen Installation ist ssh sofort einsatzbereit. In der Konsole kann man nun die Befehle eingeben, um auf den entfernten PC Zugriff zu erhalten. Der SSH-Befehl ist folgendermaßen aufgebaut:

ssh [Optionen]Hostname[Befehl]

Beispiel: ssh

Wenn man das erstemal auf einen PC via ssh zugreift, wird man gefragt, ob man den Schlüssel dieses PC akzeptiert. Nachdem man den Schlüssel akzeptiert, erhält man zugriff auf den zu administrierenden PC.
Die Schlüssel werden in folgender Datei abespeichert /home/stefan/.ssh/known_hosts. Evtl. muss man einen Schlüssel aus dieser Datei lüschen, wenn z.B. ein entfernter Rechner ein neues Betriebssystem erhalten hat.

ssh stellt auch eine Möglichkeit dar, Programme des entfernten Rechners auf den eigenen Rechner weiterleiten zu lassen. Dazu wird das grafische Frontend auf den eigenen Rechner geholt, während das Programm weiterhin auf dem entfernten Rechner liegt und ausgeführt wird. Dies ist aber nur zu empfehlen, wenn man eine schnelle Netzwerkverbindung hat. Um z.B. das Programm Konqueror auf den eigenen Rechner zu holen, muss man erst eine ssh-Verbindung zum entfernten Rechner aufbauen. Dazu ist in der Konsole folgendes einzugeben:

ssh -XC

Dabei stellen die Optionen XC folgendes bereit.

    -X Aktiviert die X11-Weiterleitung
    -C Komprimierung einschalten. Hauptsächlich für langsame Verbindungen nützlich.

Nach der Eingabe des Befehls wird man aufgefordert das Passwort des Benutzers „stefan“ einzugeben. Nach Eingabe des Passworts hat man Zugriff auf den entfernten Rechner mit den Rechten des Benutzers „stefan“. Da wir die Option X gewählt haben, kann der entfernte PC das grafische Frontend von Konqueror auf unseren PC weiterleiten. Es ist der Befehl konqueror in der Konsole einzugeben. Es sollte nun sofort das Programm Konqueror auf unserem Bildschirm auftauchen.

Einen Benutzer sicher auf einem entfernten System einloggen und auf diesem System Befehle ausführen. Die hier beschriebene ssh-Version ist der OpenSSH-Client. ssh kann entweder Version 1 (SSH1) oder Version 2 (SSH2) des SSH-Protokolls verwenden. SSH2 ist vorzuziehen, weil es bessere Verschlüsselungsmethoden und eine stärkere Verbindungsintegrität bietet. Der Hostname kann entweder als Hostname oder als Benutzer@Hostname angegeben werden. Wenn ein Befehl eingegeben wird, wird der Benutzer authentifiziert, der Befehl ausgeführt und dann die Verbindung geschlossen. Andernfalls wird eine Terminal-Session auf einem entfernten System geüffnet.

ssh bringt folgende weitere Optionen mit sich:

-1         nur SSH1 versuchen
-2 nur SSH2 versuchen
-4 nur IPv4-Adressen verwenden
-6 nur IPv6-Adressen verwenden
-a Deaktiviert die Weiterleitung der Verbindung des Authentifizierungsagenten
-A Erlaubt die Weiterleitung der Verbindung des Authentifizierungsagenten. Kann auch auf einer Per-Host-Basis in einer Konfigurationsdatei angegeben werden
-b Adresse Gibt das Interface an, von dem aus gesendet werden soll, wenn mehrere Interfaces oder Adressen mit Aliasen verfügbar sind
-c blowfish|3des|des|Algorithmen Wählt den Algorithmus für die Verschlüsselung des Session. Der Default ist 3des. Bei SSH2 kann auch eine kommaseparierte Liste Algorithmen angegeben werden, in der die Algorithmen in der Reihenfolge der Präferenz aufgelistet sind. des wird nur zur Kompatibilität mit dem veralteten SSH1 unterstützt und sollte sonst nicht verwendet werden.
-C Komprimierung einschalten. Hauptsächlich für langsame Verbindungen nützlich. Die Default-Komprimierungsstufe kann auf einer Per-Host-Basis in der Konfigurationsdatei mit der Option CompressionLevel gesetzt werden.
-D Port Aktiviert die dynamische Portweiterleitung auf Anwendungsebene und verwendet dazu auf der lokalen Seite Port. Kann in der Konfigurationsdatei angegeben werden. Nur Root kann privilegierte Ports weiterleiten.
-e Zeichen|^Zeichen|none Setzt das Escape-Zeichen (Default ~). Das escape-Zeichen muss das erste Zeichen auf einer Zeile sein. Wenn none angegeben ist, wird die Verwendung von Escape-Zeichen abgeschaltet.
-f Während der Benutzer-Authentifizierung interkative Ausführung, dann in den Hintergrund-Modus für Befehlsausführung wechseln. Impliziert -n
-F Konfigurationsdatei Gibt eine benutzerspezifische Konfiigurationsdatei (Default ist /home/benutzer/.ssh/config)
-g erlaubt entfernten Hosts die Verbindung zu lokalen weitergeleiteten Ports.
-i ID-Datei Verwendet ID-Datei, um Identität (Privatschlüssel) für die RSA- oder DSA-Authentifizierung zu setzen. Default ist /home/benutzer/.ssh/id_rsa oder /home/benutzer/.ssh/id_das für SSH2. Auf der Kommandozeile oder in einer Konfigurationsdatei künnen mehrere -i Optionen angegeben werden.
-I Gerät Gibt das Smartcard-Gerät an, von dem der private RSA-Schlüssel des Benutzers gelesen wird.
-k schaltet die Weiterleitung von Kerberos-Tickets an AFS-Tokens ab. Kann in der Konfigurationsdatei einer Per-Host-Basis angegeben werden.
-l Benutzer Auf dem entfernten System als Benutzer einloggen. Kann in der Konfigurationsdatei auf einer Per-Host-Basis angegeben werden.
-L Port:Host:Hostport Leitet Port auf dem lokalen Host auf den angegebenen entfernten Host und Port weiter. Kann in der Konfigurationsdatei angegeben werden. Nur Root kann priviligierte Ports weiterleiten. Eine alternative Syntax für IPv6 ist Port/Host/Hostport.
-m MAC Bei SSH2 gibt der Inhalt von MAC die zu verwendende Message Authentification Code-Alorithmen (MAC) an. MAC ist eine kommasepariete Liste von Algorithmen in der Reihenfolge ihrer Präferenz.
-M Setzt den ssh-Client für die gemeinsame Nutzung von Verbindungen in den Master-Modus.
-n Standardeingabe als Umleitung von /dev/null erhalten. Wird verwendet, um das Lesen der Standardeingabe zu vermeiden, was erforderlich ist, wenn ssh im Hintergrund ausgeführt wird. Nützlich, um auf einem entfernten Host X-Programme auszuführen.
-N Keinen entfernten Befehl ausführen. Nützlich, wenn SSH2 zur Portweiterleitung verwendet wird.
-o Optionen Optionen im Konfigurationsdatei-Format angeben. Nützlich, um Optionen anzugeben, zu denen es kein Kommandozeilen-äquivalent gibt.
-p Port Gibt den Port auf dem entfernten Host an, mit dem ssh eine Verbindung herstellen soll. Kann in der Konfigurationsdatei auf einer Per-Host-Basis angegeben werden.
-q Im stummen Modus laufen, Warnungen und Fehlermeldungen unterdrücken.
-R Port:Host:Hostport Leitet Port auf dem entfernten Host auf den lokalen Host:Hostport weiter. Kann in einer Konfigurationsdatei angegeben werden. Privilegierte Ports künnen Sie nur weiterleiten, wenn Sie als Root eingeloggt sind. Eine alternative Syntax fpr IPv6 ist Port/Host/Hostport.
-s Bei SSH2 wird auf dem entfernten Host der Anruf eines Subsystems gefordert, das für eine andere Anwendung sftp verwendet wird. Das gewünschte Subsystem wird als der entfernte Befehl angegeben.
-C Socket Gibt den Ort des Steuerungssockets für die gemeinsame Nutzung von Verbindungen an.
-t Erzwingt die Allozierung eines Pseudo-tty. Es künnen mehrere -t-Optionen angegeben werden, um die Allozierung eines tty auch dann erzwingen, wenn ssh kein lokales tty besitzt.
-T Schaltet die Allozierung eines Pseudo-tty ab.
-v Verbose-Modus. Nützlich für das Debugging. Geben Sie die Option -v mehrfach an, um die Ausführlichkeit der Informationen zu erhühen.
-V Versionsinformationen anzeigen, dann beenden.
-x Schaltet die X11-Weiterleitung ab.
-X Aktiviert die X11-Weiterleitung. Kann in der Konfigurationsdatei auf einer Per-Host-Basis angegeben werden.
-Y Sichere X11-Weiterleitung aktivieren.

Quelle:
Ellen Siever, Aaron Weber, Stephen Figgins, Robert Love, Arnold Robbins, Lars Schulten, Linux In A Nutshell, 4. Auflage, O’Reilly, 2005

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.

Diese Website verwendet Akismet, um Spam zu reduzieren. Erfahre mehr darüber, wie deine Kommentardaten verarbeitet werden.