Sichere Ausführung von Linux Befehlen

Black-Rider007

New Member
Hallo,
ich habe schon öfter mit Ausfürung von Linux Befehlen gearbeitet. Meist hab ich das mit 777 Rechten gemacht nur das wird mir jetzt zu unsicher. Hab jetzt schon überlegt so ein .sh Script zu machen:

Code:
su test // wobei ich dabei auch iwie pw angeben muss
killall test

Würde mich mal interessiern, wie ihr das machen würdet!
MFG
Black-Rider
 
Hey,
ich habs mir jetzt schon so in etwa überlegt. Ich versuche es mal zu erklären.
Also ich möchte von einer Website den Befehl z.B. killall test machen. Da der vorhanden Prozess test unter dem User testuser läuft, muss ich dazu über ein .sh Script zu dem User testuser wechseln und dann den Befehl als testuser ausführen!
Nun meine Frage:
Wie muss die .sh Datei aussehen? Weil es geht ja nicht einfach:
Code:
su testuser
killall test
Ich glaube, man musste in irgenteine Config Datei eintragen, dass der User www-data kein Passwort zum wechseln brauch. Oder wie war das?
Und ist diese Methode überhaupt sicher?

MFG
Black-Rider007
 
Also mal allgemein betrachtet find ich die Handhabe nicht nur grob Fahrlässig sondern sogar .. (naja du weist schon :D )

Passwörter in scripten ablegen die wahrscheinlich noch von aussen zugänglich sind hinterlegen.... dann am besten noch als Root zum user test wechseln.... oh oh... *kaltes schaudern* :rolleyes:

Glaub die Profis machen das "etwas" anders, ich persönlich habs bisher noch ned benötigt!

Greetz Centro
 
Sehe das ähnlich wie Centro, solche Scripte direkt vom Webserver ausführen zu lassen sollte man vermeiden. Ansonsten hilft dir da "sudo".
Sinnvoller wäre es den Webserver in einer Datenbank oder in einer einfachen Datei irgendeinen Wert auf 1 setzen zu lassen und per Cronjob ein Script auszuführen (Kann direkt mit dem eigentlichen User laufen), dass den Wert ausliest, bei "1" den Befehl ausführt und den Wert zurücksetzt auf "0".
 
Hey,
1. Wie kann ich mit einem .sh Script Daten aus einer Datei (z.B. .txt) auslesen
2. Wie kann ich mit einem .sh Script Daten aus einer Datei verändern, sprich den Wert von 1 dann wieder auf 0 setzen!

MFG
Black-Rider
 
Okay danke!

Nun hab ich nen anderes Problem! Ich muss den Cronjob alle 15 Sekunden ausführen lassen! Meines wissens geht das doch nur jede Minute oder?
 
Hi,

ungetestet würde ich sagen, dass es möglich ist das Script alle 15 Sekunden zu starten.

Code:
man sleep

Wobei ich dann überlegen würde, dass als normales Script dauerhaft laufen zu lassen anstatt es per Cron auszuführen.

-W
 
Das Script muss mehrmals die Minute laufen:
Code:
SLEEP=15
while true
do
variable=`cat do.txt`
if [ $variable = 1 ]
then echo wert ist 1
echo 0 > do.txt
else echo wert ist 0
 
fi
sleep $SLEEP
done
Damit hab ich mein Prob nun gelöst!
Danke an alle!
 
Last edited by a moderator:
Back
Top