Kategorien: | HowTos |
---|---|
Tags: | credativ Elephant Shed Fernwartung Kommunikation Remote tmate |
Gerade in der aktuellen Situation um COVID-19 ist eine funktionierende Fernwartungs- / Remotecontrol-Lösung enorm wichtig.
Nicht nur seit Bekanntwerden von massiven Sicherheitsproblemen mehrerer bekannter Anbieter ist klar, dass hier ein breiter Angriffsvektor besteht.
Im Zuge der aktuellen Situation wird außerdem deutlich, dass mit Ressourcen (z.B. Bandbreite) im Zweifel besser sparsam umgegangen werden sollte und es sich lohnen kann, kritische Infrastruktur selbst zu betreiben.
Darum betreiben wir bei credativ für uns selbst, unsere Kunden und die Nutzer der von uns entwickelten, freien Datenbank-Software-Appliance elephant-shed ein tmate-Relay. Was das ist, erklären wir euch in diesem Artikel.
tmate ist ein Fork des bekannten Terminalmultiplexers tmux, ergänzt durch zusätzliche Remotecontrolfunktionen.
Die Software ermöglicht es, von einem Linux-System aus die aktuelle Shell mit anderen zu teilen, sowohl lesend, als auch schreibend. So ist eine einfache Fernwartung im sicheren Vieraugenprinzip möglich. Sobald der Host das lokale tmate beendet, endet der Zugriff für alle Teilnehmer.
Vorteile
Nachteile
Um die Software (betriebs)sicher für kritische Anwendungen verwenden zu können, ist es sinnvoll ein eigenes Relay zu betreiben. So ist man für die Fernwartung nicht auf fremde Dienstleister oder deren Infrastruktur angewiesen.
tmate ist auf allen gängigen Linux-Distributionen paketiert. SSH-Client und Browser sollten auf allen anderen Plattformen zur Verfügung stehen.
Debian / Ubuntu:
apt install tmate
CentOS:
yum install tmate
Sind Sie Kunde der credativ GmbH, oder möchten aus anderen Gründen das credativ-Relay verwenden? Nutzen Sie einfach die von uns bereitgestellte Konfiguration. Dazu müssen Sie nur die tmate.conf herunterladen und unter ~/.tmate.conf speichern.
Für Debian, Ubuntu, CentOS und RHEL halten wir alternativ auch entsprechende, fertige Pakete bereit, um sowohl die Software als auch die Konfiguration aktuell zu halten. Die Pakete finden Sie in den elephant-shed-Repositories.
# Use credativ repo, packages.credativ.com
echo "deb https://packages.credativ.com/public/postgresql/ stretch-stable main" | sudo tee -a /etc/apt/sources.list.d/elephant-shed.list
curl https://packages.credativ.com/public/postgresql/aptly.key | sudo apt-key add -
# Update
apt update
# Install tmate with credativ config
apt install elephant-shed-tmate
$ tmate
$ tmate show-messages Di 21 Apr 2020 13:44:28 CEST
Tue Apr 21 13:43:27 2020 [tmate] Connecting to tmate.credativ.com...
Tue Apr 21 13:43:28 2020 [tmate] Note: clear your terminal before sharing readonly access
Tue Apr 21 13:43:28 2020 [tmate] ssh session read only: ssh -p10022 ro-klCtlf7VeNfdoiDa5T6DfdsYB@tmate.credativ.com
Tue Apr 21 13:43:28 2020 [tmate] ssh session: ssh -p10022 jqAFSZpJU1558uKHACKe2S2i8@tmate.credativ.com
Gibt man nun jemandem den ssh session read only
Befehl, so wird die aktuelle Shell mit dieser Person lesend geteilt.
Der Empfänger sieht alle Ein- und Ausgaben in Echtzeit, kann jedoch keine Befehle senden.
Mit dem Befehl hinter ssh session
kann jeder Nutzer auch eigenständig Tippen und Befehle senden.
Wenn gewünscht, kann das Relay auch einen Webclient bereitstellen, der den Zugriff über den Browser ermöglicht.
Hier zeigt der Befehl tmate show-messages
dann auch die beiden URLs für Readonly und Read-Write-Zugriff an.
$ tmate show-messages
Tue Apr 21 14:49:33 2020 [tmate] Connecting to ssh.tmate.io...
Tue Apr 21 14:49:33 2020 [tmate] Note: clear your terminal before sharing readonly access
Tue Apr 21 14:49:33 2020 [tmate] web session read only: https://tmate.io/t/ro-S7kR7yGGzmn8fnyWJJ3gvek6z
Tue Apr 21 14:49:33 2020 [tmate] ssh session read only: ssh ro-S7kR7yGGzmn8fnyWJJ3gvek6z@lon1.tmate.io
Tue Apr 21 14:49:33 2020 [tmate] web session: https://tmate.io/t/quZcDHJNtjbYnCrJtuS7XhnZp
Tue Apr 21 14:49:33 2020 [tmate] ssh session: ssh quZcDHJNtjbYnCrJtuS7XhnZp@lon1.tmate.io
tmate ist speziell dafür gedacht, Dritten temporär Zugriff zu gewähren und dabei auch NAT und Firewalls zu tunneln.
Haben alle Nutzer bereits Zugriff auf ein gemeinsames System, sind die tmate-Erweiterungen nicht notwendig, hier kann einfach tmux verwendet werden.
Die Kommunikation erfolgt dann, ohne Verschlüsselung oder Zugriffskontrollen über ein lokales Socket.
tmux new-session -s my_cool_pairprogramming_session
tmux attach-session -t my_cool_pairprogramming_session
Falls Sie Unterstützung bei der Verwendung von tmate wünschen, oder gerne ihr eigenes Relay betreiben möchten, steht Ihnen unser Open Source Support Center gerne zur Verfügung – Falls gewünscht auch 24 Stunden am Tag, an 365 Tagen im Jahr.
Kategorien: | HowTos |
---|---|
Tags: | credativ Elephant Shed Fernwartung Kommunikation Remote tmate |
über den Autor
Projektleiter
zur Person
Alexander Sosna arbeitet seit 2014 im credativ Datenbank-Team und hat dort die organisatorische Leitung. Außerdem nimmt er die Aufgabe des teamübergreifenden Projektleiters wahr. Während des Wintersemesters erfüllt er zusätzlich einen Lehrauftrag für IT-Security an der Hochschule Niederrhein.