Pure-FTPd avec support MySQL

Rédigé par Nicolas Sulek Aucun commentaire
Classé dans : Services réseaux Mots clés : FTP, MySQL, Pure-FTPd

Installation de Pure-FTPd


Pour installer Pure-FTPd avec le support de MySQL, il suffit de taper :
apt-get install pure-ftpd-mysql

Configuration de Pure-FTPd


C'est une particularité Debian, Pure-FTPd se configure au travers d'un fichier de configuration. En effet, le mainteneur du paquet utilise pure-ftpd-wrapper qui va lire les paramètres à passer à Pure-FTPd dans les fichiers de configuration, à la place des paramètres traditionnellement passés directement à l'exécution de Pure-FTPd.

Il faut donc éditer les différentes options contenues dans /etc/pure-ftpd/conf.
Pour ma configuration, j'ai mis les paramètres suivants :
# on interdit l'utilisation de FXP par les utilisateurs anonymes
AllowAnonymousFXP 0
# on interdit les fichiers commençant par .
AllowDotFiles 0
# on interdit l'utilisation de FXP par les utilisateurs non anonymes
AllowUserFXP 0
# les logs de transfert seront enregistres dans
#/var/log/pure-ftpd/transfer.log
AltLog clf:/var/log/pure-ftpd/transfer.log
# anonymous ne peut pas créer de répertoire
AnonymousCanCreateDirs 0
#anonymous ne peut pas envoyer de fichier
AnonymousCantUpload 1
# le FTP n'est pas réservé aux utilisateurs anonymes
AnonymousOnly 0
# on active la protection anti Warez
AntiWarez 1
# on n'affiche pas les fichiers commençant par .
DisplayDotFiles 0
# on ne résout pas les adresses IP en nom FQDN afin d'économiser les
# requêtes réseaux
DontResolve 1
# on force le mode passif sur l'IP indiquée
ForcePassiveIP mon_adresse_ip
# on active uniquement l'IPV4
IPV4Only 1
# on garde tous les fichiers, impossibilité d'effacer
KeepAllFiles 1
# on fixe le nombre maximum de clients a 2
MaxClientsNumber 2
# on autorise une seule connexion par adresse IP
MaxClientsPerIP 1
# le serveur acceptera des envois de fichiers jusqu'à ce que 90% de
#l'espace disque soit plein
MaxDiskUsage 90
# temps maximum avant la déconnexion automatique si la connexion
# devient oisive
MaxIdleTime 5
# chemin vers le fichier contenant les paramétrés pour MySQL
MySQLConfigFile /chemin_vers_mysql.conf
# on interdit les connexions anonymes
NoAnonymous 1
# on interdit la modification des permissions
NoChmod 1
# on interdit le renommage des fichiers
NoRename 1
# on utilise PAM pour l'authentification
PAMAuthentication yes
# on interdit la lecture des fichiers commençant par .
ProhibitDotFilesRead 1
# on interdit l'écriture de fichiers commençant par .
ProhibitDotFilesWrite 1
TrustedGID le_gid_dans_lequel_j_ai_confiance
# on définit les droits par défaut pour les répertoires et les
# fichiers
Umask 133 022

Pour les paramètres à passer à l'exécution, cela reviendrait à :
-E -4 -a le_gid_dans_lequel_j_ai_confiance -c 1 -C 2 -G -H -i -k 90\
-K -O clf:/var/log/pure-ftpd/transfer.log -r -R -s  -U 133 022 -x -X

à quelques oublis près :-D

Configuration de MySQL


Pour la configuration de MySQL, rien de plus simple, la documentation fournie sur le site de Pure-FTPd est largement suffisante et très abordable, donc autant en profiter pour la lire.

Les commentaires sont fermés.