hi, erstmal danke für deine geduld ;). daß die ids aus der db kommen ist mir wohl schon aufgefallen. mein hauptverständnisproblem liegt bei der zugriffsberechtigung von einem bestimmtem verzeichnis. ich kann auch nicht wirklich gut erklären...aber ich probiers nochmal:
ich geh jetzt wieder von meinem webroot aus, dass ich gerne mit verschiedenen ftp gruppen sharen möchte. als beispiel:
ich hab 3 ftpgruppen, die in der datenbank liegen. diesen gruppen möchte ich verschiedene berechtigungen geben. bsp: gruppe1 nur lesen; gruppe2 lesen und schreiben; gruppe3 lesen, schreiben und löschen
das webverzeichnis htdocs sind nach ner frischen installation so aus:
rzhdeb:/var/www# ls -al | grep htdocs
drwxr-xr-x 8 root staff 4096 Dec 4 14:13 htdocs
in der proftpd.conf setzte ich jetzt für die gruppe2 folgende zugriffsberechtigung
<Directory /var/www/htdocs>
<Limit WRITE READ DIRS REST>
AllowAll
</Limit>
<Limit SITE_CHMOD DELE>
DenyAll
</Limit>
</Directory>
wenn ich mich jetzt mit einem user dieser gruppe einlogg, kann ich so nicht in mein htdocs dir schreiben. es sei denn ich setze das verzeichnis so
chmod o+w htdocs/, dann gehts wohl.
wie du schon sagtest sehe ich eine hochgeladene file weder username noch gruppenname, sondern ftpuserid und ftpgroupid:
rzhdeb:/var/www/htdocs# ls -al | grep Readme.txt
-rw-r--r-- 1 50000 60000 1508 Dec 4 15:56 Readme.txt
wenn ich jetzt z.b. ein board oder sowas uppe, habe ich für die neuen verzeichnisse die Berechtigung 755 und für die files 644. wenn ich mich jetzt mit einem anderem user aus einer anderen gruppe einlogg, habe ich keine chance was aus den unterverzeichniss zu löschen, auch wenn die gruppe das nach der proftpd.conf darf. dann müsste ich das neue unterverzeichniss erst wieder 'freischalten'. oder kann ich das nur lösen, wenn ich umask in der proftpd.conf auf 020 setze????
s0 dass ich allen usern immer alle rechte gebe?
Den proFTPD Server musst Du natuerlich als Root starten, damit er z.B. Port 21 binden kann etc.
hmm, hab ich da auch was missverstanden? ich kann doch in der proftpd.conf user und group für den serverstart angeben, und der is doch per default auf nobody und nogroup gesetzt :?:
ok, dann mal von vorne... Fangen wir mit dem User an. Ok, Du hast natuerlich teilweise recht. Das mit dem User/Gruppe ist wie folgt.
DU startest ProFTPD als ROOT. ProFTPD macht seine Aufgaben, bindet den Port und faellt dann auf den User/Gruppe zurueck, der in der Config angegeben ist. Nun loggt sich jemand ein, ProFTPD wird kurz root, macht seine Jobs (z.B. Chroot) und wird dann zum user der sich eingeloggt hat.
Siehe letzte Zeile hier:
http://www.proftpd.org/docs/directives/linked/config_ref_User.htmlZu Deiner Config hast Du 2 Moeglichkeiten:
Du hast also in der Mysql DB user: 50.000, 50.001, 50.002, ... 50.999 und drei Gruppen: 60.000, 60.001 und 60.002. Nun wuerde ich einfach chmod 666 auf alle Dateien und chmod 777 auf alle Dirs setzen.
Damit duerfen alle ALLES.
Nun kannst Du in Deiner Config das so machen:
<Directory /srv/bla/blub>
<Limit All>
DenyALL
</limit>
<Limit READ>
Order Allow, Deny (vielleicht auch anders rum, bin ich zu bloed fuer)
AllowGroup 50000
AllowGroup 50001
DenyALL
</limit>
<Limit WRITE>
Order Allow, Deny (vielleicht auch anders rum, bin ich zu bloed fuer)
AllowGroup 50000
DenyALL
</limit>
die andere Moeglichkeit waere mit einer seperaten Group Tabelle, schon auf Filebene die (zumindestr Schreibrechte) zu sichern. Kommt immer drauf an, ob noch jemand anders Zugang auf die Machine hat oder nur Du. (ausserdem denke an PHP, Perl Scripte, mit denen man relativ einfach immer viel Unsinn ansdtellen kann)..
cu
stonki