PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Webserver | Komplettkonzept



basstscho
09.04.05, 19:10
Hallo zusammen,

ich hab nen root-Server und möchte den als Webserver betreiben, auf dem mehrer Projekte gehostet werden. Jedes Projekt soll über FTP verwaltet werden können.
Jetzt meine Frage: Das ganze mache ich doch am besten über die Homedirectorys. Alos jedes Projekt ein Benutzer (virtuelle hosts kann ich ja dann leicht selber anlegen). Dann als FTP-Server nehmen ich pureftpd. Das ist aj auch kein Problem, die user werden dann halt in ihr home-directory eingesperrt. Jetzt eher das Problem: Ich möchte, dass das home-directory dann leer ist. sprichg direkt unter /home/user/ die index. datei befindet sprich das home-directory direct der htdocs Ordener des einzelnen Users ist. Doch wie bekomm ich einen immer leeren Ordner hin? Wird dann im Betrieb nichts reingespeichert? Und wie siehts mit der Sicherheit überhaupt aus? Ich werde dann wohl ne Gruppe wwwrun machen (oder so) und dnan die Dateirechte auf das home-directory von user1 wie folgt legen:

chown -R user1 /home/user1
chgrp -R wwwrun /home/user1
chmod -R 750 /home/user1

ist jetzt garantiert, dass user2 auch nicht über php irgendwie an Dateien von user2 gelangen kann? Also irgendwie ne Datei, wo das mysql passwort oder so drinnesteht (mit read(/home/user1/passwort)) ?

Und dann noch ne Frage zu mysql: Ich möchte, dass user1 lauter Datenbanken anlegen kann im Format user1_waserwill und user zwei im Format user2_waserwill
Das kann ich net in mysql machen oder?

Danke Grüße Johannes

flo#bre
09.04.05, 20:00
schau dir in php mal phpsec an und bei mysql kann man auch benutzer mit passwörtern anlegen

basstscho
09.04.05, 20:16
Hallo,

dass man benutzer anlegen kann weiss ich, aber dann hab ich ja immernochnicht das Problem mit der Datenbank bezeichnung umgangen. Die wahrscheinlichkeit ist große, dass zwei user ne db mit dem namen login oder user anlegen werden...deshalb wäre es ja immer eindeutig mit user1_logon user2_login

Grüße Johannes

dipesh
10.04.05, 02:30
Ich möchte, dass das home-directory dann leer ist. sprichg direkt unter /home/user/ die index. datei befindet sprich das home-directory direct der htdocs Ordener des einzelnen Users ist.
Warum kein ~/public_html? Der Sinn besteht darin, dem Benutzer einen Bereich zur Verfügung zu stellen in dem seine Scripte Daten ablegen können, die sich außerhalb des www-Bereiches befinden. Eigentlich eine ganz praktische Sache. Zudem könntest du so auch z.B. ein ~/cgi-bin oder ein ~/logs anlegen und dem Benutzer so mehr Möglichkeiten an die Hand geben.


Doch wie bekomm ich einen immer leeren Ordner hin? Wird dann im Betrieb nichts reingespeichert?

Was für einen leeren Ordner? Du meinst, du willst die Dateien welche sich nach einem adduser in seinem Homeverzeichnis finden bestimmen? Dann /etc/skel entsprechend anpassen.


ist jetzt garantiert, dass user2 auch nicht über php irgendwie an Dateien von user2 gelangen kann?
Nein. Apache, in der Standardkonfiguration, läuft stets mit der gleichen Kennung. In deinem Fall dann wahrscheinlich der Benutzer wwwrun. google mal nach "suexec+apache"...


Ich möchte, dass user1 lauter Datenbanken anlegen kann im Format user1_waserwill und user zwei im Format user2_waserwill
Das kann ich net in mysql machen oder?
Über welches Interface soll der Benutzer Zugriff auf mySQL erhalten? myphpadmin? imho wäre dann die einfachste Lösung, wenn du für jeden neuen Benutzer automatisch eine DB mit entspr. Namen anlegst und nur dem jeweiligen Benutzer Lese-/Schreibrechte auf diese eine DB einräumst.