[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Shutdown temporär unterbinden; ein Durchbruch



Heureka,

'/sbin/shutdown' ist, soweit bislang getestet, unter Kontrolle:

Solange root eingeloggt ist, bleibt 'shutdown' für Normaluser inaktiv,
einerlei, ob 'sudo shutdown' oder nur 'shutdown' aufgerufen wird;
sobald root ausgeloggt ist, ist 'shutdown' wieder benutzbar.


Maßnahmen (vgl. früherer Beitrag, s.u.):
========================================

0) Beim Einloggen von root wird automatisch die Datei
  "/etc/shutdown.allow" mit dem Eintrag: "niemand" erzeugt.

      echo niemand > /etc/shutdown.allow

   Beim Ausloggen wird diese Datei gelöscht

      rm /etc/shutdown.allow


1) '/sbin/shutdown' wird permanent nach '/sbin/shutd0wn' umbenannt. 


2) Ins allgemein zugängliche, mit "$PATH" erreichbare Verzeichnis,
   z.B. '/usr/local/sh/' wird das Shellscript 'shutdown' geschrieben:

      #! /bin/bash
	  sudo /sbin/shutd0wn -a "$*"
	  echo $?
	  
   Mit "chown root:fok shutdown"    ("fok" = gemeinsame Gruppe der User)
   und "chmod 750 shutdown"
   wird 'shutdown' benutzbar gemacht.


3) Für automatische 'shutdown'-Blockade während der root-Aktivitäten
   werden die unten aus meinem früheren Beitrag dargestellten Einträge
   in '~/.profile' sowie '~/bash_logout' vorgenommen.
=======================================================================

Die obige Datei 'shutdown' kann für Meldungen leicht erweitert werden;
oben zeigt das Kommando 'echo $?', ob 'shutdown' erfolgreich ausgeführt
wurde: Ergebnis "0" = alles ok; Ergebnis "1" = Fehlermeldung.

Wie Meldungen in einem Grafiksystem an den Mann gebracht werden können,
entzieht sich meiner Kenntnis, da mein Rechner von 1996 ist.
=======================================================================


On Sat, Nov 20, 2010 at 07:19:42PM +0100, Wilko Fokken wrote:
> 
> Hallo,
> 
> mit meinem alten AMD-k5-Rechner unter Sarge und dem Windowmanager 'icewm' habe
> ich nachfolgende Konfiguration getestet:
> 
> 
> Vorgabe der Sarge-Installation:
> ===============================
> Der Shutdown-Eintrag in '/etc/inittab' enthält standardmäßig die Option
> '-a', so daß 'shutdown' abfragt, ob die Datei '/etc/shutdown.allow' existiert:
> 
> 	"ca:12345:ctrlaltdel:/sbin/shutdown -t1 -a -h now"
> 
> Existiert '/etc/shutdown.allow' und enthält nur einen einzigen Eintrag:
> 	einen unbekannten Login-Namen,
> dann ist das Programm '/sbin/shutdown' für Normaluser blockiert.
> 
> Existiert '/etc/shutdown.allow' nicht, kann jeder Normaluser 'shutdown'
> ausführen.
> 
> 
> 
> Meine Test-Konfiguration für Fernwartung:
> 
> 
> a) Eintrag in ~/.profile (Login-Level 0):
>    --------------------------------------
>    echo niemand > /etc/shutdown.allow
>    init q
> 	
> b) Eintrag in ~/.bash_logout:
>    --------------------------
>    rm /etc/shutdown.allow
>    init q
> 
> 
> zu a) Bei einem normalen Login wird '/etc/shutdown.allow' erzeugt mit dem
>       Eintrag "niemand". (Dieser User sollte natürlich auf dem System
> 	  unbekannt sein.)
> 
> 	  Der Befehl 'init q' macht die neue Konfiguration dem System bekannt.
> 
> 
> zu b) Beim Ausloggen von root wird '/etc/shutdown.allow' automatisch gelöscht,
>       so daß ab jetzt jeder Normaluser den Rechner wieder mit 'Ctrl-Alt-Del'
> 	  herunterfahren kann.
> 
> 	  Auch hier muß der Befehl 'init q' die Konfigurationsänderung dem System
> 	  bekannt machen.
> 

NICHT VERGESSEN:
> (Während der Wartungsarbeiten sollte keine Sekundär-Shell von root unter
> 'icewm' aktiv sein, da jeder User 'icewm' über dessen Menupunkt "Logout"
> beenden kann, wobei auch existierende, über 'su -' eingerichtete root-Sessions
> ins Nirwana mitgerissen werden. Dabei wird auch '~/.bash_logout' abgearbeitet,
> so daß '/etc/shutdown.allow' gelöscht wird: Danach kann jeder Normaluser den
> Rechner wie gewohnt mit 'Ctrl-Alt-Del' herunterfahren.)
> 

Gruß Wilko

-- 
Wilko Fokken                            De Künst' geiht wiet, say de Boer;
Landschaftspolder 67                    do sach hei 'n Aap.
D-26831 Bunde
--------------------
Tel. 04953-9219882


Reply to: