thenab Fait po chier... | Bonjour à tous,
Voilà, je me lance enfin dans Linux pour construire mon serveur FTP et j'avoue que j'ai presque réussi...
Moi qui suit un abonné Windows, je dois avouer que je prends rapidement goût à cet OS formidable qu'est Linux !
En gros, j'ai une Debian et j'ai installé dessus proftpd et myFTPAdmin.
Pour ceux qui ne connaissent pas : http://baud.homelinux.net/index2.html
J'ai tout suivi à la lettre, et ça marche niquel. Mais le truc, c'est que je veux que tous mes utilisateurs aient accès à un répertoire commun dans lequel ils ont tous les droits (sauf celui de supprimer le répertoire de base)...
Alors j'ai un peu modifié mon fichier de config, mais rien à faire...
Quand je me connecte en admin : tout fonctionne, mais je ne peux pas créer de répertoire et transférer des fichiers... en gros, j'ai le droit de me ballader
Quand je me connecte en user : j'arrive à me connecter, mais impossible de lister le contenu du répertoire, on m'interdit les commandes suivante : PWD, PORT, PASV...
Par contre, si je créée le répertoire user dans le répertoire de base, ça fonctionne ...
Donc pour vous simplifier les choses pour comprendre.. car c'est dur à expliquer, je vous montre mon proftpd.conf
Code :
- #
- # /etc/proftpd.conf -- Fichier de configuration du serveur FTP ProFTPD.
- #
- ServerName "TEST FTP"
- ServerType standalone
- ServerIdent on "Server FTP ready"
- DeferWelcome on
- MultilineRFC2228 on
- DefaultServer on
- ShowSymlinks on
- UseReverseDNS off
- IdentLookups off
- DefaultRoot /home/ftpuser/
- AllowStoreRestart on
- AllowRetrieveRestart on
- SystemLog /var/log/proftpd.log
- TransferLog /var/log/proftpd/transfer.log
- ExtendedLog /var/log/proftpd/access.log WRITE,READ write
- ExtendedLog /var/log/proftpd/auth.log AUTH auth
- LogFormat default "%h %l %u %t \"%r\" %s %b"
- LogFormat auth "%v [%P] %h %t \"%r\" %s"
- LogFormat write "%h %l %u %t \"%r\" %s %b"
- AllowForeignAddress on
- PassivePorts 49152 65534
- MaxLoginAttempts 3
- TimeoutNoTransfer 300
- TimeoutStalled 300
- TimeoutIdle 600
- TimeoutStalled 3600
- PathAllowFilter "[a-zA-Z0-9]"
- PathDenyFilter "(\.ftp)|(\.msg)|(\.hta)[a-z]+$"
- AllowFilter "^[a-zA-Z0-9@~ /,_.-]*$"
- DenyFilter "%"
- ShowSymlinks off
- ListOptions "-l"
- DisplayLogin welcome.msg
- DisplayQuit bye.msg
- DisplayFirstChdir .message
- Port 21
- MaxClients 25
- MaxClientsPerHost 3
- MaxClientsPerUser 3
- MaxInstances 25
- User ftpuser
- Group ftpgroup
- Umask 022 022
- AllowOverwrite on
- SQLAuthTypes Plaintext Crypt
- SQLAuthenticate users* groups*
- SQLConnectInfo ftp@localhost ftpuser xxxxxxxx
- SQLUserInfo users username passwd NULL NULL homedir NULL
- SQLGroupInfo groups groupname id username
- SQLUserWhereClause "valid = 1"
- SQLDefaultGID 100
- SQLDefaultUID 500
- SQLHomedirOnDemand on
- SQLLog PASS updatelogin
- SQLNamedQuery updatelogin UPDATE "count=count+1, lastlogin=NOW() WHERE username = '%u'" users
- SQLLog STOR,RETR,ERR_STOR,ERR_RETR logtrafic
- SQLNamedQuery logtrafic FREEFORM "INSERT INTO history (username,filename,transfertype,transfersize,transferhost,transfertime,transferdate)
- VALUES ('%u', '%F$', '%F', '%m', '%b', '%a', '%T', NOW())"
- RootLogin off
- RequireValidShell off
- <Directory /home/ftpuser>
- <Limit ALL>
- order Allow, Deny
- AllowUser admin
- Deny from All
- </Limit>
- </Directory>
- <Directory /home/ftpuser/*>
-
- AllowOverwrite on
- HideFiles "(\.msg)$
-
- <Limit LOGIN>
- AllowAll
- </Limit>
-
- <Limit READ WRITE PORT PASV CWD DELE LIST MKD MKDIR MDTM NLST NOOP PWD REST RETR RMD RMDIR RNFR RNTO STAT XCUP XCWD XMKD XPWD XRMD CDUP>
- AllowAll
- </Limit>
-
- # <Limit CDUP XCUP>
- # DenyAll
- # </limit>
- </Directory>
|
J'ai un peu modifié la version originale vers la fin, pour autoriser des choses... mais sans effet.
Merci d'avance pour votre aide. Message édité par thenab le 08-02-2006 à 18:34:05 ---------------
Thenab - Quitte à passer pour un con, passe vite !
|