Apple Script mit RootRechten

B

bemar

Mitglied
Thread Starter
Dabei seit
20.03.2003
Beiträge
23
Reaktionspunkte
0
Hallo,

ich möchte ein Programm, das Rootrechte benötigt automatisiert starten. Mir ist schon klar, daß das über Apple Script möglich ist. Ist es aber auch möglich, das Programm als Root zu starten ohne jedesmal das Rootpaßwort einzugeben z.B. indem man das Paßwort gleich im Apple Script Code hinterlegt?

Danke und Gruß
Ben
 
Sicherheitstechnisch unkritischer wäre es imho, dem Skript Unix-technisch den Eigentümer "root" und das "suid-bit" zu verpassen.
Das würde bedeuten, dass das Skript *immer* mit root-Rechten läuft, egal wer es startet (sofern man es überhaupt starten darf).

Sowas ist allerdings schon per se eine Sicherheitslücke (wenn auch kleiner, als die Variante mit dem root-pw im Skript ;)) und es gibt nur sehr wenige Anwendungsfälle, in denen das gerechtfertigt ist.
Die meisten Sachen lassen sich auch anders (=weniger sensibel) lösen.


Gruß,

?=?
 
Das ist mir schon klar, daß es sicherer wäre immer die Eingabe des Rootpaßwortes zu verlangen. Doch das Script läuft auf einem Server vor dem eben nicht immer einer sitzt. Das Script sollte einen Server starten, der eben Rootrechte braucht. Aber wenn man einem Programm die Rootrechte dauerhaft geben kann wäre das ja noch besser, dann brauch ich das Script nicht mehr. Der Server befindet sich noch in der Entwicklung d.h. er schmiert halt manchmal ab. Dann wäre es fein das Teil per Keep It Up neustarten zu lassen.

Könntest du mir noch den Befehl nennen, mit dem ich dem Serverprogramm die Rootrechte geben kann?

Danke und Gruß
Ben
 
man chmod . . .


OK, ich bin ja nicht so:
chmod ?+s filename
Für "?" g(roup) oder a(ll) einsetzen.

und

chown root filename

Außerdem kann es evtl. zu Problemen kommen, wenn dein Server-Pgm aus mehreren (selbst geschriebenen!) Modulen zusammen gelinkt wird.
Gegebenenfalls muss man hierbei weitere Regeln beachten (ist zumindest unter Solaris so).


Gruß,

?=?
 
Funktioniert leider nicht. Habe dem Programm den User root zugeordnet und alle Rechte die es gibt. Es geht trotzdem nicht, da der Server den Port 80 belegen möchte, dies aber nicht klappt (Fehlermeldung). Wenn ich den Server aber mit Pseudo starte (Notlösung) kommt keine Fehlermeldung und der Server ist unter Port 80 erreichbar. Ich habe hier mit chmod und chown gearbeitet (siehe screenshot). Das Programm starte ich mit
"sudo open 4DServer.app"
 

Anhänge

  • screenshot.jpg
    screenshot.jpg
    8,2 KB · Aufrufe: 94
Habe jetzt ein Apple Script geschrieben, das denn Server mit der zugehörigen Datenbank startet. Funzt wunderbar.
Das Prinzip ist

"open Server using Datenbank"

Jetzt müßte das ganze noch als Root zu starten gehen.

wenn ich
"open Server using Datenbank" password "abc" with administrator priviliges"
schreibe motzt er da es diese Kombination scheinbar nicht zu
geben scheint. Wie kann den Server trotzdem als Root starten?

Danke und Gruß
 
Zurück
Oben Unten