Afin de faciliter la gestion des droits d'accès, j'ai créé un groupe d'utilisateur du serveur FTP :
# groupadd ftpusers
# usermod -G ftpusers ftp
# usermod -G ftpusers ftpadmin
|
Création de l'arborescence :
# cd /home/ftp
# mkdir public
# chmod 775 public
# chown ftp public
# chgrp ftpusers public
#
# mkdir upload
# chmod 775 upload
# chown ftp upload
# chgrp ftpusers upload
|
La configuration du serveur est définie dans le fichier /etc/proftpd.conf.
Définir le nom et le type de serveur :
ServerName
"artemis"
ServerType
standalone
|
Le type de serveur correspond au mode de lancement de ce dernier. Cette valeur est initailisée lors de l'installation à standalone si vous avez choisi que le serveur soit lancé indépendamment.
Définir l'utilisateur qui lance le daemon proftpd :
User
nobody
Group
nogroup
|
Remarque:
Ces paramètres sont ceux définis par défaut et garantissent la meilleur sécurité car elle donne le minimum de privilège au daemon.
Personnaliser le message de bienvenue :
# cd /home/ftp
# mv welcome.msg .welcome.msg
# vi /home/ftp/.welcome.msg
|
Bienvenue à %U@%R sur le serveur SLC66.net
Il est : %T
Ceci est mon serveur FTP personnel.
Si vous avez le moindre problème, veuillez contacter <admin@slc66.net>.
|
Définir les paramètres d'affichage :
DisplayLogin
.welcome.msg
DisplayFirstChdir
.message
ListOptions
"-l"
DeferWelcome
on
|
Définir le contexte de configuration Global du serveur FTP :
<Global>
DefaultRoot
~ !ftpadmin
MaxClients
3
MaxClientsPerHost
2
UseFtpUsers
on
AllowForeignAddress
on
AllowOverwrite
on
ServerIdent
on "ProFTP slc66's Server Ready"
PathDenyFilter
"(\.quota)|(\.ftpaccess)|(\.htaccess)$"
Umask
022 022
<Directory /*>
<Limit WRITE>
DenyAll
AllowUser
ftpadmin
</Limit>
</Directory>
<Directory /home/ftp/upload/*>
<Limit WRITE>
AllowAll
</Limit>
</Directory>
<Global>
|
Remarques :
Ici, je "chroot" tous les utilisateurs à l'exception de l'utilisateur ftpadmin.
En d'autres thermes, je limite à l'exception de ftpadmin l'accès des utilisateurs à leur home.
J'interdit l'écriture sur toute l'arborescence du serveur à tous les utilisateurs sauf à ftpadmin.
J'autorise à tous le monde d'écrire dans le répertoire /home/ftp/upload.
Redémarrer le serveur pour prendre en compte les modifications :
# /etc/init.d/proftpd restart
|