Hauptmenü

[gelöst]Rechteproblem?

Begonnen von matze1999, 05 Oktober 2023, 11:13:45

Vorheriges Thema - Nächstes Thema

matze1999

Hallo,

ich habe zwei shellscripte, die ich aus fhem per
{system("/opt/fhem/poweroff.sh")} ausführe, was mit "-1" quittiert wird.

Die scripte enthalten:

ssh user@192.168.123.123 "sudo poweroff"
Schlüssel wurden zwischen den Rechner getauscht, von der Kommandozeile des fhem Servers funktionieren beide scripte ohne Passwortabfrage.

Jetzt das Problem, in fhem funktioniert nur ein script, beim anderen kommt im log:

Host key verification failed. 

Hat jemand eine Idee, woran es liegt? Habe ich für fhem Rechte zu vergeben? Wie gesagt, ein script geht, dass andere nicht (identischer Inhalt bis auf user und IP Adresse) und von der Kommandozeile funktionieren beide scripte ohne Passwortabfrage.

matze1999

xenos1984

Bei dem Rechner, bei dem es nicht geht, ist vermutlich in der Datei /opt/fhem/.ssh/known_hosts ein falscher Host key (der den Zielrechner identifiziert) abgelegt - möglicherweise hast du bei dem Zielrechner irgendwann mal das Betriebssystem oder SSH neu installiert, dabei ändert sich der Host key, und SSH auf deinem FHEM-Rechner weigert sich, die Verbindung herzustellen, weil hier ein unbekannter Rechner auf dein Passwort lauern könnte.

Abhilfe (IP entsprechend ersetzen):

{system("ssh-keygen -f '/opt/fhem/.ssh/known_hosts' -R '192.168.123.123'")}

Am besten vorher schauen, ob die Datei wirklich diesen Eintrag enthält. (Von Hand per Texteditor entfernen sollte auch gehen.)

matze1999

Danke, bevor ich es probiere,

per Hand von terminal des servers funktioniert es, nur als script aus fhem nicht. Ich kann mich auch per ssh ohne Passwort einloggen, damit sollte doch der Host key in Ordnung sein, oder?

matze1999

MadMax-FHEM

Zitat von: matze1999 am 05 Oktober 2023, 12:16:47per Hand von terminal des servers funktioniert es, nur als script aus fhem nicht. Ich kann mich auch per ssh ohne Passwort einloggen, damit sollte doch der Host key in Ordnung sein, oder?

Im Terminal bist du da auch User fhem?

Gruß, Joachim
FHEM PI3B+ Bullseye: HM-CFG-USB, 40x HM, ZWave-USB, 13x ZWave, EnOcean-PI, 15x EnOcean, HUE/deCONZ, CO2, ESP-Multisensor, Shelly, alexa-fhem, ...
FHEM PI2 Buster: HM-CFG-USB, 25x HM, ZWave-USB, 4x ZWave, EnOcean-PI, 3x EnOcean, Shelly, ha-bridge, ...
FHEM PI3 Buster (Test)

matze1999

nein, das bin ich da nicht, sondern da bin ich pi.

Aber wie gesagt, eines geht das andere nicht.

matze1999

MadMax-FHEM

#5
Zitat von: matze1999 am 05 Oktober 2023, 13:05:33nein, das bin ich da nicht, sondern da bin ich pi.

Und dann wunderst du dich?

Also für pi hast du dann wohl passwortlosen Zugang inkl. Eintrag in knownhosts des Users pi gemacht...
...aber eben nicht für den User fhem.

Jeder User hat sein .ssh mit SEINEN Schlüsseln und SEINEN Einträgen für "bekannte Rechner"...

pi: /home/pi/.ssh

fhem (Standard): /opt/fhem/.ssh

Zitat von: matze1999 am 05 Oktober 2023, 13:05:33Aber wie gesagt, eines geht das andere nicht.
2 unterschiedliche Zielrechner? -> für den einen Rechner für User fhem eingerichtet, für den anderen Rechner nicht...
2 unterschiedliche User auf demselben Zielsystem? -> für den einen User auf dem Rechner für User fhem eingerichtet, für den anderen User auf dem Rechner nicht...

Gruß, Joachim
FHEM PI3B+ Bullseye: HM-CFG-USB, 40x HM, ZWave-USB, 13x ZWave, EnOcean-PI, 15x EnOcean, HUE/deCONZ, CO2, ESP-Multisensor, Shelly, alexa-fhem, ...
FHEM PI2 Buster: HM-CFG-USB, 25x HM, ZWave-USB, 4x ZWave, EnOcean-PI, 3x EnOcean, Shelly, ha-bridge, ...
FHEM PI3 Buster (Test)

matze1999

@MadMax,

das wars, manchmal ist es so einfach, ich hab jetzt auch gesehen, das ich das beim anderen Rechner schon so gemacht habe.  :-[

matze1999

MadMax-FHEM

Zitat von: matze1999 am 05 Oktober 2023, 11:13:45{system("/opt/fhem/poweroff.sh")} ausführe, was mit "-1" quittiert wird.

system wird immer mit -1 "quittiert", das sagt nichts drüber aus, ob es gegangen ist oder nicht ;)

Wenn du eine tatsächliche Rückmeldung auswerten willst: qx()

Aber dein system() und auch qx() blockieren fhem (wenn man im Script nichts dagegen tut)...

Siehe auch: https://heinz-otto.blogspot.com/2018/02/in-fhem-externe-programme-aufrufen.html

Gruß, Joachim
FHEM PI3B+ Bullseye: HM-CFG-USB, 40x HM, ZWave-USB, 13x ZWave, EnOcean-PI, 15x EnOcean, HUE/deCONZ, CO2, ESP-Multisensor, Shelly, alexa-fhem, ...
FHEM PI2 Buster: HM-CFG-USB, 25x HM, ZWave-USB, 4x ZWave, EnOcean-PI, 3x EnOcean, Shelly, ha-bridge, ...
FHEM PI3 Buster (Test)