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-release

Ensuite, importez la clé GPG EPEL :

rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-7

et mettez à jour les paquets :

yum -y update

Nous allons installer ProFTPD et OpenSSL comme suit :

yum install -y proftpd openssl proftpd-utils

Nous devons démarrer le service et l’activer pour qu’il démarre automatiquement au démarrage.

systemctl start proftpd.service  
systemctl enable proftpd.service

Si vous avez firewalld installé, configurez le pare-feu avec firewall-cmd pour ouvrir le port FTP :

firewall-cmd --add-service=ftp --permanent  
firewall-cmd --reload

Nous 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 ftpgroup

Ensuite, 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 --reload

Nous 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=1

Pour 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.pem

Enfin, redémarrez le service ProFTPD comme suit :

systemctl restart proftpd.service

Nous 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 :
Entrez les détails du compte dans FileZilla.

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

Accepter le certificat SSL
Il vous sera demandé de faire confiance au certificat, appuyez sur OK
FileZilla connecté à ProFTPd.
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.conf

Et 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.service

Maintenant, connectez-vous via Filezilla au compte anonyme comme suit : Connexion anonyme

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.

Connexion FTP anonyme réussie.

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

Share: X/Twitter LinkedIn

Recevez de nouveaux articles dans votre boîte de réception.

Aucun spam. Désabonnez-vous à tout moment.