Mobile-Menu

RPort – Werkzeug für die zentrale System-Fernwartung Fernwartung und Automatisierung über Tunnel

Autor / Redakteur: Thorsten Kramm / Dipl.-Ing. (FH) Andreas Donner

Serverlisten, VPNs, Jumphosts, SSH-Ketten und TeamViewer war gestern. Die neue Software RPort macht zentrale Fernwartung und Automatisierung zum Kinderspiel – hochsicher und kostenlos. So sieht das zumindest ihr Entwickler Thorsten Kramm. Hier stellt er sein Produkt vor.

RPort ist eine auf Tunneln und nicht auf VPN oder Port-Forwarding basierende Lösung für den Fernzugriff und die Administrations-Automatisierung.
RPort ist eine auf Tunneln und nicht auf VPN oder Port-Forwarding basierende Lösung für den Fernzugriff und die Administrations-Automatisierung.
(Bild: CloudRadar / Thorsten Kramm)

Auch im Jahr 2021 herrscht bei vielen Systemadministratoren noch Zettelwirtschaft. Die Zettel sind zwar weitgehend digital und nennen sich Wiki oder SharePoint. Doch für welche Systeme ein Administrator verantwortlich ist, wo sich diese befinden und wie man Fernzugriff darauf bekommt, wird an beliebiger Stelle notiert.

Und wer kennt es nicht? Der Kollege ist im Urlaub, man muss dringend einen Serverfehler beheben und das Rätseln beginnt: Wie komme ich auf das System? Hoffentlich war der Kollege diszipliniert und die Serverliste und Dokumentation mit den Fernzugriffswegen sind aktuell.

Dieses Problem haben die Entwickler der Open-Source-Software RPort selbst oft leidvoll erfahren. Deshalb haben sie eine Lösung entwickelt, mit der sich das Inventar eigenständig aktualisiert und den Zugriff auf alle Systeme per SSH oder Remote Desktop integriert.

Neuer Wein in alten Schläuchen

Für Linux-Administratoren ist OpenSSH das Werkzeug schlechthin. Und seitdem OpenSSH – nein, Putty ist nicht gemeint – in Windows 10 integriert wurde, sollten auch Windows-Administratoren einmal nachlesen, welche magischen Kräfte sich hinter den Optionen „ssh -L“ und „ssh -R“ verbergen. Genau diese Technologie der so genannten Tunnel ist der Namensgeber der Software. RPort steht für „Remote Port“. Aber keine Angst, RPort verlangt weder Erfahrung mit SSH noch dessen Installation.

Client und Server werden in Golang entwickelt und stehen als ausführbare Dateien für Windows und Linux zum Download bereit. Die Software umfasst nur eine Datei. Es gibt keine Abhängigkeiten zu anderen Programmen oder Softwarebibliotheken.

Alles im Blick behalten

Die Arbeit mit RPort beginnt mit einer grafischen Benutzeroberfläche, die man im Browser öffnet. Im Inventar erscheinen alle Systeme, auf denen vorher der RPort-Client installiert wurde. Interne und externe IP-Adressen, der Standort und viele andere Details sind zu sehen. Der Client hält diese Informationen stets aktuell. Mit Tags und einem verschlüsselten Key-Value-Store können die Systeminformationen erweitert werden.

Der Client ist mit einem kurzen Pairing-Code schnell installiert. Und da die Einhaltung höchster Sicherheitsstandards für jede neue Software Grundvoraussetzung ist, läuft der Client nicht als Root. Die Anmeldung am Server kann mit einer Zwei-Faktor-Authentifizierung (2FA) abgesichert werden. Über einen digitalen Fingerabdruck muss eine Vertrauensstellung zwischen Client und Server hergestellt werden.

Das Erste von den zwei eingangs geschilderten Problemen – die nicht aktuelle Serverliste – ist damit gelöst. Jeder neue Server bekommt sofort den RPort Client installiert. Für virtuelle Server wird der RPort Client in die cloud init integriert. Fertig ist das stets aktuelle Inventar.

Auf direktem Weg ans Ziel: Tunnel statt VPN

RPort ist der direkte Weg ans Ziel. Und dieses Ziel ist für Systemadministratoren der SSH Port 22 oder der Remote Desktop Port 3389. Meisten steht aber das so genannte Network Adress Translation (NAT) dem direkten Weg zum Ziel im Weg. Mit gutem Grund, denn es ist der Grundschutz eines jeden Routers.

Für RPort stellt NAT kein Problem dar, denn der Client baut die Verbindung von Innen nach Außen auf. Und damit diese Verbindungen in Firewalls nicht extra freigeben werden müssen, nutzt der RPort-Client für den ersten Verbindungsaufbau das HTTP Protokoll und den Port 80. Die Verwendung eines HTTP-Proxy-Servers ist möglich. Sobald die HTTP Verbindung steht, wird eine in HTTP verpackte SSH-Verbindung aufgebaut. SSH-Verbindungen gelten seit Jahren als robust und extrem sicher. Dank der Reverse-Tunnel-Fähigkeiten von SSH kann man so jeden TCP Port auf dem Zielsystem erreichen.

Tunnel werden nur dann aufgebaut, wenn sie gebraucht werden. Ein Klick genügt, und der Tunnel steht. So erreicht man jeden Server hinter NAT Routern ohne VPN oder Port-Forwarding. Tunnel bieten oft eine größere Sicherheit als VPNs. Ein Tunnel gewährt den Zugriff auf nur einen Port eines Systems. VPNs verbinden meist ganze Netze. Sollte der Desktop des Systemadministrators infiziert sein, gibt ein Tunnel einer Schadsoftware keine neuen Angriefsziele – ein VPN unter Umständen schon.

RPort schützt alle Tunnel standardmäßig mit einer Access Control List (ACL). Nur die IP-Adresse des anfordernden Benutzers erhält Zugriff. Die ACLs können aber angepasst und ausgeschaltet werden. So kann man beispielsweise einem Dienstleister temporären Zugriff auf einen Server geben.

Das Funktionsprinzip von RPort.
Das Funktionsprinzip von RPort.
(Bild: CloudRadar / Thorsten Kramm)

RPort ist einfach zu hacken

Wikipedia nennt als Synonym für den Begriff Hacker das Wort Tüftler. Und an diese haben die Entwickler von RPort auch gedacht. Alles, was man über die grafische Oberfläche ausführen kann, lässt sich auch per RESTful API erledigen. Und so ist RPort bereits in den Markt für Homeoffice-Lösungen vorgedrungen. Über ein Self-Service-Portal können Mitarbeiter den Remote-Zugriff auf den Desktop des Büro-PCs vom heimischen PC aus beantragen. Per API-Call wird dann RPort instruiert, den Tunnel für die aktuelle IP-Adresse des Mitarbeiters bereitzustellen.

Aber auch Firmen aus der Industrie-Digitalisierung setzen RPort bereits ein. Denn nicht jedes Projekt startet auf der grünen Wiese, sondern im so genannten Brownfield. Das bedeutet, man muss mit dem arbeiten, was man vorfindet. Und das sind bei den Betriebssystemen oft tot geglaubte Veteranen. Da der RPort Client keine Abhängigkeiten zu externen Programmen oder Bibliotheken hat, läuft er auch auf alten Betriebssystemen. Über die RESTful API schafft er die Möglichkeit, so gut wie jedes System fernzusteuern. Das ist besonders für Microsoft Windows interessant, denn Technologien wie WinRM und PowershellRemote sind kompliziert und nicht in jeder Version verfügbar. RPort schafft hier eine einfache und universelle Schnittstelle zur Fernsteuerung.

Sicherheit im Fokus

Die Entwickler von RPort möchten Firmen und Systemhäuser in die Lage versetzen, schnell und einfach ihre eigene Fernwartungsumgebung zu betreiben. Der Vorteil gegenüber SaaS-Lösungen liegt auf der Hand. Man gibt den zentralen Schlüssel für alle Türen nicht an einen Fremden. Alle Daten bleiben im Hoheitsgebiet des Betreibers. Hinzu kommt, dass der Quellcode von RPort zugänglich ist. Bei SaaS-Lösungen kann man in der Regel den Quellcode nicht auditieren.

Etablierte Lösungen übernehmen oft die volle Kontrolle über das entfernte System. Und das sogar durch die eigene Hintertür. Nicht so bei RPort. Benutzer können das Ausführen von Kommandos abschalten oder auf eine Liste von Kommandos beschränken. Diese Beschränkungen sind fest im Client hinterlegt und können vom Server nicht überschrieben werden. Für einige kommerzielle Anbieter steht der Komfort so sehr im Vordergrund, dass detaillierte Sicherheitseinstellungen für Profis weggelassen werden.

Für die Entwickler war von Anfang an klar, dass sie kein Betriebssystem bevorzugen oder gar ausschließen werden. Dementsprechend kann man Windows und Linux gleichermaßen verwalten. Die großen Player im SaaS-Bereich können dagegen ihr Wurzeln meist nicht leugnen. Sie sind damit groß geworden, indem sie den Windows-Desktop per Videosignal weitergeleitet haben. Die Unterstützung für Linux-Server, die in der Regel keinen grafischen Desktop haben, sucht man hier also meist vergebens.

Ein Nobrainer

RPort wird unter der MIT-Lizenz veröffentlicht und steht auch auf GitHub zum Download bereit. Wer schnell einen ersten Eindruck bekommen möchte, sollte den Cloud-Installer nutzen. Dieser verwandelt jede noch so kleine Cloud-VM vollautomatisch in einen vollwertigen RPort Server. Linux-Kenntnisse sind nicht erforderlich.

Das Beste kommt zum Schluss

RPort ist nicht nur eine komfortable Lösung für den Fernzugriff. Die Software kann auch zur Automatisierung wiederkehrender Aufgaben genutzt werden. Bash- oder PowerShell-Skripte können direkt aus dem Browser oder per API ausgeführt werden – auch auf mehreren Systemen parallel. Skripte werden als Rezepte in einer Bibliothek gespeichert. Für den Herbst haben die Entwickler ein integriertes Patch-Management für Linux und Windows angekündigt.

Thorsten Kramm.
Thorsten Kramm.
(Bild: CloudRadar / Thorsten Kramm)

Über den Autor

Thorsten Kramm gründete 2018 das Potsdamer Start-up CloudRadar. Zuvor war er Systemadministrator, Softwareentwickler und Berater in großen und kleinen Unternehmen tätig. Zusammen mit einem internationalen Team entwickelt er RPort. Das Projekt finanziert sich durch Crowdfunding und eine Beteiligung der Investitionsbank des Landes Brandenburg (ILB).

Artikelfiles und Artikellinks

(ID:47624815)