Hallo,
ich würde gerne mein NAS automatisiert hoch- und runterfahren lassen. Hierzu fand ich diesen Artikel:
https://wiki.fhem.de/wiki/Qnap_NAS_Ruhemodus/herunterfahren
Ich hätte da als blutiger Anfänger gleich zu Beginn folgende Frage:
Da steht "Das Kennwort des root Users auf dem FHEM Host muss bekannt sein.".
Wenn ich mich (nur ein Beispiel) als "pi" mit "raspberry" anmelde, ist das dann der "root User" des "FHEM Hosts" und falls nein, wie finde ich das "richtige Passwort" denn dann raus? Habe nie irgendwo ein Passwort vergeben, außer das von "pi".
Gruß Chris
Ist raspberry.
Gesendet von iPhone mit Tapatalk Pro
Sicher?
Ich dachte bei Raspbian hat der User root per Default kein Passwort und ein Login ist nur per pi möglich.
Ausführen als root dann eben per sudo.
Man kann root natürlich als user pi per sudo ein Passwort vergeben.
Bin mir aber nicht sicher, ob man den Shell-Login nicht auch noch freischalten muss, oder ob das schon so eingestellt ist.
Zitat von: Thyraz am 03 Juli 2018, 08:37:51
Bin mir aber nicht sicher, ob man den Shell-Login nicht auch noch freischalten muss, oder ob das schon so eingestellt ist.
Wenn Du per ssh 'drauf willst, musst Du in der /etc/ssh/sshd_config "PermitRootLogin yes" eintragen.
Gruss Helmut
Zitat von: helmut am 03 Juli 2018, 10:18:25
Wenn Du per ssh 'drauf willst, musst Du in der /etc/ssh/sshd_config "PermitRootLogin yes" eintragen.
Gruss Helmut
Wobei man sowas nicht macht!
Einfach root ein Passwort geben und gut ist. Dann lokal mit root und passwort anmelden und schick ist. Oder per ssh als user pi und dann mit sudo su -. oder einfach nur su als root dich anmelden.
Hi,
vielleicht ist das hier für den Anfänger ganz gut beschrieben.
https://www.elektronik-kompendium.de/sites/raspberry-pi/2002231.htm
Wobei es ja gar nicht um den Pi sondern um die NAS geht!? Und dort ist sicher wieder alles ganz anders :)
Zum runterfahren einer NAS braucht man kein root, man braucht einfach nur das Recht es tun zu dürfen. ;)
Gruß Otto
Hängt das NAS am Internet bzw. kann man sich dann remote per SSH einloggen? IPv4-Portfreigabe oder IPv6-Freigabe aktiv?
Dann ist aktiver root-login ein nogo bzw. ein Passwort kleiner 20 Zeichen nicht ratsam. Da der root-Account namentlich bekannt ist, wird das Passwort dann gebruteforced werden. Stattdessen meldet man sich als normaler Benutzer an, der Rechte zugewiesen bekommt oder per sudo Aktionen vornehmen kann.
Das funktioniert je nach verwendetem NAS-Betriebsystem (Synology/QNAP/FreeNAS/Openmediavault/...) anders.
Selbiges gilt dann für den Raspberry Pi. Hängt der am Netz und ist nicht sicher eingerichtet, bekommt man dann als Bonus noch das eingetragene admin-Passwort aus dem FHEM Skript oder wo du es hinterlegen willst.
Das will alles sorgfältig durchdacht und eingerichtet werden, sonst ist dein NAS schneller formatiert oder mit unliebsamen Zeugs gefüllt, als dir lieb ist.
Das komplette Netzwerk hat zwar Zugang zum Internet, es wurden jedoch keinerlei Portweiterleitungen, o.ä. eingerichtet, um das Netzwerk von außen erreichbar zu machen. Daran wird sich auch in Zukunft nichts ändern.
Gruß Chris
... denn sie wissen nicht, was sie tun ...
Möglicherweise.
Selbst wenn (mir) bekannt ist, dass das Kennwort des root Users auf dem FHEM Host nicht vergeben ist, hilft mir das nicht weiter. Richtig?
Ich muss also zwangsläufig dem root ein Passwort vergeben, um mein NAS runterfahren zu können. Richtig?
Gruß Chris
Nein. Du kannst auch einem normalen User die entsprechenden Rechte geben. Oder Du arbeitest mit sudo was noch besser wäre. Und dann gibst Du in sudo dem User einfach nur das recht /sbin/shutdown aus zu führen.
Wenn die Einrichtung des Unterfangens nicht bedingt, dass das Kennwort des root Users auf dem FHEM Host bekannt sein muss,
könnte man die Anleitungen ja theoretisch einfacher und somit verständlicher schreiben, oder?
Gruß Chris
Warum sollte das root Passwort von FHEM von Interesse sein? Du willst doch das NAS runter fahren, oder?
Weil es da steht. :-\
https://wiki.fhem.de/wiki/Qnap_NAS_Ruhemodus/herunterfahren (https://wiki.fhem.de/wiki/Qnap_NAS_Ruhemodus/herunterfahren)
Gruß Chris
Ich weiß jetzt nicht genau wie das beim Pi eingerichtet ist.
Was genau passiert denn wenn Du Dich als User pi am FHEM Server an meldest und ein
sudo su -
ein gibst?
Es erscheint folgender Prompt:
root@raspberrypi:~#
Ah na schau mal einer an. und schon biste root ohne passwort.
Und wo genau kackt es nun bei Deinem Unterfangen?
Hast Du schon die Keyfiles erstellt? Klappt schon das passwortlose einlogen per ssh auf dem NAS?
Ich versuche grad strikt nach der Anleitung vorzugehen und kam bis
ssh-copy-id -i /opt/fhem/ssh-keygen.pub admin@<IP eures Qnaps>
<IP eures Qnaps> wurde in "echte" IP geändert.
Als Ergebnis bekomme ich das hier ausgegeben:
/usr/bin/ssh-copy-id: ERROR: failed to open ID file '/opt/fhem/ssh-keygen.pub': No such file
Edit (teilweise von mir geändert):
root@raspberrypi:~# su - root
root@raspberrypi:~# su - fhem
root@raspberrypi:~# ssh-keygen
Generating public/private rsa key pair.
Enter file in which to save the key (/root/.ssh/id_rsa):
Created directory '/root/.ssh'.
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /root/.ssh/id_rsa.
Your public key has been saved in /root/.ssh/id_rsa.pub.
The key fingerprint is:
SHA256:otYUgUydgdfgdgd+UM root@raspberrypi
The key's randomart image is:
+---[RSA 2048]----+
|%=++... |
|**oo+ . |
|. +. . |
| o. d |
| .* .ofdgoS |
|. O E+..o |
| = gdf. o |
| *.= . o . |
| oOoo . |
+----[SHA256]-----+
root@raspberrypi:~# ssh-copy-id -i /opt/fhem/ssh-keygen.pub admin@192.168.0.12
/usr/bin/ssh-copy-id: ERROR: failed to open ID file '/opt/fhem/ssh-keygen.pub': No such file
Enter file in which to save the key (/root/.ssh/id_rsa):
Created directory '/root/.ssh'.
Da hättest schon stutzig werden müssen. Dein switch zum User fhem hast nicht geklappt weil du vermutlich keine Shell für den User hast. Du hast also alles als root gemacht.
Probier mal su -s /bin/bash fhem
Wer du bist findest du mit
whoami
raus
Zitat von: CoolTux am 09 Juli 2018, 20:26:29Dein switch zum User fhem hast nicht geklappt weil du vermutlich keine Shell für den User hast. Du hast also alles als root gemacht.
Ok, es hat wohl einfach (noch) keinen Wert. Ich verstehe das nicht, da ich auch in der Anleitung keinen Wechsel zum User fhem finden kann.
Ich spiele gerade mein Backup zurück. Ein anderes Mal.
Danke trotzdem.
Gruß Chris
root@raspberrypi:~# su - fhem
Aber ich gebe Dir Recht. Verstehen sollte man es, sonst hilft es nicht.
Hi,
ich habe irgendwie die initiale Frage falsch verstanden, es geht ja nicht um das root Passwort auf der Qnap sondern eigentlich um ssh Einrichtung für den User fhem.
Nicht speziell für die Qnap aber allgemein habe ich das für mich mal hier aufgeschrieben (https://heinz-otto.blogspot.com/2017/01/per-ssh-remote-befehle-direkt-ausfuhren.html).
Vielleicht hilft es.
Gruß Otto
Hallo Otto,
ohne wirklich jeden einzelnen Schritt bis ins letzte Detail verstanden zu haben, bin ich (vermutlich) ein Stückchen schlauer.
Was mich jedoch auch an Deiner Anleitung etwas verwirrt hat ist Folgendes:
Die Abfolge der Befehle über der Zeile "Alle Schritte für den Benutzer fhem in effizienter Form:" differiert zu dem, was in dem Kasten unmittelbar darunter steht. Gänzlich fehlt über dieser Zeile z.B. auch sudo sed -i -e 's/fhem:.*/fhem:x:999:20::\/opt\/fhem:\/bin\/bash/' /etc/passwd
Man stellt sich somit die Frage ob das, was über oder unter dieser Zeile steht richtig ist.
Ich habe im Folgenden (für zukünftige blutige Anfänger) mal versucht darzustellen, was ich gemacht habe. In meinem Fall möchte ich mich mit einem NAS (192.168.0.12) verbinden, an dem man sich als admin anmelden kann:
Wichtig: Sämtliche Eingaben sind am Raspberry, als pi angemeldet zu tätigen!
1. sudo cp /etc/passwd /etc/passwd.sav
2. sudo nano /etc/passwd (fhem:x:999:20::/opt/fhem:/bin/false -> fhem:x:999:20::/opt/fhem:/bin/bash)
3. sudo sed -i -e 's/fhem:.*/fhem:x:999:20::\/opt\/fhem:\/bin\/bash/' /etc/passwd
4. sudo passwd fhem
5. su fhem
6. ssh-keygen -t rsa
7. 3x enter
8. ssh-copy-id -i ~/.ssh/id_rsa admin@192.168.0.12
9. ssh 'admin@192.168.0.12'
10. su pi
11. sudo cp /etc/passwd.sav /etc/passwd
12. sudo nano /etc/passwd (fhem:x:999:20::/opt/fhem:/bin/bash -> fhem:x:999:20::/opt/fhem:/bin/false)
Hinweise/Fragen:
Stimmt die Reihenfolge (insbesondere von 1. bis 4.)?
Ist die Vergabe eines Passworts für den User fhem grundsätzlich unproblematisch?
Ist insbesondere 10. bis 11. richtig? Habe wo gelesen, dass man fhem:x:999:20::/opt/fhem:/bin/bash
wieder in fhem:x:999:20::/opt/fhem:/bin/false
zurückbauen sollte.
11. und 12. konnte ich nur ändern, indem ich mich wieder als Pi anmeldete.
Ich bitte um Korrekturvorschläge.
Gruß Chris
Hallo Chris,
ich habe in meiner Beschreibung versucht nicht nur die Befehle aufzureihen, sondern auch zu beschreiben was passiert. Du musst Dich in dem Kasten auf die Befehle und die Kommentare konzentrieren, in dem Text darüber steht die Erklärung Schritt für Schritt was passiert.
Dein Schritt 2. und 3, machen exakt das Gleiche: 2. manuell und 3. macht es mit dem Befehl sed.
11. stellt den alten Zustand wieder her. 12. ist dann nichts mehr zu tun.
10. ist Unsinn, das erreichst Du mit zweimal exit.
Du startest die Session als Pi
Du öffnest eine Session als fhem
Du öffnest eine Session auf dem Remote Host
exit
Du bist wieder in der Session von fhem
exit
Du bist wieder in der Session von Pi
Du hast jetzt alle Befehle in meiner verbalen Beschreibung die zum Teil auf "Handarbeit" hinauslaufen mit der Befehlsstruktur die alles in 10 Schritten tut gemischt. :o
Gruß Otto
Hallo Otto,
danke für Deine Geduld. ;)
Hier hab ich es dann noch einmal zusammengefasst:
Ich habe im Folgenden (für zukünftige blutige Anfänger) mal versucht darzustellen, was ich gemacht habe. In meinem Fall möchte ich mich mit einem NAS (192.168.0.12) verbinden, an dem man sich als admin anmelden kann:
Wichtig: Sämtliche Eingaben sind am Raspberry, als pi angemeldet zu tätigen!
1. sudo cp /etc/passwd /etc/passwd.sav
2. sudo nano /etc/passwd (fhem:x:999:20::/opt/fhem:/bin/false -> fhem:x:999:20::/opt/fhem:/bin/bash)
3. sudo passwd fhem
4. su fhem
5. ssh-keygen -t rsa
6. 3x enter
7. ssh-copy-id -i ~/.ssh/id_rsa admin@192.168.0.12
8. ssh 'admin@192.168.0.12'
9. exit enter, exit enter
10. sudo nano /etc/passwd (fhem:x:999:20::/opt/fhem:/bin/bash -> fhem:x:999:20::/opt/fhem:/bin/false)
Hoffe, es passt nun so. :)
Gruß Chris
Naja ich hätte 2. und 10. "automatisch" 8) gemacht, also
2. mit dem
sudo sed -i -e 's/fhem:.*/fhem:x:999:20::\/opt\/fhem:\/bin\/bash/' /etc/passwd
und 10. damit
sudo cp /etc/passwd.sav /etc/passwd
Was dann fast genau meinem Kasten entspricht :) aber Du kannst auch die manuellen Schritte tun, wie man mag.
Gruß Otto
Super, vielen Dank! :) :) :) :) :)
Gruß Chris