[solved] Alexa Fhem fhem Lazy bringt bei der Einrichtung Schreibrechtefehler

Begonnen von maddinthebrain, 26 Januar 2019, 11:30:07

Vorheriges Thema - Nächstes Thema

maddinthebrain

Hallo,
Ich habe Alexa Fhem nach dem Wiki Beitrag eingerichtet. Leider bringt das Device den Fehler "error; user homedir writable by group/other ('chmod 755 /opt/fhem' required)" das Dumme ist aber, das die Rechte eigentlich schon richtig sind... Was passt da nicht?

Grüße Martin
Viele Grüße
Martin

Futro mit Proxmox und Debian: FHEM, Signalduino 433MHz & 868MHz, MAX!, WeeWX, FHEM2FHEM,
Raspi 4 mit ConBee mit deCONZ und Phoscon für ZigBee Aktoren und Sensoren

karpate

Hallo Martin,

bei mir hat geholfen:
sudo chown -R fhem /opt/fhem/
sudo chmod -R 755 /opt/fhem/


Gruß
# Pi3 (BBB;FB7390)
# TCM310, CUL V4, HM-CFG-LAN,JeeLink,Tradfri,ESP32-Cam@MQTT: Wasseruhr

maddinthebrain

Tja, ist eigentlich schon so. Hab es trotzdem noch mal gemacht, leider hilft das nix.

Grüße Martin
Viele Grüße
Martin

Futro mit Proxmox und Debian: FHEM, Signalduino 433MHz & 868MHz, MAX!, WeeWX, FHEM2FHEM,
Raspi 4 mit ConBee mit deCONZ und Phoscon für ZigBee Aktoren und Sensoren

maddinthebrain

also ich denke, das hängt damit zusammen, dass das Fhem Verzeichnis über eine SAMBA Freigabe eingebunden ist. So geht das wunderbar, Alexafhem hat damit wohl ein Problem...
Muss ich mal eine Lösung suchen. Oder jemand weiß eine

Grüße Maritn
Viele Grüße
Martin

Futro mit Proxmox und Debian: FHEM, Signalduino 433MHz & 868MHz, MAX!, WeeWX, FHEM2FHEM,
Raspi 4 mit ConBee mit deCONZ und Phoscon für ZigBee Aktoren und Sensoren

fredl99

Ist der Server ein Windows-Rechner oder Linux mit Samba-Server?
Dann könnte man entweder dort an den Export-Optionen drehen oder eben am Client beim Import.
Zeig halt einmal die Ausgabe von mount | grep -i fhem am Client bitte.

Und wie machst Du die Einbindung? Wenn über die fstab, dann bitte die entsprechende Zeile daraus zeigen.

maddinthebrain

Na dann schauen wir mal. Die Freigabe liegt auf einer NAS, die hat Linux, jedoch werden die Freigaben per Samba verwaltet und daher auch so eingebunden.


pi@raspberrypi:~ $ mount | grep -i fhem
systemd-1 on /opt/fhem type autofs (rw,relatime,fd=50,pgrp=1,timeout=0,minproto=5,maxproto=5,direct)
//192.168.178.23/Daten/fhem on /opt/fhem type cifs (rw,relatime,vers=1.0,cache=strict,username=xxxx,domain=LS-QVL500,uid=0,noforceuid,gid=20,forcegid,addr=192.168.178.23,file_mode=0775,dir_mode=0775,nounix,mapposix,rsize=61440,wsize=65536,echo_interval=60,actimeo=1)


Auszug aus fstab:

192.168.178.23/Daten/fhem /opt/fhem    cifs  defaults,auto,username=xxxx,passwd=xxxx,x-systemd.automount,x-systemd.requires=network-online.target,file_mode=0775,dir_mode=0775,gid=20 0 0

Ich persönlich bin nicht so glücklich darüber, jedoch hatte ich keine Muße und keine Not das zu ändern. Verbesserungsvorschläge sind willkommen.

Viele Grüße

Martin
Viele Grüße
Martin

Futro mit Proxmox und Debian: FHEM, Signalduino 433MHz & 868MHz, MAX!, WeeWX, FHEM2FHEM,
Raspi 4 mit ConBee mit deCONZ und Phoscon für ZigBee Aktoren und Sensoren

fredl99

NFS wäre zwischen zwei Linux-Rechnern wahrscheinlich einfacher, aber wenn's schonmal so läuft...

Wenn ich es richtig deute, müsste der Eigentümer von /opt/fhem am Client dann root selbst sein. Ich würde bei den mount-Optionen auch die uid des fhem-Users eintragen. Die bekommst Du mit id fhem raus.
Die gid dürfte stimmen, wenn 20 der Gruppe dialout entspricht.

Danach remounten: sudo mount -o remount //192.168.178.23/Daten/fhem

Da der automounter auch mit im Spiel ist, könnte auch ein reboot helfen. Linux-like wäre zwar, den alleine neu zu starten, aber schneller geht's sicher mit reboot.

Gewährleistungsausschluss: Ungetesteter Schuss ins Blaue.


gvzdus

Die Code-Stelle, an der "er" meckert, hatte ich eigentlich extra eingebaut, um nachfolgende Fehler bei SSH abzufangen.
Sie liegt in der Datei "user.js" (vermutlich bei Dir):
/usr/lib/node_modules/alexa-fhem/lib/user.js
ab Zeile 388.

Warum sie sich "irren" sollte, ist mir aber nicht klar. Liegt Dein Homedir vielleicht gar nicht unter /opt/fhem ?

Wo er was findet, wird (beim Restart / Start) hier geloggt:

[2019-1-27 08:13:25] sshautoconf: home=/opt/fhem, spath=/opt/fhem/.alexa, cpath=./alexa-fhem.cfg, sshpath=/opt/fhem/.ssh

Falls da tatsächlich /opt/fhem steht, kannst Du ja mal probeweise die 5 Zeilen in user.js löschen. Allerdings würde ich erwarten, dass dann SSH beim Start über das Group-Writeable-Dir meckert.

maddinthebrain

#8
So, der mount Punkt für das Fehm Home ist /opt/fhem. Das sollte also passen. Die Rechte passen auch.

ZitatNFS wäre zwischen zwei Linux-Rechnern wahrscheinlich einfacher, aber wenn's schonmal so läuft...
Klar, die Nas Software kann das aber nicht... Das mit dem fhem User probiere, dann wenn das mit den fehlenden Dateien klar ist.

ZitatDie Code-Stelle, an der "er" meckert, hatte ich eigentlich extra eingebaut, um nachfolgende Fehler bei SSH abzufangen.
Sie liegt in der Datei "user.js" (vermutlich bei Dir):
/usr/lib/node_modules/alexa-fhem/lib/user.js
ab Zeile 388.
Jedoch diese Datei, welche du erwähnt hast, gibt es nicht. Genauso wenig wie den Ordner, wo sie drin sein sollte. Aber es gibt /usr/local/lib/node_modules/alexa-fhem/

Dort Ls - la ergibt drwxr-sr-x  5 nobody pi 4096 Feb  3 21:48 ..
drwxr-sr-x  2 pi     pi 4096 Feb  3 21:48 bin
-rw-r--r--  1 pi     pi  703 Okt 26  1985 config-sample.json
-rwxr-xr-x  1 pi     pi  158 Okt 26  1985 createKey.sh
-rw-r--r--  1 pi     pi 1679 Okt 26  1985 key
-rw-r--r--  1 pi     pi 2444 Okt 26  1985 lambda.js
drwxr-sr-x  2 pi     pi 4096 Feb  3 21:48 lib
drwxr-sr-x 62 root   pi 4096 Feb  3 21:48 node_modules
-rw-r--r--  1 pi     pi 1484 Feb  3 21:48 package.json
-rw-r--r--  1 pi     pi   87 Okt 26  1985 README.md


Das Verzeichnis /usr/lib/node_modules/alexa-fhem existiert nicht. Beim Installieren sudo npm install -g alexa-fhem
/usr/local/bin/alexa-fhem -> /usr/local/lib/node_modules/alexa-fhem/bin/alexa
+ alexa-fhem@0.5.15
updated 1 package in 4.832s
pi@raspberrypi:/usr/local/lib/node_modules/alexa-fhem $ ls -la
insgesamt 44
drwxr-sr-x  5 root   pi 4096 Feb  3 21:48 .
drwxr-sr-x  5 nobody pi 4096 Feb  3 21:48 ..
drwxr-sr-x  2 pi     pi 4096 Feb  3 21:48 bin
-rw-r--r--  1 pi     pi  703 Okt 26  1985 config-sample.json
-rwxr-xr-x  1 pi     pi  158 Okt 26  1985 createKey.sh
-rw-r--r--  1 pi     pi 1679 Okt 26  1985 key
-rw-r--r--  1 pi     pi 2444 Okt 26  1985 lambda.js
drwxr-sr-x  2 pi     pi 4096 Feb  3 21:48 lib
drwxr-sr-x 62 root   pi 4096 Feb  3 21:48 node_modules
-rw-r--r--  1 pi     pi 1484 Feb  3 21:48 package.json
-rw-r--r--  1 pi     pi   87 Okt 26  1985 README.md


Ich bin der Anleitung aus dem Wiki gefolgt https://wiki.fhem.de/wiki/FHEM_Connector#Alexa-FHEM_aktivieren.

Mir kommt das komisch vor...

Grüße Martin
Viele Grüße
Martin

Futro mit Proxmox und Debian: FHEM, Signalduino 433MHz & 868MHz, MAX!, WeeWX, FHEM2FHEM,
Raspi 4 mit ConBee mit deCONZ und Phoscon für ZigBee Aktoren und Sensoren

fredl99

Zitatder mount Punkt für das Fehm Home ist /opt/fhem. Das sollte also passen. Die Rechte passen auch.
Und der Eigentümer?
ls -l /opt/

Zusätzlich auch: ls -la /opt/fhem/

maddinthebrain

Der Eigentümer ist nun fhem
pi@raspberrypi:~ $ ls -la /opt/fhem/
insgesamt 15364
drwxrwxr-x 2 fhem dialout      0 Feb  3 22:16 .
drwxr-xr-x 9 root root      4096 Aug 12 07:12 ..
-rwxrwxr-x 1 fhem dialout 223265 Jun  7  2017 32_WifiLight.pm
drwxrwxr-x 2 fhem dialout      0 Jan 25 22:16 .alexa
drwxrwxr-x 2 fhem dialout      0 Jan 26 17:27 alexa-fhem
-rwxrwxr-x 1 fhem dialout  39546 Jan 26 17:24 alexa-fhem-0.4.4.tgz
-rwxrwxr-x 1 fhem dialout    311 Feb  3 22:16 alexa-fhem.cfg
-rwxrwxr-x 1 fhem dialout    311 Jan 25 22:22 alexa-fhem.cfg.previous
drwxrwxr-x 2 fhem dialout      0 Feb  1 21:09 backup
-rwxrwxr-x 1 fhem dialout     82 Apr 11  2018 backup_signalduino.txt
-rwxrwxr-x 1 fhem dialout 276748 Feb  1 21:11 CHANGED
-rwxrwxr-x 1 fhem dialout    927 Jan 16 22:56 configDB.conf
-rwxrwxr-x 1 fhem dialout  39621 Feb  1 21:11 configDB.pm
drwxrwxr-x 2 fhem dialout      0 Sep 16  2017 contrib
-rwxrwxr-x 1 fhem dialout    916 Okt 29 22:08 db.conf
drwxrwxr-x 2 fhem dialout      0 Sep 16  2017 demolog
drwxrwxr-x 2 fhem dialout      0 Sep 16  2017 docs
drwxrwxr-x 2 fhem dialout      0 Feb  1 21:11 FHEM
-rwxrwxr-x 1 fhem dialout  53764 Feb  4 21:10 fhem.cfg
-rwxrwxr-x 1 fhem dialout  19987 Sep 17 18:14 fhem.cfg.demo
-rwxrwxr-x 1 fhem dialout 155807 Feb  1 21:11 fhem.pl
-rwxrwxr-x 1 fhem dialout      0 Aug 26 03:44 FileLog_SD_WS_50_SM_2-2018.log
-rwxrwxr-x 1 fhem dialout      0 Jan  1 00:00 FileLog_SD_WS_50_SM_2-2019.log
-rwxrwxr-x 1 fhem dialout  10699 Jan 26 17:24 index.php?action=dlattach
drwxrwxr-x 2 fhem dialout      0 Mai  3  2018 _Inline
drwxrwxr-x 2 fhem dialout      0 Feb  4 00:00 log
-rwxrwxr-x 1 fhem dialout  39523 Feb  1 21:11 MAINTAINER.txt
-rwxrwxr-x 1 fhem dialout    935 Feb 19  2017 README_DEMO.txt
drwxrwxr-x 2 fhem dialout      0 Mai 18  2018 restoreDir
drwxrwxr-x 2 fhem dialout      0 Mär  8  2018 unused
drwxrwxr-x 2 fhem dialout      0 Sep 28  2017 www


Jedoch hat das für das Alexa device keinen Einfluss.
Der Status ist unverändert. Und jammert dass Schreibrechte fehlen. So langsam glaube ich, dass was an Dateien fehlt.

Node Version ist v10.15.0. Wie im letzten Post habe ich das npm Package installiert. Was könnte es noch sein?

Grüße Martin
Viele Grüße
Martin

Futro mit Proxmox und Debian: FHEM, Signalduino 433MHz & 868MHz, MAX!, WeeWX, FHEM2FHEM,
Raspi 4 mit ConBee mit deCONZ und Phoscon für ZigBee Aktoren und Sensoren

MadMax-FHEM

Wie ist denn die Samba-Freigabe serverseitig konfiguriert?

Das eine sind ja die Dateiberechtigungen auf OS-/Dateisystemebene das andere was der Sambaserver "zulässt", nicht dass es sich da "beißt"...

Nur als Idee...

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)

maddinthebrain

#12
Die Freigabe auf der NAS ist mit Lese- und Schreibrechten gemacht, mehr lässt sich gar nicht einstellen. Auf die Linux Ebene komme ich bei der NAS gar nicht.
Ich hatte bisher überhaupt kein Problem mit dieser Art und Weise der Einbindung des FHEM Ordners. FHEM schreibt wunderbar seine Logfiles, die CFG wird auch ohne Probleme geschrieben. Das liegt ja alles in dem Ordner, explizit die fhem.cfg liegt ja in dem Ordner der bejammert wird.

Welcher user führt den dieses Alexa-fhem aus? der fhem Nutzer?

Die alexa-fhem.cfg sieht so aus:
GNU nano 2.2.6 Datei: alexa-fhem.cfg
{
   "connections" : [ {
         "uid" : 999, "server" : "127.0.0.1",
         "webname" : "fhem",
         "port" : "8083",
         "name" : "FHEM",
         "filter" : "alexaName=..*"
      }
   ],
   "sshproxy" : {
      "description" : "FHEM Connector",
      "ssh" : "/usr/bin/ssh"
   }
}


Ich würde gerne eine Lösung mit erarbeiten (debuggen), weiß aber nicht was ich noch sinnvoll beitragen kann.

Was mir noch eingefallen ist: Ist es ein Problem, dass die Ordner- und Dateirechte 775 sind und nicht wie gewünscht 755? Hat er ein evtl. Problem damit, dass er zuviel Rechte hat?

Grüße Martin
Viele Grüße
Martin

Futro mit Proxmox und Debian: FHEM, Signalduino 433MHz & 868MHz, MAX!, WeeWX, FHEM2FHEM,
Raspi 4 mit ConBee mit deCONZ und Phoscon für ZigBee Aktoren und Sensoren

fredl99

Das hat gvzdus oben gemeint. SSH verweigert die Arbeit wenn die Userdateien zu weite Rechte haben.
Nebenbei sehe ich bei dir gar kein ~/.ssh Verzeichnis für fhem.

Das Log vom Start wäre sicher interessant.

maddinthebrain

#14
Ok, hatte ich überlesen. Ich habe es mal angepasst. Nun machen wir Fortschritte, er läuft aber gegen eine neue Mauer:

error; Reverse Proxy replied with neither registered nor unregistered status: out:  err:Warning: Permanently added '[fhem-va.fhem.de]:58824,[2a01:4f8:10a:806::f2]:58824' (RSA) to the list of known hosts.
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@         WARNING: UNPROTECTED PRIVATE KEY FILE!          @
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
Permissions 0755 for '/opt/fhem/.ssh/id_rsa' are too open.
It is recommended that your private key files are NOT accessible by others.
This private key will be ignored.
key_load_private_type: bad permissions
Permission denied (keyboard-interactive,publickey).


Welches Log meint ihr denn genau? Von alexa fhem?

Das sieht so aus:
[2019-2-5 12:45:34] Got SIGTERM, shutting down alexa-fhem...                 
[2019-2-5 12:45:34] Reading alexaFHEM.ProxyConnection set to stopping;; alex$
[2019-2-5 12:45:34] [FHEM]   executing: http://127.0.0.1:8083/fhem?cmd=%7B%2$
[2019-2-5 12:47:46] using config from ./alexa-fhem.cfg                       
*** CONFIG: parsed completely                                               
[2019-2-5 12:47:46] os.homedir()=/opt/fhem                                   
[2019-2-5 12:47:46] this is alexa-fhem 0.5.15
[2019-2-5 12:47:46] connecting to FHEM ...
[2019-2-5 12:47:48] [FHEM] trying longpoll to listen for fhem events         
[2019-2-5 12:47:48] [FHEM] starting longpoll: http://127.0.0.1:8083/fhem?XHR$
[2019-2-5 12:47:55] [FHEM] got csrfToken:                                   
[2019-2-5 12:47:55] [FHEM] Checking devices and attributes...               
[2019-2-5 12:47:55] [FHEM]   executing: http://127.0.0.1:8083/fhem?cmd=%7BAt$
[2019-2-5 12:47:55] [FHEM]   executing: http://127.0.0.1:8083/fhem?cmd=jsonl$
[2019-2-5 12:47:55] [FHEM] waiting for events ...
[2019-2-5 12:47:55] [FHEM] Fetching FHEM devices...                         
[2019-2-5 12:47:55] [FHEM] fetching: http://127.0.0.1:8083/fhem?cmd=jsonlist$
[2019-2-5 12:47:56] [FHEM] alexa device is Alexa                             

GNU nano 2.2.6    Datei: /opt/fhem/log/alexa-2019-02-05.log               
[2019-2-5 12:45:34] Got SIGTERM, shutting down alexa-fhem...                 
[2019-2-5 12:45:34] Reading alexaFHEM.ProxyConnection set to stopping;; alex$
[2019-2-5 12:45:34] [FHEM]   executing: http://127.0.0.1:8083/fhem?cmd=%7B%2$
[2019-2-5 12:47:46] using config from ./alexa-fhem.cfg                       
*** CONFIG: parsed completely                                               
[2019-2-5 12:47:46] os.homedir()=/opt/fhem                                   
[2019-2-5 12:47:46] this is alexa-fhem 0.5.15                               
[2019-2-5 12:47:46] connecting to FHEM ...                                   
[2019-2-5 12:47:48] [FHEM] trying longpoll to listen for fhem events         
[2019-2-5 12:47:48] [FHEM] starting longpoll: http://127.0.0.1:8083/fhem?XHR$
[2019-2-5 12:47:55] [FHEM] got csrfToken:                                   
[2019-2-5 12:47:55] [FHEM] Checking devices and attributes...               
[2019-2-5 12:47:55] [FHEM]   executing: http://127.0.0.1:8083/fhem?cmd=%7BAt$
[2019-2-5 12:47:55] [FHEM]   executing: http://127.0.0.1:8083/fhem?cmd=jsonl$
[2019-2-5 12:47:55] [FHEM] waiting for events ...                           
[2019-2-5 12:47:55] [FHEM] Fetching FHEM devices...                         
[2019-2-5 12:47:55] [FHEM] fetching: http://127.0.0.1:8083/fhem?cmd=jsonlist$
[2019-2-5 12:47:56] [FHEM] alexa device is Alexa                             
[2019-2-5 12:47:56] [FHEM]   executing: http://127.0.0.1:8083/fhem?cmd=%7B%2$
[2019-2-5 12:47:56] [FHEM]   executing: http://127.0.0.1:8083/fhem?cmd=%7B%2$
[2019-2-5 12:47:56] [FHEM]   executing: http://127.0.0.1:8083/fhem?cmd=%7B%2$
[2019-2-5 12:47:56] Server listening on: http://127.0.0.1:39581 for proxy co$
[2019-2-5 12:47:56] *** SSH: checking proxy configuration                   
[2019-2-5 12:47:56] sshautoconf: home=/opt/fhem, spath=/opt/fhem/.alexa, cpa$
[2019-2-5 12:47:56] Passed config: {"connections":[{"uid":999,"server":"127.$
[2019-2-5 12:47:56] sshautoconf: No SSH public key found, we have to generat$
[2019-2-5 12:47:58] sshautoconf: Generating public/private rsa key pair.
Created directory '/opt/fhem/.ssh'.
Your identification has been saved in /opt/fhem/.ssh/id_rsa.
Your public key has been saved in /opt/fhem/.ssh/id_rsa.pub.
The key fingerprint is:
XXXXXXXX
fhem@raspberrypi             The key's randomart image is:
+---[RSA 2048]----+
|       XXXXXX.     
           
[2019-2-5 12:47:58] sshautoconf: aborted with Reverse Proxy replied with nei$
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@                 
@         WARNING: UNPROTECTED PRIVATE KEY FILE!          @                 
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@                 
Permissions 0755 for '/opt/fhem/.ssh/id_rsa' are too open.                   
It is recommended that your private key files are NOT accessible by others.  This private key will be ignored.                                           
key_load_private_type: bad permissions                                       Permission denied (keyboard-interactive,publickey).                         
[2019-2-5 12:47:58] *** SSH: proxy configuration failed: Reverse Proxy repli$
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@                 
@         WARNING: UNPROTECTED PRIVATE KEY FILE!          @                 
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@                 
Permissions 0755 for '/opt/fhem/.ssh/id_rsa' are too open.                   
It is recommended that your private key files are NOT accessible by others.  This private key will be ignored.                                           
key_load_private_type: bad permissions                                       
Permission denied (keyboard-interactive,publickey).                         
*** FHEM: connected                                                         
[2019-2-5 12:47:58] [FHEM] got: 0 results
[2019-2-5 12:47:58] No reading "alexaFHEM.bearerToken" found in "Alexa" - in$
[2019-2-5 12:47:59] Reading alexaFHEM.ProxyConnection set to error;; Reverse$
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@                 
@         WARNING: UNPROTECTED PRIVATE KEY FILE!          @
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
Permissions 0755 for '/opt/fhem/.ssh/id_rsa' are too open.                   
It is recommended that your private key files are NOT accessible by others.  This private key will be ignored.
key_load_private_type: bad permissions
Permission denied (keyboard-interactive,publickey).                         
*** FHEM: connected                                                         
[2019-2-5 12:47:58] [FHEM] got: 0 results                                   
[2019-2-5 12:47:58] No reading "alexaFHEM.bearerToken" found in "Alexa" - in$
[2019-2-5 12:47:59] Reading alexaFHEM.ProxyConnection set to error;; Reverse$
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@         WARNING: UNPROTECTED PRIVATE KEY FILE!          @                 
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@                 
Permissions 0755 for '/opt/fhem/.ssh/id_rsa' are too open.                   
It is recommended that your private key files are NOT accessible by others.
This private key will be ignored.                                           
key_load_private_type: bad permissions                                       
Permission denied (keyboard-interactive,publickey).
[2019-2-5 12:47:59] [FHEM]   executing: http://127.0.0.1:8083/fhem?cmd=%7B%23


Für mich sieht das so aus, dass meine Art wie ich den Fhem Ordner benutze mit dem Alexa-Fhem wegen der Rechte nicht funzt. Man die Rechte auch nur zum Mountzeitpunkt vorgeben. Mit Chmod die Rechte von .ssh/ auf 700 ändern geht bei dieser Art nicht. :( Aber Lokal auf der SD-Karte speichern möchte ich Fhem nicht, weil mir wegen der vielen Schreiberei schon SD-Karten kaputt gingen.

Grüße Martin
Viele Grüße
Martin

Futro mit Proxmox und Debian: FHEM, Signalduino 433MHz & 868MHz, MAX!, WeeWX, FHEM2FHEM,
Raspi 4 mit ConBee mit deCONZ und Phoscon für ZigBee Aktoren und Sensoren

fredl99

Na also, da haben wir's :-)
Das log von alexa wird im obigen Log eh genannt.

Im Grunde braucht niemand außer Eigentümer und Gruppe Zugriff auf fhem. Also kannst auch gleich die ganze Freigabe mit 750 mounten.
file_mode=0770,dir_mode=0770

maddinthebrain

Ja, habe ich gleich probiert. Er stößt sich aber jetzt daran, dass /opt/fhem/.ssh/id_rsa immer noch zu hohe Rechte hat:
error; users ssh key not protected by group/other ('chmod 600 /opt/fhem/.ssh/id_rsa' required)
Man aber die Rechte von dem eingehängten Verzeichnisbaum nicht mehr anpassen. Oh Mann...

Die Lösung über eine Samba-Freigabe erweist sich als keine gute Idee...
Viele Grüße
Martin

Futro mit Proxmox und Debian: FHEM, Signalduino 433MHz & 868MHz, MAX!, WeeWX, FHEM2FHEM,
Raspi 4 mit ConBee mit deCONZ und Phoscon für ZigBee Aktoren und Sensoren

fredl99

Hab ich gleich gesagt :-)
Aber noch ist nichts verloren.
Du kannst das Verzeichnis ./ssh separat mit engeren Rechten drüber mounten.
Also einen zweiten Eintrag in fstab _nach_ dem ersten.
Da gibst du als Ziel das ssh Verzeichnis an und die 600 als Option.
Ob du dafür eine eigene Freigabe am Samba einrichten musst, kann ich jetzt nicht sagen.

maddinthebrain

#18
Ahhhhhhhhhhhh! Es ist zum verrückt werden! Jetzt hat .ssh/ mod 600 und es im Reading kommt error; ssh-keygen returned error - key_save_private: Permission denied >:(
Im Log steht:

[2019-2-5 14:15:01] [FHEM]   executing: http://127.0.0.1:8083/fhem?cmd=%7B%2$
[2019-2-5 15:33:37] Got SIGTERM, shutting down alexa-fhem...                 [2019-2-5 15:33:37] Reading alexaFHEM.ProxyConnection set to stopping;; alex$
[2019-2-5 15:33:37] [FHEM]   executing: http://127.0.0.1:8083/fhem?cmd=%7B%2$
[2019-2-5 15:34:19] using config from ./alexa-fhem.cfg
*** CONFIG: parsed completely                                                [2019-2-5 15:34:20] os.homedir()=/opt/fhem                                   [2019-2-5 15:34:20] this is alexa-fhem 0.5.15
[2019-2-5 15:34:20] connecting to FHEM ...
[2019-2-5 15:34:21] [FHEM] trying longpoll to listen for fhem events       
[2019-2-5 15:34:21] [FHEM] starting longpoll: http://127.0.0.1:8083/fhem?XHR$
[2019-2-5 15:34:28] [FHEM] got csrfToken:                                    [2019-2-5 15:34:28] [FHEM] Checking devices and attributes...               
[2019-2-5 15:34:28] [FHEM]   executing: http://127.0.0.1:8083/fhem?cmd=%7BAt$
[2019-2-5 15:34:28] [FHEM]   executing: http://127.0.0.1:8083/fhem?cmd=jsonl$
[2019-2-5 15:34:28] [FHEM] waiting for events ...
[2019-2-5 15:34:28] [FHEM] Fetching FHEM devices...                          [2019-2-5 15:34:28] [FHEM] fetching: http://127.0.0.1:8083/fhem?cmd=jsonlist$
[2019-2-5 15:34:29] [FHEM] alexa device is Alexa                             [2019-2-5 15:34:29] [FHEM]   executing: http://127.0.0.1:8083/fhem?cmd=%7B%2$
[2019-2-5 15:34:29] [FHEM]   executing: http://127.0.0.1:8083/fhem?cmd=%7B%2$
[2019-2-5 15:34:29] [FHEM]   executing: http://127.0.0.1:8083/fhem?cmd=%7B%2$
[2019-2-5 15:34:29] Server listening on: http://127.0.0.1:43007 for proxy co$
[2019-2-5 15:34:29] *** SSH: checking proxy configuration                    [2019-2-5 15:34:29] sshautoconf: home=/opt/fhem, spath=/opt/fhem/.alexa, cpa$
[2019-2-5 15:34:29] Passed config: {"connections":[{"uid":999,"server":"127.$
[2019-2-5 15:34:29] sshautoconf: No SSH public key found, we have to generat$
[2019-2-5 15:34:30] sshautoconf: aborted with ssh-keygen returned error - ke$
[2019-2-5 15:34:30] *** SSH: proxy configuration failed: ssh-keygen returned$*** FHEM: connected                                                          [2019-2-5 15:34:30] [FHEM] got: 0 results
[2019-2-5 15:34:30] No reading "alexaFHEM.bearerToken" found in "Alexa" - in$
[2019-2-5 15:34:31] Reading alexaFHEM.ProxyConnection set to error;; ssh-key$
[2019-2-5 15:34:31] [FHEM]   executing: http://127.0.0.1:8083/fhem?cmd=%7B%2
*** FHEM: connected                                                         
[2019-2-5 15:34:30] [FHEM] got: 0 results                                    [2019-2-5 15:34:30] No reading "alexaFHEM.bearerToken" found in "Alexa" - in$
[2019-2-5 15:34:31] Reading alexaFHEM.ProxyConnection set to error;; ssh-key$
[2019-2-5 15:34:31] [FHEM]   executing: http://127.0.0.1:8083/fhem?cmd=%7B%2$


So langsam wirds albern
Viele Grüße
Martin

Futro mit Proxmox und Debian: FHEM, Signalduino 433MHz & 868MHz, MAX!, WeeWX, FHEM2FHEM,
Raspi 4 mit ConBee mit deCONZ und Phoscon für ZigBee Aktoren und Sensoren

gvzdus

... und ganz radikal /opt/fhem auf die Flash-Karte ziehen, aber das log-Unterverzeichnis auf Samba zu legen?

fredl99

Du musst schon dazusagen, was du jetzt geändert hast.
Wenn du meinem Vorschlag nach das .ssh drüber gemountet hast, versteh ich grad nicht wieso es den pubkey nicht findet. Der wurde ja zuletzt schon erzeugt.
Zeig einmal das aktuelle ls -la von /opt/fhem/ und /opt/fhem/.ssh/

maddinthebrain

So, jetzt habe ich es geschafft. Mit 0700 geht's. Mit 0600 geht es nicht. Da wäre mein Hinweis an den Entwickler, bitte den Hinweis der Fehlermeldung anpassen!

Zitat von: fredl99 am 05 Februar 2019, 14:47:59
Hab ich gleich gesagt :-)
Aber noch ist nichts verloren.
Du kannst das Verzeichnis ./ssh separat mit engeren Rechten drüber mounten.
Also einen zweiten Eintrag in fstab _nach_ dem ersten.
Da gibst du als Ziel das ssh Verzeichnis an und die 600 als Option.
Ob du dafür eine eigene Freigabe am Samba einrichten musst, kann ich jetzt nicht sagen.

Ja habe ich so gemacht. Wie gesagt 0600 geht nicht, 0700 schon.

So schaut das jetzt aus:

pi@raspberrypi:~ $ ls -la /opt/fhem/
insgesamt 16388
drwxr-x--- 2 fhem dialout      0 Feb  5 19:36 .
drwxr-xr-x 9 root root      4096 Aug 12 07:12 ..
-rwxr-x--- 1 fhem dialout 223265 Jun  7  2017 32_WifiLight.pm
drwxr-x--- 2 fhem dialout      0 Jan 25 22:16 .alexa
drwxr-x--- 2 fhem dialout      0 Jan 26 17:27 alexa-fhem
-rwxr-x--- 1 fhem dialout  39546 Jan 26 17:24 alexa-fhem-0.4.4.tgz
-rwxr-x--- 1 fhem dialout    311 Feb  5 19:36 alexa-fhem.cfg
-rwxr-x--- 1 fhem dialout    311 Feb  5 19:28 alexa-fhem.cfg.bak
-rwxr-x--- 1 fhem dialout    311 Feb  3 22:16 alexa-fhem.cfg.previous
drwxr-x--- 2 fhem dialout      0 Feb  1 21:09 backup
-rwxr-x--- 1 fhem dialout     82 Apr 11  2018 backup_signalduino.txt
-rwxr-x--- 1 fhem dialout 276748 Feb  1 21:11 CHANGED
-rwxr-x--- 1 fhem dialout    927 Jan 16 22:56 configDB.conf
-rwxr-x--- 1 fhem dialout  39621 Feb  1 21:11 configDB.pm
drwxr-x--- 2 fhem dialout      0 Sep 16  2017 contrib
-rwxr-x--- 1 fhem dialout    916 Okt 29 22:08 db.conf
drwxr-x--- 2 fhem dialout      0 Sep 16  2017 demolog
drwxr-x--- 2 fhem dialout      0 Sep 16  2017 docs
drwxr-x--- 2 fhem dialout      0 Feb  1 21:11 FHEM
-rwxr-x--- 1 fhem dialout  53764 Feb  5 19:37 fhem.cfg
-rwxr-x--- 1 fhem dialout  19987 Sep 17 18:14 fhem.cfg.demo
-rwxr-x--- 1 fhem dialout 155807 Feb  1 21:11 fhem.pl
-rwxr-x--- 1 fhem dialout      0 Aug 26 03:44 FileLog_SD_WS_50_SM_2-2018.log
-rwxr-x--- 1 fhem dialout      0 Jan  1 00:00 FileLog_SD_WS_50_SM_2-2019.log
-rwxr-x--- 1 fhem dialout  10699 Jan 26 17:24 index.php?action=dlattach
drwxr-x--- 2 fhem dialout      0 Mai  3  2018 _Inline
drwxr-x--- 2 fhem dialout      0 Feb  5 00:00 log
-rwxr-x--- 1 fhem dialout  39523 Feb  1 21:11 MAINTAINER.txt
-rwxr-x--- 1 fhem dialout    935 Feb 19  2017 README_DEMO.txt
drwxr-x--- 2 fhem dialout      0 Mai 18  2018 restoreDir
drwx------ 2 fhem dialout      0 Feb  5 12:47 .ssh
drwxr-x--- 2 fhem dialout      0 Mär  8  2018 unused
drwxr-x--- 2 fhem dialout      0 Sep 28  2017 www


pi@raspberrypi:~ $ sudo ls -la /opt/fhem/.ssh
insgesamt 3072
drwx------ 2 fhem dialout    0 Feb  5 12:47 .
drwxr-x--- 2 fhem dialout    0 Feb  5 19:36 ..
-rwx------ 1 fhem dialout 1675 Feb  5 12:47 id_rsa
-rwx------ 1 fhem dialout  398 Feb  5 12:47 id_rsa.pub
-rwx------ 1 fhem dialout  884 Feb  5 12:47 known_hosts


Es erscheinen nun auch wie vorgesehen, die Keys in den Readings.

So nun kann ich mich dem eigentlichen Thema widmen.

Einen schönen Abend

Martin
Viele Grüße
Martin

Futro mit Proxmox und Debian: FHEM, Signalduino 433MHz & 868MHz, MAX!, WeeWX, FHEM2FHEM,
Raspi 4 mit ConBee mit deCONZ und Phoscon für ZigBee Aktoren und Sensoren

gvzdus

Schön, dass es geklappt hat!
Der Hinweis "600" bezieht sich auf die Datei .ssh/id_rsa.
Das Verzeichnis .ssh muss "700" haben - auf die Schnelle komme ich zum Schluss, dass Du die Meldungen verwechselt hast, richtig?

maddinthebrain

Anscheinend. Nun klappt die weitere Einrichtung soweit.
Danke für die Unterstützung!!!

Grüße Martin

Viele Grüße
Martin

Futro mit Proxmox und Debian: FHEM, Signalduino 433MHz & 868MHz, MAX!, WeeWX, FHEM2FHEM,
Raspi 4 mit ConBee mit deCONZ und Phoscon für ZigBee Aktoren und Sensoren

fredl99

Der springende Punkt ist die mount-Option file_mode, dir_mode muss oktal eine ungerade Zahl sein, sonst kann man den Ordner nicht betreten. Hätte ich vielleicht konkreter ausdrücken sollen.

NFS wäre trotzdem einfacher :D

Dein Hinweis muss an die SSH-Entwickler gehen, denn die Empfehlung "mode 600" für den key kommt von dort. Wobei das idR recht sinnvoll ist - unter Linux allein.

maddinthebrain

Zitat von: fredl99 am 05 Februar 2019, 21:45:53
NFS wäre trotzdem einfacher :D
Ja natürlich, die NAS kann es halt nicht. Wie ich die gekauft hatte, war Smarthome und Alexa usw. Noch kein Thema.

Grüße Martin
Viele Grüße
Martin

Futro mit Proxmox und Debian: FHEM, Signalduino 433MHz & 868MHz, MAX!, WeeWX, FHEM2FHEM,
Raspi 4 mit ConBee mit deCONZ und Phoscon für ZigBee Aktoren und Sensoren