![Debian](/pics/debianpackage.png)
Die SSH-Fernwartung soll nur aus Initiative vom Benutzer stattfinden und von ihm überwachbar sein.
Der Benutzer benötigt einen installierten SSH-Server, der jedoch nur auf "localhost" horchen muss. Der Einsatz von NAT ist kein Problem. Beim Benutzer ist keine Portweiterleitung auf dem Router notwendig. Die Administration klappt an jedem Anschluss.
Der Administrator muss dem Benutzer nur einen SSH-Tunnel-Zugang im Internet (echter Server, vServer, DynDNS...) bereitstellen. Ich habe einen SSH-Key ausgetauscht und diesen per
~/.ssh/authorized_keys
Code: Alles auswählen
command="/bin/false" ssh-rsa ....
Für die Optik sollte man die Screen-Statuszeile beim Benutzer einblenden.
Code: Alles auswählen
/home/benutzer/.screenrc
hardstatus alwayslastline '[%H] %Lw%=%u %d.%m.%y %c '
Code: Alles auswählen
ssh -t -t -N -R 2222:localhost:22 user@adminrechner-erreichbar-ueber-internet &
pid=$!
/usr/bin/screen -xRR
kill $!
Der Benutzer hat ein Problem (Internet muss schon gehen
![Wink ;-)](./images/smilies/icon_wink.gif)
Der Admin kann auf seinem System sehen, dass der Remote-Tunnel verfügbar ist (netstat -an) und verbindet sich entsprechend:
Code: Alles auswählen
ssh benutzer@localhost -p 2222
Code: Alles auswählen
screen -xRR
Theoretisch könnte der Aufruf natürlich auch automatisch und direkt für root erfolgen. So könnte man eine Vielzahl von Systemen auch ohne Benutzer fernwarten und müsste nicht einmal von außen einen SSH-Server für diese Systeme erreichbar machen. Das Screen-Zeug würde dann natürlich wegfallen.