www.ProFTPD.de

ProFTPD => ProFTPD - Deutsch => Thema gestartet von: Corben am 08. Februar 2006, 12:40:38



Titel: Verständnisfrage zu Zugriffrechten
Beitrag von: Corben am 08. Februar 2006, 12:40:38
Huhu *,

mir ist das Rechtesystem ein klein wenig schleierhaft ;)
Gehe ich recht in der Annahme, daß in erster Linie die UID/GID des Proftpd Benutzers, nicht die des Deamons selber, welche in der proftpd.conf durch
Code:
User                            nobody
Group                           nogroup

festgelegt wird, Schreibrechte auf ein Verzeichnis bzw. eine Datei haben muss, und ich diese Rechte dann durch die <Directory> Direktive einschränken kann?

Ich benutze folgende Direktiven
Code:
AuthOrder               mod_auth_file.c
AuthUserFile            /usr/local/etc/passwd.proftpd
AuthGroupFile           /usr/local/etc/group.proftpd

Und habe dort drei Benutzer und drei Gruppen definiert:
Code:
Zeus:<kennwort>:1000:500::/srv/ftp:/sbin/nologin
Hermes:<kennwort>:1001:501::/srv/ftp:/sbin/nologin
Herakles:<kennwort>:1002:502::/srv/ftp:/sbin/nologin

Code:
ftpgod:x:500:
ftpmessenger:x:501:
ftpuser:x:502

Dazu folgende Verzeichnisstruktur:
Code:
/srv/ftp
/srv/ftp/nachrichten
/srv/ftp/nachrichten/upload

Wenn ich nun möchte, daß Zeus überall alle Rechte hat, Herakles nur im Unterordner nachrichten und darunter dann Herakles nur im Ordner upload was verändern darf (hochladen, löschen), wie realisiere ich das in proftpd?

Eine Möglichkeit ist natürlich mit umask 002 den Usern der gleichen Gruppe erlauben die Dateien zu ändern, sprich ich füge Zeus allen Gruppen hinzu, und Herakles dann noch der Gruppe ftpuser. Und dann setze ich die Rechte der Ordner folgendermassen:
Code:
drwxrwxr-x  Zeus     ftpgod       /srv/ftp
drwxrwxr-x  Hermes   ftpmessenger /srv/ftp/nachrichten
drwxrwxr-x  Herakles ftpuser      /srv/ftp/nachrichten/upload


Doch würde das auch mit <Directory> und AllowGroup Direktiven gehen?

Oder wären .ftpaccess Dateien die richtige Wahl? Wie müssen dann die Rechte der Verzeichnisse aussehen?


Titel: Verständnisfrage zu Zugriffrechten
Beitrag von: VolGas am 08. Februar 2006, 13:43:15
Der ProFTPD läuft zunächst unter den in der proftpd.conf definierten Rechten.
Loggt sich jemand ein, so wird der Server kurzfristig zum root-User, um dann einen
neuen Prozess mit der UID/GID des einloggenden Users abzuspalten, der diesem dann
fest zugeordnet wird. (Oder so ähnlich...)

Der laufende Prozess "gehört" also dem User und hat auch die selbe UID/GID,
die dem User selbst zugewiesen wurde und damit auch die selben Möglichkeiten und Beschränkungen.

Darüber hinaus kann man natürlich mit "Directory" und "Limit" Direktiven noch etwas
Fein-Tuning betreiben, aber die Systemrechte bilden die Basis lassen sich nicht aushebeln.

Es ist also ganz Deiner Intelligenz und Phantasie überlassen, wie Du Deine Zugriffsrechte setzt...

mfg.
  VolGas