Hauptmenü

rescueDialog

Begonnen von rudolfkoenig, 08 Oktober 2022, 10:19:26

Vorheriges Thema - Nächstes Thema

rudolfkoenig

Ich habe eine erste Version eines "FHEM-Rettungsystems" eingebaut, mit dem Ziel, eine FHEM-Installation fernzusteuern.
Man kann es mit dem FHEMWEB Attribut rescueDialog aktivieren.

Die aktuelle Version grob skizziert:
- der Hilfesuchende erstellt durch setzen des o.g. Attributes einen SSH-Schluessel, was dem Helfer irgendwie mittgeteilt werden muss.
- der Helfer leitet einen oeffentlich erreichbaren Port auf seinem SSH-Server um, und berechtigt einen Benutzer mit dem o.g. Schluessel (nur) fuer Port-Umleitungen.
- der Helfer teilt dem Hilfesuchenden die Adresse dieser Server mit
- der Hilfesuchende gibt die Adresse in einem FHEMWEB-Dialog ein, und startet SSH per Knopfdruck.
- der Helfer greift ueber den eigenen Server auf die Instanz des Clients zu.

Das Ganze kommt selbst mir schon zu kompliziert vor, und bin nicht sicher, ob es in einem Notfall, wo die Gegenseite nicht fuer diesen Fall vorbereitet ist, praktikabel ist.

Ich habe einfachere Loesungen im Kopf, die aber einen oeffentlichen Server benoetigen.
Der Vereinserver koennte dafuer herhalten, wenn ich wuesste wie man verhindert, dass das System missbraucht wird.

yersinia

Grundsätzlich finde ich die Idee und den Gedanken dahinter gut und vernünftig. Es ist sicherlich auch nicht verkehrt, sich als Community Gedanken zu machen, wie man hier helfend unterstützen könnte.

Wenn ich mir den typischen nicht-FHEM-User bzw. (in positiver Konnotation) noob/DAU bzw. "da hat sich immer mein Partner(m/w/d) drum gekümmert" finde ich die Vorgehensweise viel zu kompliziert. Woher soll diese Person wissen, was FHEM überhaupt ist? Wie es grundsätzlich funktioniert? Man kann kaum verlangen, adhoc die Einsteigerdoku zu lesen - oder?
Zitat von: rudolfkoenig am 08 Oktober 2022, 10:19:26Das Ganze kommt selbst mir schon zu kompliziert vor, und bin nicht sicher, ob es in einem Notfall, wo die Gegenseite nicht fuer diesen Fall vorbereitet ist, praktikabel ist.
Ja, du bist nicht allein. Dies ist auch meiner Meinung nach viel zu kompliziert.
Ich bin mir nicht sicher ob man überhaupt voraussetzen sollte, dass der/die/das Hilfesuchende es überhaupt zu FHEM (bzw der möglicherweisen passwort-geschützten Weboberfläche) schafft.

Was spricht gegen Lösungen von Anydesk oder Teamviewer oder ähnliche?
viele Grüße, yersinia
----
FHEM 6.3 (SVN) on RPi 4B with RasPi OS Bullseye (perl 5.32.1) | FTUI
nanoCUL->2x868(1x ser2net)@tsculfw, 1x433@Sduino | MQTT2 | Tasmota | ESPEasy
VCCU->14xSEC-SCo, 7xCC-RT-DN, 5xLC-Bl1PBU-FM, 3xTC-IT-WM-W-EU, 1xPB-2-WM55, 1xLC-Sw1PBU-FM, 1xES-PMSw1-Pl

mumpitzstuff

Bei Punkt 2 und 3 bin ich ausgestiegen. Wie soll das aussehen?

Wernieman

#3
Wir müssen hier von 2 Personen unterscheiden: Hilfesuchenden und Helfer.

Verstehe ich die Aufgaben (für den Hilfesuchenden) so richtig? (und in der Reihenfolge)
- Der Hilfesuchende  muß 1. auf FHEM kommen (ohne das wird es nicht gehen)
- Einen "Key" Generieren und dem Helfer mitteilen
- Eine IP/Servernamen in FHEM eintragen (Dialog)
- Obiges "aktivieren"
Da sehe ich keinen Punkt, den man vereinfachen könnte. Vor allem  der erste Punk "Wie komme ich auf FHEM", dürfte dort der Knacktpunkt sein (Edit: Ergänzung s.u.)

Die Aufgaben für den Helfenden:
- Einen SSH-Server bereitgestellt und am besten vorkonfiguriert haben (Siehe Anforderungen)
- den SSH-Key vom Hilfesuchenden  eintragen
- Serverdaten an Hilfesuchenden übermitteln
- Helfen ....

Dort ist wirklich die große Aufgabe, das am besten der SSH-Server schon vorher existieren und getestet sein sollte.

In dieser Zusammenfassung (insofern ich es richtig überblicke), sehe ich es als O.K. aus. Vor allem, das die Komplizierten Aufgaben eher beim Helfenden liegt. Gerade solche Aufgaben muß man vom Hilfesuchenden  vernhalten.

Nur mal am Rande:
Es gibt immer noch die Möglichkeit, über Video-Konferenz mit Desktopsharing/Fernsteuerung oder anderer Fernsteuerungs-Software zu arbeiten. Hat dann noch den Vorteil, das der Hilfesuchende mit Gucken kann (und sollte).

P.S. Habe oben extra von "Key" und nicht ssh-key gesprochen, da dem Hilfesuchenden es am beten möglichst einfach erklärt werden soll.

Edit:
Was mir so spontan einfällt:
Kann man es die Datengenerierung nicht auch "Umdrehen"?
D.h. der Helfende generiert ssh-key + Datensatz-Server und dieses wird vom Hilfesuchenden in sein FHEM eingepflegt? Am Besten mit "fertigem Packet"? Obiges würde sich für den Hilfesuchenden wie folgt vereinfachen:
- Der Hilfesuchende  muß 1. auf FHEM kommen (ohne das wird es nicht gehen)
- "Key" + IP/Servernamen in FHEM eintragen (Dialog) oder "Datei einspielen"
- Obiges "aktivieren"

Dann würde die Aufgabe für den Helfenden sein:
Die Aufgaben für den Helfenden:
- Einen SSH-Server bereitgestellt und am besten vorkonfiguriert haben (Siehe Anforderungen)
- den SSH-Key generieren
- Serverdaten  SSH-Key an Hilfesuchenden übermitteln
- Helfen ....
- Aufräumen (z.B. ssh-key löschen)
Vorteil einer Datei: Mann könnte auch Zusatzdaten wie z.B. ssh-port (wenn nicht Standard) einfach einpflegen ohne es komplizierter zu machen.

Edit2:
Obiges würde auch etwas "Ping-Pong", d.h. man Wartet auf eine Reaktion des anderen, reduzieren. Ich persönlich würde zwar eine Hilfe über geteilten Dektop (Egal ob Video-Konferenz oder Spezialisierter Software) besser finden, aber auf obiges würde ich mich als Helfer einlassen.
- Bitte um Input für Output
- When there is a Shell, there is a Way
- Wann war Dein letztes Backup?

Wie man Fragen stellt: https://tty1.net/smart-questions_de.html

rudolfkoenig

ZitatWas spricht gegen Lösungen von Anydesk oder Teamviewer oder ähnliche?
Dass man Teamviewer im Zweifelsfall installieren muss, man von der aktuellen Lizenzpolitik anhaengig ist, und es ist merkbar langsamer als ein Zugriff ueber ein SSH-Tunnel. Als Helfer wird man unbeabsichtigt  Zeuge von privaten Sachen, wie aufpoppende Email-Nachrichten, bereits geoffnete Tabs, etc. Der Rechner des Helfers kann fuer die Dauer der Hilfe nicht anderweitig verwendet werden.

rescueDialog hat sicher andere Nachteile, es ist eine Alternative.
Fuer den Hilfesuchenden nicht viel komplizierter als TeamVierwer, fuer den Helfer eindeutig aufwendiger.

ZitatVerstehe ich die Aufgaben (für den Hilfesuchenden) so richtig? (und in der Reihenfolge)
Ja. Fuers Key-Generieren muss man aber nichts machen, das macht FHEMWEB.
Nach Klicken auf "Rescue" im Menue kriegt man es im Dialog, siehe Anhang.

ZitatKann man es die Datengenerierung nicht auch "Umdrehen"?
Interessante Alternative. Der Nachteil ist, dass man mehr Daten ohne Unfall in FHEM eingeben muss. Vorteil, dass der Helfer nur einen Schritt ausfuehren muss. Man schickt dem Hilfesuchenden eine Email, der oeffnet das Fhemweb "+" Dialog, kippt die Daten per Copy&Paste rein, und klickt auf Execute. Ohne Copy&Paste ist es nicht realistisch, wir beten, dass der Hilfesuchende das beherrscht :) Diese Loesung ist mit wilden Perl-Konstrukten jetzt schon moeglich, aber ich werde es vereinfachen und dokumentieren, als weitere Alternative.

Wie auch immer: wichtig fuer mich ist einen Bewusstsein dafuer zu schaffen, dass ungeplante Fernwartung notwendig ist.