Ich habe es zum laufen gebracht. Ich habe es mit hilfe des englischen HowTos nocheinmal eingerichtet und es geht jetzt. Aber einige Fragen habe ich noch.
Mein Ziel ist es, mehrere Gruppen zu haben. Je nach Gruppe soll die Ordnerstruktur anders aussehen: Bsp.: Gruppe StdUser (User z.B. User) / (nur lesen, z.B. /home/ftp/download) /upload (eigentlich ein Ordner mit seinem Namen auf einem speziellen Verzeichnis (z.B. /home/ftp/upload/username) lesen, schreiben Gruppe Admins (Nur Administrator, vielleicht aber später noch ein zweiter) Soll Vollzugriff auf root und alles haben. Ich möchte erst einmal wissen, wie das geht. Das man normalerweise niemanden Vollzugriff gibt, ist klar. Außerdem habe ich bemerkt, dass das Verzeichnis /home/ftp, in welchem ich eine Bilddatei abgelegt habe, ersteinmal als leer angezeigt wird. Erst wenn ich manuell aktualisiere wird der Inhalt angezeigt. Normalerweise wird mir immer gleich der Inhalt dargestellt. Hier meine derzeitige Konfiguration: Tabelle groups: groupname gid members ftp_allow StdUser 1001 test Y Admins 65000 tobias Y Tabelle users: userid tobias thomas passwd kennwort anderes Kennwort uid 1001 1002 gid 65000 1001 homedir / /home/ftp shell /etc/bash /etc/bash proftpd.conf: # # /etc/proftpd.conf -- This is a basic ProFTPD configuration file. # To really apply changes reload proftpd after modifications. # ServerName "Debian" ServerType standalone DeferWelcome off MultilineRFC2228 on DefaultServer on ShowSymlinks on TimeoutNoTransfer 600 TimeoutStalled 600 TimeoutIdle 1200 DefaultRoot /home/ftp DisplayLogin welcome.msg DisplayFirstChdir .message ListOptions "-l" DenyFilter \*.*/ # Uncomment this if you are using NIS or LDAP to retrieve passwords: #PersistentPasswd off # Uncomment this if you would use TLS module: #TLSEngine on # Uncomment this if you would use quota module: #Quotas on # Uncomment this if you would use ratio module: #Ratios on # Port 21 is the standard FTP port. Port 21 # To prevent DoS attacks, set the maximum number of child processes # to 30. If you need to allow more than 30 concurrent connections # at once, simply increase this value. Note that this ONLY works # in standalone mode, in inetd mode you should use an inetd server # that allows you to limit maximum number of processes per service # (such as xinetd) MaxInstances 30 # Set the user and group that the server normally runs at. User nobody Group nogroup # Umask 022 is a good standard umask to prevent new files and dirs # (second parm) from being group and world writable. Umask 022 022 # Normally, we want files to be overwriteable. AllowOverwrite on # Delay engine reduces impact of the so-called Timing Attack described # in http://security.lss.hr/index.php?page=details&ID=LSS-2004-10-02 # It is on by default. #DelayEngine off # A basic anonymous configuration, no upload directories. # <Anonymous ~ftp> # User ftp # Group nogroup # # We want clients to be able to login with "anonymous" as well as # # "ftp" # UserAlias anonymous ftp # # Cosmetic changes, all files belongs to ftp user # DirFakeUser on ftp # DirFakeGroup on ftp # # RequireValidShell off # # # Limit the maximum number of anonymous logins # MaxClients 10 # # # We want 'welcome.msg' displayed at login, and '.message' displayed # # in each newly chdired directory. # DisplayLogin welcome.msg # DisplayFirstChdir .message # # # Limit WRITE everywhere in the anonymous chroot # <Directory *> # <Limit WRITE> # DenyAll # </Limit> # </Directory> # # # Uncomment this if you're brave. # # <Directory incoming> # # # Umask 022 is a good standard umask to prevent new files and # # # dirs (second parm) from being group and world writable. # # Umask 022 022 # # <Limit READ WRITE> # # DenyAll # # </Limit> # # <Limit STOR> # # AllowAll # # </Limit> # # </Directory> # # </Anonymous> RequireValidShell off AuthOrder mod_sql.c AuthPAM off #<Directory /home/ftp> # HideFiles "^(\.htaccess|\.directory|welcome\.msg)$" # <Limit WRITE> # IgnoreHidden on # DenyAll # </Limit> #</Directory> # MySQL-Konfiguration SQLAuthTypes Plaintext SQLAuthenticate users* SQLConnectInfo [EMAIL PROTECTED] proftpd nichtzeigen PERSESSION SQLDefaultGID 65534 SQLDefaultUID 65534 SQLMinUserGID 1000 SQLMinUserUID 1000 SQLHomedirOnDemand off SQLNegativeCache off SQLLogFile /var/log/proftpd-sql.log SQLUserInfo users userid passwd uid gid homedir shell # Zusaetzliche WHERE Klausel * WHERE ftp_allow = 'Y' SQLUserWhereClause "ftp_allow = 'Y'"