FHEM Forum

FHEM - Hardware => Server - Linux => Thema gestartet von: der-Lolo am 06 Juni 2022, 10:29:57

Titel: [gelöst] User bei FHEM installation angelegt - kein /home/fhem verzeichnis
Beitrag von: der-Lolo am 06 Juni 2022, 10:29:57
Hallo Community,
ich habe ein kleines problem - bei der fhem Installation auf einem Raspi wurde der user "fhem" angelegt, er verfügt aber über kein home verzeichnis.
Da ich nun aber von diesem Server aus via ssh auf einen anderen Server mittels authorised_keys verbinden möchte brauche ich ein home Verzeichniss in dem das .ssh abgelegt wird, oder?

Was kann ich tun um fhem zu einem "normalem" User zu machen?

Ich habe schon eiin bisschen rumprobiert - und auch FHEM angehalten, da es der einzige Prozess war der unter dem user fhem lief...
Ich komme an der stelle nicht weiter - hat jemand eine Idee?

root@poolFHEM:/home/fhem# usermod -s /bin/bash -d /home/fhem fhem
usermod: user fhem is currently used by process 606
root@poolFHEM:/home/fhem# usermod -s /bin/bash -d /home/fhem fhem
usermod: user fhem is currently used by process 8857
root@poolFHEM:/home/fhem# usermod -s /bin/bash -d /home/fhem fhem
usermod: user fhem is currently used by process 8857
root@poolFHEM:/home/fhem# htop
root@poolFHEM:/home/fhem# su fhem
fhem@poolFHEM:/home/fhem$ exit
exit
root@poolFHEM:/home/fhem# usermod -s /bin/bash -d /home/fhem fhem
usermod: user fhem is currently used by process 8857
root@poolFHEM:/home/fhem# kill 8857
root@poolFHEM:/home/fhem# usermod -s /bin/bash -d /home/fhem fhem
usermod: user fhem is currently used by process 8868
root@poolFHEM:/home/fhem# usermod -d /home/fhem fhem
usermod: user fhem is currently used by process 8868
root@poolFHEM:/home/fhem# su fhem
fhem@poolFHEM:/home/fhem$ logout
bash: logout: Keine Login Shell: Mit `exit' abmelden!
fhem@poolFHEM:/home/fhem$ kill -9 8868
fhem@poolFHEM:/home/fhem$ exit
exit
root@poolFHEM:/home/fhem# usermod -d /home/fhem fhem
usermod: user fhem is currently used by process 8887
root@poolFHEM:/home/fhem# pkil -u fhem
-bash: pkil: Kommando nicht gefunden.
root@poolFHEM:/home/fhem# pkill -u fhem
root@poolFHEM:/home/fhem# usermod -d /home/fhem fhem
usermod: user fhem is currently used by process 8897
root@poolFHEM:/home/fhem# kill -9 `ps -u fhem | grep -v PID | awk '{ printf ("%s ", $1); }'`
root@poolFHEM:/home/fhem# usermod -d /home/fhem fhem
usermod: user fhem is currently used by process 8909
Titel: Antw:User bei FHEM installation angelegt - kein /home/fhem verzeichnis
Beitrag von: MadMax-FHEM am 06 Juni 2022, 11:01:45
Das Home-Verzeichnis des Users fhem ist: /opt/fhem

Schon "immer" so ;)

EDIT: vielleicht interessant https://heinz-otto.blogspot.com/2017/01/per-ssh-remote-befehle-direkt-ausfuhren.html

Gruß, Joachim
Titel: Antw:User bei FHEM installation angelegt - kein /home/fhem verzeichnis
Beitrag von: der-Lolo am 06 Juni 2022, 15:56:55
Danke für diesen Schubser!

Das war mir nicht klar - habe es nun aber hinbekommen.
Titel: Antw:[gelöst] User bei FHEM installation angelegt - kein /home/fhem verzeichnis
Beitrag von: Wernieman am 06 Juni 2022, 18:28:25
Nur mal für die Zukunft:
Das home-Verzeichnis des Users steht in der /etc/passwd, .vorletzter Parameter
grep fhem /etc/passwdKeine root-Rechte erforderlich
Titel: Antw:[gelöst] User bei FHEM installation angelegt - kein /home/fhem verzeichnis
Beitrag von: der-Lolo am 06 Juni 2022, 19:21:13
ja, das ist da wo ich dem user auch bin/bash geben musste ;)

Was muss ich dem user noch geben um ihn per ssh erreichen zu können?
Würde gerne ssh keys im Netz verteilen sodass ich zumindest von meinem Schreibtisch aus mit ssh fhem@xxx überall rankomme.
Titel: Antw:[gelöst] User bei FHEM installation angelegt - kein /home/fhem verzeichnis
Beitrag von: Otto123 am 06 Juni 2022, 22:49:47
Was muss ich dem user noch geben um ihn per ssh erreichen zu können?
Würde gerne ssh keys im Netz verteilen sodass ich zumindest von meinem Schreibtisch aus mit ssh fhem@xxx überall rankomme.
Das würde bedingen, dass es "überall" einen user fhem gibt.
Du willst mit dem user fhem auf andere ssh Server zugreifen? Dazu brauchst Du einen user auf dem anderen Server und musst den Zugang mit public Key einrichten.

Hier noch eine aktueller Beschreibung als von Joachim verlinkt.
https://heinz-otto.blogspot.com/2020/09/ssh-mit-public-key.html

Gruß Otto
Titel: Antw:[gelöst] User bei FHEM installation angelegt - kein /home/fhem verzeichnis
Beitrag von: MadMax-FHEM am 06 Juni 2022, 23:07:05
ja, das ist da wo ich dem user auch bin/bash geben musste ;)

Was muss ich dem user noch geben um ihn per ssh erreichen zu können?
Würde gerne ssh keys im Netz verteilen sodass ich zumindest von meinem Schreibtisch aus mit ssh fhem@xxx überall rankomme.

Willst du als fhem User (kann sich der bei dir überhaupt einloggen? / normalerweise geht das ja nicht und das mit dem Eintrag von /bin/bash ist ja nur vorübergehend gedacht, eigentlich ;)  ) einfach auf andere Rechner per ssh kommen?
-> public Key per ssh-copy-id des Users fhem in das .ssh Verzeichnis des Users kopieren als der du remote einloggen willst und Befehle ausführen willst.
https://www.tutorialspoint.com/unix_commands/ssh-copy-id.htm
https://linuxhint.com/use-ssh-copy-id-command/

Z.B. du möchtest auf einem anderen PI einen Befehl ohne Eingabe eines Passworts ausführen und zwar durch fhem (den fhem User). Dann muss der public Key vom User fhem ins Verzeichnis .ssh des Users pi auf dem Remote PI kopiert werden.

Dann kann fhem (der User fhem) als pi@remotePI einloggen und Befehle ausführen ohne Passworteingabe.

Wenn es auf dem remote PI ein anderer User sein soll, dann eben in dessen .ssh Verzeichnis 8)


Oder willst du dich von anderen Rechnern als User fhem auf dem fhem Server einloggen können?
-> public Key des Users, der sich als fhem auf dem fhem Server einloggen will per ssh-copy-id auf den fhem Server unter dem User fhem kopieren.

In dem Fall kann sich ein User auf einem Remote Rechner (oder PI ;)  ) per ssh ohne Passwort auf dem fhem Rechner einloggen.

Also auf dem remote Rechner fhem@fhem-server und dann Befehle ausführen "im Namen von fhem" auf dem fhem Server...

Gruß, Joachim
Titel: Antw:[gelöst] User bei FHEM installation angelegt - kein /home/fhem verzeichnis
Beitrag von: der-Lolo am 07 Juni 2022, 06:52:07
Ich möchte mich gerne von einem nicht FHEM Rechner auf einem FHEM Rechner via ssh anmelden und direkt der fhem User sein...
Aktuell logge ich mich als pi auf dem FHEM Server ein, werde dann root und dann fhem user.
Als pi kann ich nicht zum fhem user werden.

Ich vermute das der fhem User keine ssh rechte hat - oder nicht der entsprechenden Gruppe zugeordnet ist.

Vom Prinzip her möchte ich so 3 FHEM Instanzen erreichen können - der Public Key des Schreibtisch Rechners muss, wenn ich alles richtig verstanden habe, also dann im jeweiligem .ssh des fhem Users auf der Instanz liegen, oder?
Titel: Antw:[gelöst] User bei FHEM installation angelegt - kein /home/fhem verzeichnis
Beitrag von: Otto123 am 07 Juni 2022, 08:54:08
Als pi kann ich nicht zum fhem user werden.
geht bei mir mit
sudo -su fhemohne den user fhem je irgendwie manipuliert zu haben.
Titel: Antw:[gelöst] User bei FHEM installation angelegt - kein /home/fhem verzeichnis
Beitrag von: Wernieman am 07 Juni 2022, 08:57:26
Es ist auch Absicht, das ein Deamonuser (und das ist der fhem User) normalerweise nicht zum einloggen/benutzen verwendet wird. Warum brauchst Du so ein Login?
Titel: Antw:[gelöst] User bei FHEM installation angelegt - kein /home/fhem verzeichnis
Beitrag von: der-Lolo am 07 Juni 2022, 18:28:38
Ich hatte da eher pragmatisch gedacht - wenn ich files als fhem User kopiere, und oder anlege brauche ich mir um die richtigen Berechtigungen keinen Kopf zu machen...

sudo -su fhem habe ich noch nicht probiert...
Titel: Antw:[gelöst] User bei FHEM installation angelegt - kein /home/fhem verzeichnis
Beitrag von: Otto123 am 07 Juni 2022, 20:35:38
ich sags mal ganz platt: wenn man den Bedarf hat im Terminal als user fhem (Dienst User) interaktiv zu agieren - hat man was falsch gemacht :)