Serveur FTP · 5 min read · Dec 18, 2025
Comment installer ProFTPD avec TLS sur CentOS 7.2
Ce tutoriel décrit l’installation et la configuration de ProFTPD sur un serveur CentOS 7.2. ProFTPD est un démon FTP pour les systèmes d’exploitation Unix et Linux et distribué sous la licence publique GNU (GPL).
1 Remarque préliminaire
Ce tutoriel est basé sur un serveur CentOS, vous devez donc configurer une installation de base de CentOS 7.2 avant de continuer avec ce tutoriel. Le système doit avoir une adresse IP statique. J’utilise 192.168.1.100 comme adresse IP dans ce tutoriel et server1.example.com comme nom d’hôte.
2 Installer et configurer ProFTPD
2.1 Installation :
Nous avons besoin de logiciels du dépôt EPEL, activez-le comme suit :
yum -y install epel-releaseEnsuite, importez la clé GPG EPEL :
rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-7et mettez à jour les paquets :
yum -y updateNous allons installer ProFTPD et OpenSSL comme suit :
yum install -y proftpd openssl proftpd-utilsNous devons démarrer le service et l’activer pour qu’il démarre automatiquement au démarrage.
systemctl start proftpd.service
systemctl enable proftpd.serviceSi vous avez firewalld installé, configurez le pare-feu avec firewall-cmd pour ouvrir le port FTP :
firewall-cmd --add-service=ftp --permanent
firewall-cmd --reloadNous pouvons vérifier la version de ProFTPD comme suit :
proftpd -v[root@server1 ~]# proftpd -v
ProFTPD Version 1.3.5b
[root@server1 ~]#
2.2 Création d’utilisateurs ProFTPD
Je vais créer un groupe ftpgroup et un utilisateur tom pour ProFTPD. Je vais définir /ftpshare comme répertoire personnel pour l’utilisateur tom.
groupadd ftpgroupEnsuite, j’ajouterai l’utilisateur srijan dans ftpgroup :
useradd -G ftpgroup tom -s /sbin/nologin -d /ftpshare
passwd tom[root@server1 ~]# passwd tom
Changing password for user srijan.
New password: <--ftppassword
Retype new password: <--ftppassword
passwd: all authentication tokens updated successfully.
[root@server1 ~]# Définissez les permissions pour le répertoire ftpshare :
chmod -R 1750 /ftpshare/Maintenant, nous sommes prêts pour la connexion ProFTPD. Mais les connexions ne sont pas encore chiffrées, nous allons résoudre cela dans le chapitre suivant.
3 Activer TLS dans ProFTPD
Pour activer TLS dans ProFTPD, ouvrez /etc/proftpd/proftpd.conf. Avant de modifier le fichier, il est préférable de sauvegarder le fichier original puis de modifier le fichier avec nano.
cp -pf /etc/proftpd.conf /etc/proftpd.conf.bak
nano /etc/proftpd.conf
Ajoutez et modifiez les lignes comme indiqué en rouge.
[...]
DefaultRoot ~ !adm
PassivePorts 6000 6100
[...]
#
TLSEngine on
TLSRequired on
TLSRSACertificateFile /etc/pki/tls/certs/proftpd.pem
TLSRSACertificateKeyFile /etc/pki/tls/certs/proftpd.pem
TLSCipherSuite ALL:!ADH:!DES
TLSOptions NoCertRequest
TLSVerifyClient off
TLSRenegotiate ctrl 3600 data 512000 required off timeout 300
TLSLog /var/log/proftpd/tls.log
#
# TLSSessionCache shm:/file=/var/run/proftpd/sesscache
#
#
[...] J’ai ajouté les ports 6000 et 6100 pour permettre le mode passif de ftp, de même je vais autoriser le mode passif via le service firewalld de CentOS comme suit :
firewall-cmd --add-port=6000-6100/tcp --permanent
firewall-cmd --reloadNous pouvons vérifier l’état des ports comme suit :
firewall-cmd --list-ports[root@server1 ~]# firewall-cmd --list-ports
6000-6100/tcp
[root@server1 ~]#De plus, nous devons dire à SELINUX de permettre la lecture/écriture des fichiers.
setsebool -P allow_ftpd_full_access=1Pour utiliser TLS, nous devons créer un certificat SSL. Je vais le créer dans /etc/pki/tls/certs, nous pouvons générer le certificat SSL comme suit :
openssl req -x509 -nodes -newkey rsa:1024 -keyout /etc/pki/tls/certs/proftpd.pem -out /etc/pki/tls/certs/proftpd.pem[root@server1 certs]# openssl req -x509 -nodes -newkey rsa:1024 -keyout /etc/pki/tls/certs/proftpd.pem -out /etc/pki/tls/certs/proftpd.pem
Génération d’une clé privée RSA de 1024 bits
……………………………..++++++
………++++++
écriture de la nouvelle clé privée dans ‘/etc/pki/tls/certs/proftpd.pem’
Vous allez être invité à entrer des informations qui seront incorporées
dans votre demande de certificat.
Ce que vous allez entrer est ce qu’on appelle un Nom Distingué ou DN.
Il y a plusieurs champs mais vous pouvez laisser certains vides
Pour certains champs, il y aura une valeur par défaut,
Si vous entrez ‘.’, le champ sera laissé vide.
Nom du pays (code à 2 lettres) [XX]:
<–DE
Nom de l’État ou de la province (nom complet) []:
<– Hamburg
Nom de la localité (par exemple, ville) [Default City]:
<– Luneberg
Nom de l’organisation (par exemple, entreprise) [Default Company Ltd]:
<–Howtoforge
Nom de l’unité organisationnelle (par exemple, section) []:
<– Développement
Nom commun (par exemple, votre nom ou le nom d’hôte de votre serveur) []:
<–
server1.example.com
Adresse e-mail []:
<– [email protected]
[root@server1 certs]#
Donnez les valeurs ci-dessus en rouge selon votre choix, j’ai juste donné un exemple.
Maintenant, pour des raisons de sécurité, je vais rendre les certificats uniquement lisibles comme suit :
chmod 0440 /etc/pki/tls/certs/proftpd.pemEnfin, redémarrez le service ProFTPD comme suit :
systemctl restart proftpd.serviceNous pouvons nous connecter au serveur ProFTPD avec le logiciel Filezilla, vous devez avoir Filezilla installé sur l’ordinateur client pour vous connecter au serveur. Ouvrez Filezilla et donnez les détails comme suit :
Les détails seront :
Hôte = 192.168.1.100
Protocole = FTP
Utilisateur = tom
Port = peut être vide si vous n’avez pas personnalisé un autre port que 21
Mot de passe = ftppassword (juste créé ci-dessus)
Remarque : Comme nous avons chiffré notre connexion dans l’étape ci-dessus, nous utiliserons le chiffrement avec Exiger explicitement FTP sur TLS
Si vous n’avez pas configuré TLS, vous pouvez utiliser Utiliser FTP en clair

Il vous sera demandé de faire confiance au certificat, appuyez sur OK
Il sera connecté au répertoire partagé FTP avec une connexion TLS.
4 Accès FTP anonyme dans ProFTPD
Nous pouvons créer un compte FTP anonyme dans ProFTPD, il suffit d’ajouter ces lignes dans le fichier de configuration ProFTPD :
nano /etc/proftpd.confEt ajoutez ces lignes à la fin du fichier.
[...]
###Partage anonyme#####
User ftp
Group ftp
UserAlias anonymous ftp
DirFakeUser on ftp
DirFakeGroup on ftp
MaxClients 10
DenyAll
Maintenant, nous devons redémarrer le service FTP :
systemctl restart proftpd.serviceMaintenant, connectez-vous via Filezilla au compte anonyme comme suit : 
Remarque : Comme nous avons chiffré notre connexion dans l’étape ci-dessus, nous utiliserons le chiffrement avec Exiger explicitement FTP sur TLS
Si vous n’avez pas configuré TLS, vous pouvez utiliser Utiliser FTP en clair
Appuyez sur Connecter.

Nous sommes connectés avec succès au serveur avec un utilisateur anonyme.
Félicitations ! Maintenant, nous avons configuré avec succès l’environnement du serveur ProFTPD sur CentOS 7.2 :)
5 Liens
- CentOS : http://www.centos.org/
- ProFTPD : http://www.proftpd.org/
Recevez de nouveaux articles dans votre boîte de réception.
Aucun spam. Désabonnez-vous à tout moment.