Herunterfahren der Nas via ssh/batch

Status
Für weitere Antworten geschlossen.

dil88

Benutzer
Contributor
Sehr erfahren
Mitglied seit
03. Sep 2012
Beiträge
30.639
Punkte für Reaktionen
2.046
Punkte
829

Lynx42

Benutzer
Mitglied seit
24. Nov 2013
Beiträge
51
Punkte für Reaktionen
0
Punkte
0
Ok, habe ich mir angeschaut. Ich wollte allerdings eigentlich nicht die kompletten Zugriffswege auf die Private-Key-Methode ändern. Alles was ich will ist (wie bisher) die Möglichkeit zu haben einen Doppelklick auf eine bat-Datei auf dem Desktop zu machen um die DS herunterzufahren.
Gibt es keine Möglichkeit, wie in Beitrag 9 angedeutet, den root-User nur für den poweroff Befehl die ohne Passwort zu autorisieren?
 

jahlives

Benutzer
Mitglied seit
19. Aug 2008
Beiträge
18.275
Punkte für Reaktionen
4
Punkte
0
Ok, habe ich mir angeschaut. Ich wollte allerdings eigentlich nicht die kompletten Zugriffswege auf die Private-Key-Methode ändern.
brauchst du ja nicht komplett umzustellen. Das wäre ja nur für root, der ja eh nicht mehr per Passwort reinkommt. Die anderen User z.B. admin können immer noch via Passwort zugreifen. In der ssh Config einfach PasswordAuthentication auf yes belassen

Gibt es keine Möglichkeit, wie in Beitrag 9 angedeutet, den root-User nur für den poweroff Befehl die ohne Passwort zu autorisieren?
das "ohne Passwort" bezieht sich nur auf die Verwendung von sudo als non-root User z.B. für admin. Für den eigentlichen SSH Login brauchst du immer ein PW resp Private-Key
wenn du es via admin und sudo machen willst, dir dringend raten den root Zugang via Private-Key doch zu machen, bevor du anfängst an der /etc/sudoers rumzumachen. Ein Fehler in dieser Datei und sudo ist erstmal unbrauchbar. Zudem würde ich zu einem eigenen User für den shutdown raten, sonst musst du an den admin Eintrag in sudoers ran. Dann erstellst du in der sudoers einen Eintrag à la
Code:
Cmnd_Alias SHUTDOWN = /sbin/poweroff,/sbin/shutdown,/sbin/reboot
deinUser ALL=NOPASSWD: SHUTDOWN
den Alias brauchst du nicht unbedingt, der soll nur zeigen wie man gleich mehrere Kommandos zusammenfassen kann. Du kannst das Kommando auch direkt anstelle des Alias bei NOPASSWD: angeben
Man kann mit Alias auch Argumente angeben und Wildcards verwenden z.B.
Code:
Cmnd_Alias SHUTDOWN = /sbin/reboot --halt,/sbin/poweroff *
deinUser ALL=NOPASSWD: SHUTDOWN
würde dafür sorgen, dass nur /sbin/reboot --halt oder /sbin/poweroff (mit allen Argumenten weil Wildcard) ohne Passwort ausgeführt werden können durch den User
 

dan45

Benutzer
Mitglied seit
23. Mai 2016
Beiträge
56
Punkte für Reaktionen
2
Punkte
8
Kann mir jemand erklären wie ich mit einer Batch-Datei die Synology herunterfahre.

root rechte habe ich mittlerweile mit WinSCP über einen erstellten Key.

Wenn ich allerdings mit den parameter hostkey aufrufe bekomme ich folgende Meldung:
Fatal Error: Host Key did not appear in manually configuration list.

Was muss ich noch tun? Bin an einem Punkt wo ich nicht mehr alleine weiter komme.


So sieht der Befehl aus: plink.exe -hostkey xx:xx:xx -ssh -pw xxxxx root@xxxxx poweroff
 

goetz

Super-Moderator
Teammitglied
Sehr erfahren
Mitglied seit
18. Mrz 2009
Beiträge
14.160
Punkte für Reaktionen
407
Punkte
393
Hallo,
am einfachsten ist es wenn Du Dir in putty eine Session für Deine DS speicherst.
- IP eigeben
- im Feld Saved Sessions einen einfachen Namen eingeben zB. syno
- unter Connection Data Auto-login username root eintragen
- unter Connection SSH Auth Private key for authentication Dein private key File eintragen
- zurück zu Session und dort Save klicken
Die Kategorien findest Du am linken Rand. Wenn alles stimmt per Open testen. Klappt das problemlos dann kannst Du per
Code:
plink syno poweroff
die DS herunterfahren. Hierbei steht syno für die gespeicherte putty Session.

Gruß Götz
 
Zuletzt bearbeitet:

dan45

Benutzer
Mitglied seit
23. Mai 2016
Beiträge
56
Punkte für Reaktionen
2
Punkte
8
Ich habe jetzt nochmal den Key auf 2048 Verschlüsselung gestellt ohne Passwort. Dann nicht per Hostkey sondern an plink das Keyfile übergeben und nun funktioniert es wunderbar..

Deine Variante werde ich mir interessehalber aber auch mal ansehen.

Danke
 

cuio

Benutzer
Mitglied seit
06. Dez 2009
Beiträge
34
Punkte für Reaktionen
0
Punkte
6
Erstmal danke für die funktionierende Lösung.

Es stört mich jedoch etwas, dass ich die root-Berechtigung an jeden client bzw. auch Benutzer eines solchen geben muss, der die Diskstation nur herunterfahren soll. Denn mit dem Key kann sich jeder ja als root per ssh anmelden und dann etwa auch Zugriffsrechte verändern.

Wäre es unter Sicherheitsaspekten daher nicht ratsam, einen user z. B. stopnas zu definieren; der erhält in der sudoers-Datei das Recht für den shutdown und ansonsten als Shell in der passwd nur das Recht den /sbin/shutdown auszuführen.

Wenn dann der private key dieses users für den Shutdown herausgegeben wird, kann damit nur der Shutdown der Synology ausgeführt werden und sonst nichts.


Gruß
Thorsten
 

dil88

Benutzer
Contributor
Sehr erfahren
Mitglied seit
03. Sep 2012
Beiträge
30.639
Punkte für Reaktionen
2.046
Punkte
829
Macht durchaus Sinn. Ein User shutdown gehört meiner Erfahung nach zu einer typischen Linux-Installation, der Gedanke ist also nicht neu oder ungewöhnlich.
 

jahlives

Benutzer
Mitglied seit
19. Aug 2008
Beiträge
18.275
Punkte für Reaktionen
4
Punkte
0
das ändert aber nichts daran, dass der User stopnas alles machen darf was keine root Rechte benötigt. Denn er hat ja Shell Zugriff.
authorized_keys kann auch ein Kommando definieren, welches beim SSH Zugriff mit einem bestimmten Key ausgeführt wird. Dann hat der User keinerlei Einfluss auf das Kommando. Sprich wenn sich dieser Key als root via SSH verbindet, dann wird automatisch poweroff ausgeführt. imho ist das aus Sicht der Sicherheit zu bevorzugen ;)
 

dil88

Benutzer
Contributor
Sehr erfahren
Mitglied seit
03. Sep 2012
Beiträge
30.639
Punkte für Reaktionen
2.046
Punkte
829
Stimmt, wobei man einem User shutdown ja auch ein anderes Kommando als eine Shell in der /etc/passwd zuweisen kann, aber das nur am Rande.
 

cuio

Benutzer
Mitglied seit
06. Dez 2009
Beiträge
34
Punkte für Reaktionen
0
Punkte
6
wenn er wie vorgeschlagen "als Shell in der passwd nur das Recht den /sbin/shutdown auszuführen" erhält, ist eine normale Shell nicht zulässig.
 
Status
Für weitere Antworten geschlossen.
 

Kaffeautomat

Wenn du das Forum hilfreich findest oder uns unterstützen möchtest, dann gib uns doch einfach einen Kaffee aus.

Als Dankeschön schalten wir deinen Account werbefrei.

:coffee:

Hier gehts zum Kaffeeautomat