Synology DS115j herunterfahren und Steckdose ausschalten

Begonnen von Ruggy, 09 März 2020, 14:17:02

Vorheriges Thema - Nächstes Thema

Ruggy

Hallo,

habe eine Synology DS115j. Diese hat kann kein WakeOnLan.
Habe mir deshalb nach foldener Anleitung mit einem Arduino beholfen, welcher die DS hochfährt sobald Strom anliegt.
(https://www.synology-forum.de/showthread.html?4581-Automatisches-Einschalten-DS106-fuer-20-Cent/page4&p=856049#post856049)

Angesteckt habe ich die DS an eine osram smart+ Steckdose angesteckt, welche ich über FHEM steuere.

Damit das nächste mal der Arduino wieder "WOL" durchführt muss der DS vorher stromlos sein. Ich möchte aber die Steckdose mit den DS nicht einfach ausschalten sondern die DS vorher herunterfahren.


Ich habe es geschafft, dass ich mit Putty und folgenden Befehl die DS herunterfahren kann

poweroff

Hierfür habe ich ein Kennwort für den Benutzers Root vergeben den Root-Login in der Datei /etc/ssh/sshd_config mit der Erweiterung um die Zeile "PermitRootLogin yes" ermöglicht.

Wie kann ich mit FHEM steuern, dass der o.g. Befehl "poweroff" über ssh gesendet wird und dann nach z.B. 5 Minuten die Osram Steckdose automatisch ausgeschaltet wird.

Ich das möglich und falls ja wie?
(Ich kenne mich mit der Materie nicht gut aus und habe mich bisher mit Hilfe von anderen Anleitungen bis zu diesem Punkt gebracht)

Vielen Dank
Grüße
Ruggy


Otto123

Hi,

vom Prinzip her geht das einfach so.
Ich entsinne mich aber, dass es bei Syno irgendwie besonders war, es gab da mal eine endlose Diskussion...

Gruß Otto
Viele Grüße aus Leipzig  ⇉  nächster Stammtisch an der Lindennaundorfer Mühle
RaspberryPi B B+ B2 B3 B3+ ZeroW,HMLAN,HMUART,Homematic,Fritz!Box 7590,WRT3200ACS-OpenWrt,Sonos,VU+,Arduino nano,ESP8266,MQTT,Zigbee,deconz

Ruggy

Das ist mir schon fast zu kompliziert; geht es auch einfacher? Wenn nicht, muss ich es doch probieren.

Habe folgenden Thread gefunden.
https://forum.fhem.de/index.php/topic,48902.msg405669.html#msg405669

Hier wird durch @ujaudio folgendes geschrieben

Zitat von: ujaudio am 20 August 2016, 10:54:33
Aus FHEM heraus kann ich meine Synology wie folgt herunterfahren:
system ('ssh root@xxx.xxx.xxx.xxx poweroff');
# statt der xxx die IP-Adresse


Wenn ich aber
system ('ssh root@xxx.xxx.xxx.xxx poweroff');
(mit meiner IP; muss ich die IP dreistellig eingeben; z.B. 192.168.001.002 ?)

in FHEM oben in der Befehlszeile eingebe, kommt die Meldung

Unknown command system, try help.

Was mache ich falsch?
Könnte das so funktionieren?

Ruggy

Habe es jetzt mal so probiert

{ system ('ssh root@192.168.001.002 poweroff') }


In FHEM zeigt es
-1
an; die DS fährt aber nicht herunter

Wernieman

Dein user fhem darf bestimmt nicht auf die Synology so einfach "drauf" ....

Probiere es doch bitte erstmal "normal" von der Konsole. Wenn das funzt, kannst Du es nach fhem portieren.

Wenn Du auf Deinen fhem-Rechern mit der Konsole gehst  (putty), was kommt bei ssh root@192.168.001.002 poweroff
- 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

Ruggy

#5
Folgendes wird nach der Eingabe in Putty angezeigt (den Fingerprint habe ich für hier etwas verändert):

The authenticity of host '192.168.1.2 (192.168.1.2)' can't be established.
ECDSA key fingerprint is SHA256:mnoTiQ3zBKYwFTbbmN1e/THP34teH+zPhmoHVtNFCMM.
Are you sure you want to continue connecting (yes/no)?


Dann nach folgender Eingabe

yes

wird diese Meldung angezeigt

Warning: Permanently added '192.168.1.2' (ECDSA) to the list of known hosts.
root@192.168.1.2's password:


nach Eingabe des Passwortes (welches ich root festgelegt habe; siehe Eingangsthread) wird die DS heruntergefahren  :)


Beim erneuten eingeben deines codes wird nur mehr das Passwort abgefragt und die DS fährt herunter.

Jetzt frage ich mich zusätzlich, wie es grundsätzlich von FHEM aus funktioniert. Deinen Befehl habe ich ja in Putty eingegeben, welches auf meinen Win-PC läuft.
Muss ich dann ssh auch auf meinen Raspberry installieren, auf welchen FHEM läuft?
Den PC möchte ich dazu nicht immer laufen lassen, sonder z.B. auch vom Smartphone steuern.
Die Passworteingabe stört auch noch.

Wernieman

Dann lies Dir den Beitrag von Otto durch ... da geht es um einen Passwortlosen ssh Zugang ...
- 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

Ruggy


Otto123

#8
Ruggy, ehrlich - wenn Dir das in meinem Artikel zu kompliziert dargestellt ist - dann lass das lieber.
Ich kann Dir sagen, alle anderen Artikel die Du zum Thema finden wirst sind komplizierter ;)

Alle Alternativen sind sicher viel unsicherer, aber davon gibt es sicher viele Varianten.

Mein Artikel ist für einen raspberry, Du musst das auf die Syno portieren. Bei deinem jetzigen Stand wird das nichts - tut mir leid.

Du kannst aber gern noch mal in Ruhe von vorn und Satz für Satz (link für link)  lesen. Vielleicht kommst Du ja dann nicht wieder sofort zu dem Schluß: Länger als eine A4 Seite - zu kompliziert ;)
Wenn was unklar ist, frag einfach.

Hier war die alte Diskussion mit der Synology -> https://forum.fhem.de/index.php?topic=37090.45

Gruß Otto
Viele Grüße aus Leipzig  ⇉  nächster Stammtisch an der Lindennaundorfer Mühle
RaspberryPi B B+ B2 B3 B3+ ZeroW,HMLAN,HMUART,Homematic,Fritz!Box 7590,WRT3200ACS-OpenWrt,Sonos,VU+,Arduino nano,ESP8266,MQTT,Zigbee,deconz

Ruggy

 :(

In dem anderen Thread hat es sich so einfach angehört (system ('ssh root@xxx.xxx.xxx.xxx poweroff');)
Werde mir deinen Artikel genauer anschauen und versuchen das ich es damit hin bekomme.

Habe leider niemanden, den ich hierzu fragen kann. Diejenigen, welche ich später kennengelernt habe, haben Openhab; hatte mich aber da schon mit FHEM "angefreundet" und wollte nicht mehr umsteigen.

Evlt. schaffe ich es. Wenn nicht muss ich es leider sein lassen oder oder den umständlichen Weg über DS finder. Damit wird sich meine Frau aber wahrscheinlich nicht anfreunden können.

Trotzdem Danke

Otto123

#10
Zitatso einfach angehört (system ('ssh root@xxx.xxx.xxx.xxx poweroff')
so einfach ist es am Ende auch. Aber dazu brauchst Du den passwortlosen ssh Zugang mit public key - der genau das erlaubt.

Wieso kannst Du keinen fragen? Hier hast Du schon mal zwei ziemlich nette Leute in deinem Thread ;)

Vielleicht hast Du ein anderes Linux System zum üben. Einmal verstanden ist es leichter es am finalen Objekt um zu setzen.
Viele Grüße aus Leipzig  ⇉  nächster Stammtisch an der Lindennaundorfer Mühle
RaspberryPi B B+ B2 B3 B3+ ZeroW,HMLAN,HMUART,Homematic,Fritz!Box 7590,WRT3200ACS-OpenWrt,Sonos,VU+,Arduino nano,ESP8266,MQTT,Zigbee,deconz

Ruggy

Ich meine jemand der sich mal mit an meinen Computer setzen kann und mir das erklären bzw. zeigen kann. Mir fehlen halt grundlegende Programierkenntnisse.

Hier im Forum wurde mir schon öfters geholfen und es gibt hier auch noch mehr nette Leute  ;)
Ich verstehe aber auch, dass es nicht leistbar ist, jeden Schritt für Schritt zu helfen;

Ich werde mir deinen Artikel jedenfalls mal in Ruhe anschauen und ein paar Mal durchlesen. Auf die Kürze habe ich es nicht kapiert und steige irgenwann aus. Liegt aber nicht an Deinen Artikel sondern an mir.  ;)

Wernieman

Mal eine Adaption:
1. Du logst Dich auf dem FHEM-Rechner ein
2. root werden ("sudo -i", "su -" oder wie auch immer Du es machst)
3. Dort erlaubst Du (temporär!) das einloggen als FHEM user
- in der /etc/passwd das /bin/false durch /bin bash ersetzen
4. per "su - fhem" fhem werden
5. ssh-key erstellen "ssh-keygen -t rsa -b 4096"
6. ssh-key auf Synology kopieren "ssh-copy-id root@<Deine Synology>"
- Eventuell mjußt Du das "will ich" bestätigen
- Es erfolgt natürlich eine Passwortabfrage
7. probieren ob es jetzt wirkich funzt "ssh root@<Deine Synology>"
8. wieder root werden "exit"
9. Punkt 3. deaktivieren (/bin/false in /etc/passwd)

jetzt kannst Du mit fhem weitermachen ;o)
- 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

Otto123

Ergänzung:
Bei Punkt 5. Ganz wichtig - und dies war für mich als Laie damals absolut nicht klar: Zweimal die Passwortabfrage nur mit enter, also leer quittieren und damit kein Passwort erzeugen!
Viele Grüße aus Leipzig  ⇉  nächster Stammtisch an der Lindennaundorfer Mühle
RaspberryPi B B+ B2 B3 B3+ ZeroW,HMLAN,HMUART,Homematic,Fritz!Box 7590,WRT3200ACS-OpenWrt,Sonos,VU+,Arduino nano,ESP8266,MQTT,Zigbee,deconz

Ruggy

Hallo Wernieman und vielen Dank für die Anleitung, hat funktioniert.  :D

Und der Tip von Otto123 habe ich auch benötigt. Das erste Mal habe ich ein Passwort vergeben und hat nicht funktioniert. Danke


Muss ich jetzt mit einen dummy und notify arbeiten um erst den Befehl fürs herunterfahren zu senden und nach einer bestimmten Zeit die Osram Steckdose auszuschalten?

Oder funktioniert das auch direkt mit device der Osram Steckdose?