Configuration FTP · 4 min read · Dec 14, 2025
Comment configurer PureFTPd et FileZilla pour utiliser des sessions TLS sur CentOS 7.2
Cet article explique comment configurer PureFTPd pour accepter des sessions TLS sur un serveur CentOS 7.2. Le FTP simple est un protocole insecure car tous les mots de passe et données sont transférés en texte clair. En utilisant TLS, toute la communication peut être cryptée, rendant ainsi le FTP beaucoup plus sécurisé.
1 Remarque préliminaire
Vous devez avoir une configuration PureFTPd fonctionnelle sur votre serveur CentOS 7.2, par exemple comme indiqué dans ce tutoriel : Serveur FTP avec PureFTPd, MariaDB et utilisateurs virtuels (incl. gestion des quotas et de la bande passante) sur CentOS 7.2
2 Installation d’OpenSSL
TLS nécessite OpenSSL ; pour installer OpenSSL, nous exécutons simplement :
yum -y install openssl3 Configuration de PureFTPd
Ouvrez /etc/pure-ftpd/pure-ftpd.conf…
nano /etc/pure-ftpd/pure-ftpd.confSi vous souhaitez autoriser les sessions FTP et TLS, définissez TLS sur 1 :
[...]
# Cette option peut accepter trois valeurs :
# 0 : désactiver la couche de cryptage SSL/TLS (par défaut).
# 1 : accepter à la fois les sessions traditionnelles et cryptées.
# 2 : refuser les connexions qui n'utilisent pas les mécanismes de sécurité SSL/TLS,
# y compris les sessions anonymes.
# Ne _décommentez_ pas cela aveuglément. Assurez-vous que :
# 1) Votre serveur a été compilé avec le support SSL/TLS (--with-tls),
# 2) Un certificat valide est en place,
# 3) Seuls les clients compatibles pourront se connecter.
TLS 1
[...]Si vous souhaitez accepter uniquement les sessions TLS (pas de FTP), définissez TLS sur 2 :
[...]
# Cette option peut accepter trois valeurs :
# 0 : désactiver la couche de cryptage SSL/TLS (par défaut).
# 1 : accepter à la fois les sessions traditionnelles et cryptées.
# 2 : refuser les connexions qui n'utilisent pas les mécanismes de sécurité SSL/TLS,
# y compris les sessions anonymes.
# Ne _décommentez_ pas cela aveuglément. Assurez-vous que :
# 1) Votre serveur a été compilé avec le support SSL/TLS (--with-tls),
# 2) Un certificat valide est en place,
# 3) Seuls les clients compatibles pourront se connecter.
TLS 2
[...]Pour ne pas autoriser TLS du tout (uniquement FTP), définissez TLS sur 0 :
[...]
# Cette option peut accepter trois valeurs :
# 0 : désactiver la couche de cryptage SSL/TLS (par défaut).
# 1 : accepter à la fois les sessions traditionnelles et cryptées.
# 2 : refuser les connexions qui n'utilisent pas les mécanismes de sécurité SSL/TLS,
# y compris les sessions anonymes.
# Ne _décommentez_ pas cela aveuglément. Assurez-vous que :
# 1) Votre serveur a été compilé avec le support SSL/TLS (--with-tls),
# 2) Un certificat valide est en place,
# 3) Seuls les clients compatibles pourront se connecter.
TLS 0
[...]Ensuite, retirez le # devant les 2 lignes suivantes :
TLSCipherSuite HIGH
CertFile /etc/ssl/private/pure-ftpd.pemet enregistrez le fichier de configuration modifié.
4 Création du certificat SSL pour TLS
Pour utiliser TLS, nous devons créer un certificat SSL. Je le crée dans /etc/ssl/private/, donc je crée d’abord ce répertoire :
mkdir -p /etc/ssl/private/Ensuite, nous pouvons générer le certificat SSL comme suit :
openssl req -x509 -nodes -days 7300 -newkey rsa:2048 -keyout /etc/ssl/private/pure-ftpd.pem -out /etc/ssl/private/pure-ftpd.pemNom du pays (code à 2 lettres) [XX] : <– Entrez le nom de votre pays (par exemple, “FR”).
Nom de l’État ou de la province (nom complet) [] : <– Entrez le nom de votre État ou province.
Nom de la localité (par exemple, ville) [Ville par défaut] : <– Entrez votre ville.
Nom de l’organisation (par exemple, entreprise) [Société par défaut Ltd] : <– Entrez le nom de votre organisation (par exemple, le nom de votre entreprise).
Nom de l’unité organisationnelle (par exemple, section) [] : <– Entrez le nom de votre unité organisationnelle (par exemple, “Service informatique”).
Nom commun (par exemple, votre nom ou le nom d’hôte de votre serveur) [] : <– Entrez le nom de domaine complet du système (par exemple, “serveur1.exemple.com”).
Adresse e-mail [] : <– Entrez votre adresse e-mail.
Changez les permissions du certificat SSL :
chmod 600 /etc/ssl/private/pure-ftpd.pemEnfin, redémarrez PureFTPd :
systemctl restart pure-ftpd.serviceC’est tout. Vous pouvez maintenant essayer de vous connecter en utilisant votre client FTP ; cependant, vous devez configurer votre client FTP pour utiliser TLS - voir le chapitre suivant pour savoir comment faire cela avec FileZilla.
5 Configuration de FileZilla pour TLS
Pour utiliser FTP avec TLS, vous avez besoin d’un client FTP qui prend en charge TLS, tel que FileZilla ou le plugin FireFTP de Firefox.
Dans FileZilla, ouvrez le gestionnaire de sites :

Sélectionnez le serveur qui utilise PureFTPd avec TLS ; dans le menu déroulant Type de serveur, sélectionnez Exiger FTP explicite sur TLS au lieu du FTP normal :

Maintenant, vous pouvez vous connecter au serveur. Si vous le faites pour la première fois, vous devez accepter le nouveau certificat SSL du serveur car nous utilisons ici un certificat SSL auto-signé :

Si tout se passe bien, vous devriez maintenant être connecté au serveur :

6 Liens
- PureFTPd : http://www.pureftpd.org/
- FileZilla : http://filezilla-project.org/
- CentOS : http://www.centos.org/
Recevez de nouveaux articles dans votre boîte de réception.
Aucun spam. Désabonnez-vous à tout moment.