Ubuntu und der Alptraum von Rechten

thor68

bekommt Übersicht
Hi Leute!
Nachfolgendes kann ich nicht nachvollziehen:
Ich habe einen Ubuntu 21.10. Mittels PHP Script führe ich: ...
PHP:
mkdir('/var/www/html/test', 0775);
... aus und erhalten ein permissen denied.
Laut FTP gehört der Ordner "html" zu "root" und dieser steht auf 775.
Über puTTY bin ich als "root" eingeloggt.
Wenn ich mittels PHP abfrage, wer ich bin, bekomme ich als Antwort: "root"
Was tickt denn da jetzt nicht richtig?
 
Es ist ein Unterschied, ob du auf der Console mit PHP arbeitest, oder ob dir der Apache eine PHP Seite liefert. Meist
läuft der httpd Service mit sehr eingeschränkten Rechten. Ist bei mir sehr lange her, daher weiss ich's nicht mehr.
Aber ich empfehle dir die Dok zur Apache Konfiguration.
 
Theoretisch kannst Du auch das Script mit Setuid laufen lassen: chmod 4777 script.php sollte dem Script immer Root - Rechte geben, wenn es ausgeführt wird.

Wobei das auch bei verschiedenen Interpretern geblockt werden kann, wie duffguy ja auch schon sagte.
 
Hey, ich danke euch beiden, dir duffguy und dir bio-logisch, für eure Antworten.

Diese beiden Befehle hatte ich bereits verwandt, was aber nichts gebracht hat:
Code:
sudo find /var/www -type d -exec chmod 775 {} +
sudo find /var/www -type f -exec chmod 664 {} +

Nun habe ich aber diesen noch gefunden, der mir die Lösung beschert hat:
Code:
sudo chgrp -R www-data /var/www/html
 
Ja, die Gruppe des Ordners zu ändern wäre mein nächster Vorschlag gewesen.
Heißt aber letztlich, dass die Scripte wirklich nicht als root laufen, sondern als irgendein anderer Nutzer der Gruppe www-data.

Aber da ist glaub ich jede Distri inzwischen auch anders, um die Server sicher zu kriegen.
 
Oben