logo

Suletuxe.de
Linux - Nutzer
helfen
Linux - Nutzern

Willkommen, Gast. Bitte Login oder Registrieren.
24. November 2024, 16:29:35
Übersicht Hilfe Suche Login Registrieren

Amateurfunk Sulingen
Diskussions- und Newsboard der Linux Interessen Gruppe Suletuxe  |  allgemeine Kategorie  |  Installation & Einrichtung  |  Thema: Fernwartung von Linux-Systemen « zurück vorwärts »
Seiten: [1] nach unten Drucken
   Autor  Thema: Fernwartung von Linux-Systemen  (Gelesen 1696 mal)
Andreas
Administrator
*****

Offline

Einträge: 1319



Linux von Innen

Profil anzeigen
Fernwartung von Linux-Systemen
« am: 28. Dezember 2019, 14:38:31 »

Angeregt durch Regina's Schwierigkeiten habe ich mir Gedanken gemacht, wie man ein Linux-System auf Wunsch eines Betroffenen "von Außen" wartbar macht. Am Besten wäre es, per ssh darauf zugreifen zu können. Dann hätte man eine Konsole auf dem Rechner und damit könnte man nahezu alle Wartungsarbeiten "aus der Ferne" machen. Das hat nur ein Problem:
auf dem Rechner des Nutzers müsste ein ssh-Server laufen dessen Port durch den Router hindurch nach Außen geöffnet wird.
Wer seinen Linux-Rechner nicht selbst warten kann wird in der Regel auch nicht in der Lage sein in seinem Router eine Portweiterleitung zum ssh-Port seines Rechners zu schalten. So geht es also sehr wahrscheinlich nicht.

Aber so in der Art müsste es gehen. Nach einigem Suchmaschinenquälen bin ich auf das Paket "autossh" gestoßen. Mit "autossh" kann man eine Verbindung zu einem externen Linux-Rechner aufbauen und stellt dann auf dem Rechner einen Port als "ssh-Tunnel" zur Verfügung, damit von dem Rechner aus dann wiederum per ssh auf den zu wartenden Rechner zugegriffen werden kann. Es wird nur eine Passwort/Userkombination des zu wartenden Rechners benötigt.

Na - das ist doch schon mal ein echt guter Ansatz!

Als "externer Rechner" kommt z.B. mein Server in Frage. Aber auf diesem Rechner einen Login / eine Shell für einen externen, nicht unbedingt vertrauenswürdigen Zugang freigeben? Auf keinen Fall. Aber auch hier half das Internet. Es gibt eine Möglichkeit einen User einzurichten, mit dem man sich zwar einloggen kann, der aber weder ein Verzeichnis besitzt, das er verlassen kann, noch Zugriff auf eine Shell hat.

So einen User habe ich dann mal testweise auf meinem Server eingerichtet. Ich nenne ihn in diesem Beispiel hilfloser.

Der User, der sein System aus der Ferne warten lassen möchte, müsste dann erstmal kontrollieren, ob er autossh installiert hat (das bekommt jeder hin denke ich). Wenn nein ==> installieren (das bekommt auch jeder hin), wenn ja (oder nach installieren) wird folgende Befehlszeile ausgeführt:

autossh -M 0 -o "ServerAliveInterval 300" -o "ServerAliveCountMax 65000" -p 75766 -N -R 10000:localhost:22 hilfloser@44.55.66.77

Dabei muss 75766 durch die Portnummer des ssh auf meinem Rechner ersetzt werden und 44.55.66.77 durch die IP meines Rechners (beides würde ich auf Anfrage in einer persönlichen Mitteilung herausrücken). Dann müsste mir derjenige seinen Usernamen und sein Passwort des Rechners mitteilen. Wenn wir uns verabredet haben, schickt er die oben aufgeführte Kommandozeile ab und gibt dann das Passwort des Users "hilfloser" ein (auch das rücke ich als PM raus). Dann scheint seine Konsole an der Stelle zu "hängen": der Cursor bewegt sich nicht mehr, die Konsole ist scheinbar ohne Funktion. Ist sie aber nicht! Es wurde durch seinen Router eine Verbindung zu meinem Server aufgebaut, und ich kann mich dann von dort aus mittels
ssh localhost -p 10000 -l username
per ssh durch die Firewall seines Routers mit seinem Rechner verbinden, bekomme dort eine Shell mit den Rechten des Users, als der ich mich einlogge!!!

Es ist dann möglich, "remote" auf seinem Rechner auf der Konsole zu arbeiten, als wenn ich am Rechner selbst sitzen würde. Wenn der User sein Terminalfenster mit dem scheinbar hängenden Befehl schließt (oder einfach CONTROL_C drückt) beendet er den Tunnel und damit auch die Fernzugriffsmöglichkeit.

Der User hat also
  • die Möglichkeit, aktiv einen Fernzugang zu seinem Rechner herzustellen
  • jemand anderem dann die Zugriffsrechte zu geben (Username / Passwort)
  • und kann die Zugriffsmöglichkeit jederzeit mit sofortiger Wirkung beenden

Er braucht dazu
  • keine Kenntnisse über Netzwerkdinge (Ports, IP-Adressen, Weiterleitungen, Freigaben etc.)
  • keine sicherheitsbedenklichen Änderungen an seinem Router oder seinem Rechner vorzunehmen
  • nur sehr rudimentäre Kommandozeilenkenntnisse (ggf. ein Paket nachinstallieren, einen Befehl kopieren und ausführen)
  • lediglich Vertrauen zu demjenigen, der dann die Fernwartung ausführt

Eine Wartung eines jeden Linux-Systems von jedem Ort der Welt aus ist damit einfach möglich. Einzige technisch nötigen Bedingungen:
  • Der zu wartende Rechner muss sich im Internet befinden
  • es muss einen öffentlich erreichbaren Rechner unter der Macht des Dienstleisters geben (ist hier gegeben)
  • der User muss den Vorgang initiieren (siehe oben)


Na wenn das man nicht genial ist ...

LG
Andreas
« Letzte Änderung: 27. Juni 2020, 08:44:02 von Andreas » Gespeichert

Wissen ist das einzige Gut, das mehr wird, wenn man es teilt - wenn es Menschen gibt, die es teilen, und es Menschen gibt, die bereit sind, dieses Geschenk auch mit eigenem Einsatz anzunehmen.


Freiheit zu erkämpfen reicht nicht. Man muss sie auch verteidigen.


Ohne IT-Kompetenz ist man heutzutage ein willkommenes Opfer und Spielball anderer, egal, welches System oder Gerät man nutzt. Nur Wissen schützt vor Schaden!
Sebastian
Sr. Member
****

Offline

Einträge: 488





Profil anzeigen
Re:Fernwartung von Linux-Systemen
« Antwort #1 am: 30. Dezember 2019, 16:30:12 »

Hallo Andreas,

Diese Möglichkeit ist echt super, denk aber daran, falls du auch Programme warten möchtest, die nur über eine GUI steuerbar sind (ein paar gibt es da tatsächlich). Die Konfiguration vom SSH Server noch angepasst werden müsste.

Code:

/etc/ssh/sshd_config
---------------------------

X11Forwarding yes


LG

Sebastian
Gespeichert

Richtig um Hilfe bitten
Andreas
Administrator
*****

Offline

Einträge: 1319



Linux von Innen

Profil anzeigen
Re:Fernwartung von Linux-Systemen
« Antwort #2 am: 31. Dezember 2019, 07:08:38 »

Hallo Sebastian,

wenn man auch X11 benutzen möchte: dann muss man das sicher tun. Allerdings kommt es so selten vor, dass ich etwas über X11 warten muss, dass ich es tatsächlich im gesamten letzten Jahr bei niemandem gebraucht habe. Aber mit dem X11Forwarding yes geht auch X11 - ganz ohne spezielle, prorietäre Software Lösungen 

LG
Andreas
Gespeichert

Wissen ist das einzige Gut, das mehr wird, wenn man es teilt - wenn es Menschen gibt, die es teilen, und es Menschen gibt, die bereit sind, dieses Geschenk auch mit eigenem Einsatz anzunehmen.


Freiheit zu erkämpfen reicht nicht. Man muss sie auch verteidigen.


Ohne IT-Kompetenz ist man heutzutage ein willkommenes Opfer und Spielball anderer, egal, welches System oder Gerät man nutzt. Nur Wissen schützt vor Schaden!
Seiten: [1] nach oben Drucken 
Diskussions- und Newsboard der Linux Interessen Gruppe Suletuxe  |  allgemeine Kategorie  |  Installation & Einrichtung  |  Thema: Fernwartung von Linux-Systemen « zurück vorwärts »
Gehe zu: 


Login mit Username, Passwort und Session Länge

 Es wird die Verwendung "Blink"-basierter Browser und mindestens 1024x768 Pixel Bildschirmauflösung
für die beste Darstellung empfohlen
 
freie Software für freie Menschen!
Powered by MySQL Powered by PHP Diskussions- und Newsboard der Linux Interessen Gruppe Suletuxe | Powered by YaBB SE
© 2001-2004, YaBB SE Dev Team. All Rights Reserved.
- modified by Andreas Richter (DF8OE)
Valid XHTML 1.0! Valid CSS!