Mailinglisten-Archive |
Hi, ich habe ein PHP-Skript, das Benutzerdaten aus einer Datenbank ausliest und einen Alias auf ihre email-Adresse (ebenfalls aus der DB) in der Datei /etc/aliases anlegt und danach newaliases ausführt. Da Apache mit den Rechten des Users wwwrun ausgeführt wird und PHP somit keine Schreibzugriff auf die Datei /etc/aliases hat schreibe ich die Aliase einfach nach /tmp/aliases. Mit einem Shellscript Namens /usr/sbin/cpaliases kopiere ich dann /tmp/aliases nach /etc/aliases. Diesem Shellscript habe ich mit chmod a+s cpaliases das setuid Bit zugewiesen. Da es root als Eigentümer hat, sollte es nun auf /etc/aliases schreiben können. Kann es aber nicht. Ich bekomme immer die Meldung "Permission Denied". Wenn ich einfach die Permissions von /etc/aliases verändere bringt das auch nichts, da newaliases dann einfach abbricht. Meine Frage: Warum hat mein Shellscript keine Schreibrechte wenn es von PHP ausgeführt wird, obwohl das setuid Bit gesetzt ist? Andreas Heck
php::bar PHP Wiki - Listenarchive