User mit „shutdown“ Rechten
-
Hallo zusammen!
Ich benötige auf der pfSense einen lokalen User der außer dem Befehl "/sbin/shutdown -h" nichts darf.
Hintergrund: In einer VM läuft „apcupsd“ auf einem debian. Dieser sendet den Befehl an die pfSense (und andere Systeme). Hier muss zwingend User Und Password mitgeschickt werden.
/usr/bin/plink user@IP-pw password -P 12122"/sbin/shutdown -h"
Danke vorab.
Thomas
-
Hallo!
@esquire1968-0 said in User mit „shutdown“ Rechten:
Ich benötige auf der pfSense einen lokalen User der außer dem Befehl "/sbin/shutdown -h" nichts darf.
Ich fürchte, das wird schwierig. Das ist ein Shell Befehl und Shell-Zugriff ist auf der pfSense meines Wissens gleichzusetzen mit Admin-Rechten. Generell erfordert aber Shutdown üblicherweise Admin-Rechte.
Ich hatte dafür daher den root verwendet und das Passwort verschlüsselt abgespeichert. Der Zugriff auf den Schlüssel muss allerdings da für Unbefugte auch nochmals unterbunden werden.
Ein SSH-Key wäre auch eine Möglichkeit, dafür gilt aber gleiches wie fürs Passwort.Kann leider nicht mit Besserem dienen.
Grüße
-
Vielleicht wäre es eine Möglichkeit, auf der pfsense einen User "shutdown" anzulegen, der in seiner profile beim login nur diesen Befehl "shutdown -h" oder auch "poweroff" ausführt (zur Not per sudo oder getrickst mit SetUID bit). den login könnte man mit ssh-keys absichern, also kein login per password erlauben.
-
@esquire1968-0 said in User mit „shutdown“ Rechten:
Dieser sendet den Befehl an die pfSense (und andere Systeme). Hier muss zwingend User Und Password mitgeschickt werden.
OK blöde Frage. WARUM?
Wenn da apcupsd läuft, warum auf der pfSense nicht das apcupsd Paket laufen lassen und das darüber Regeln? Oder noch besser, den Kram auf dem Debian direkt mit dem NUT Package machen, Freigabe für die pfSense für remote-nut, dort NUT package installieren, auf remote-nut konfigurieren, debian IP rein und gut. Dann hat man nicht nur im Dashboard die Möglichkeit direkt den Status der Batterie zu sehen wie auf der Debian Kiste auch, sondern die pfSense kann sich selbst runterfahren wenn sie merkt dass das Ding ohne Strom ist.
Irgendeinen Shutdown mit Shell zu basteln klingt da ziemlich unnötig dagegen ;)
-
Danke für die Antworten.
@JeGr Du hast natürlich recht.
Der Grund warum ich apcupsd nicht auf der pfSense hatte war folgender: Um ESXi und alle VM's ordentlich runter zu fahren, habe ich den Befehl "plink" verwendet. Das habe ich auf der pfSense nicht hinbekommen, daher acupsd auf einer VM, die wiederum "plink" an ESXi und dann gleich auch an die pfSense geschickt hat. Da funktioniert soweit. Allerdings muss ich die admin/root Passwörter für pfSense/ESXi auf dieser VM im Klartext speicher - nicht so gut.
Jetzt habe ich das so geändert: apcupsd läuft auf der pfSense als Master und auf der VM (apc) als Slave. Nach wie vor kommt der plink-Befehl an ESXi via plink - mit der oben beschriebenen Sicherheitslücke.
-
Warum plink zum ESXi? SSH ist SSH. Lege doch nen SSH Key auf dem ESXi ab so dass du dich ohne Passwort oder Gedöns zum ESX verbinden kannst und führ nen Shutdown aus.
Noch besser: es gab/gibt ein ESXi vib package von NUT. Damit sollte das alles sauberer laufen :)
-
So weit ich es verstanden habe, läuft auf ESXI 6.7 (free) weder apcupsd noch nut (kann mich natürlich irren), daher die Krücke über plink. Weil plink auf pfSense nicht läuft der Umweg über eine eigene VM.
Ich würde mir die VM gerne ersparen und den Befehl von der pfSense (apcupsd oder nut) direkt an ESXi senden - k. A. wie?
Bin für Tipps dankbar ...