Serveur FTP · 6 min read · Dec 22, 2025

Comment installer et configurer ProFTPD sur Debian Wheezy et Ubuntu 14.04

Ce document décrit comment installer et configurer ProFTPD sur un serveur Debian Wheezy, il fonctionnera également sur Ubuntu 14.04. ProFTPD est un démon FTP pour les systèmes d’exploitation unix et similaires à unix. ProFTPD est développé, publié et distribué sous la Licence Publique Générale GNU (GPL), ce qui l’établit essentiellement comme un logiciel libre, ce qui signifie qu’il peut être vendu, licencié et manipulé de toute autre manière souhaitée tant que le code source complet et complet accompagne tous les paquets ProFTPD ou est mis à disposition par tous les sites qui distribuent des binaires précompilés. Le logiciel peut être modifié par quiconque à tout moment, tant que toutes les œuvres dérivées sont également sous licence de la Licence Publique Générale GNU.

Ce guide fonctionnera pour les serveurs Ubuntu et Debian.

1 Remarque Préliminaire

Ce tutoriel est basé sur un serveur Debian 7.6, vous devez donc configurer une installation de serveur Debian 7.6 de base avant de continuer avec ce tutoriel. Le système doit avoir une adresse IP statique. J’utilise 192.168.0.100 comme mon adresse IP dans ce tutoriel et server1.example.com comme nom d’hôte.

2 Installer ProFTPD

2.1 Installation :

Nous allons d’abord installer ProFTPD et OpenSSL comme suit :

apt-get install proftpd openssl

Il posera quelques questions sur ProFTPD, sélectionnez standalone et appuyez sur Ok.

Nous pouvons vérifier la version de ProFTPD comme suit :

proftpd -v

root@server1:~# proftpd -v

ProFTPD Version 1.3.4a

root@server1:~#

2.2 Création d’Utilisateurs ProFTPD

Pour cela, je vais créer un groupe ftpgroup et l’utilisateur srijan pour ProFTPD. Je vais restreindre l’utilisateur srijan avec un répertoire personnel comme /ftpshare

addgroup ftpgroup
adduser srijan -shell /bin/false -home /ftpshare
root@server1:~# adduser srijan -shell /bin/false -home /ftpshare  
 Adding user `srijan' ...  
 Adding new group `srijan' (1002) ...  
 Adding new user `srijan' (1001) with group `srijan' ...  
 Creating home directory `/ftpshare' ...  
 Copying files from `/etc/skel' ...  
 Enter new UNIX password: <--ftppassword  
 Retype new UNIX password: <--ftppassword  
 passwd: password updated successfully  
 Changing the user information for srijan  
 Enter the new value, or press ENTER for the default<--ENTER  
     Full Name []: <--ENTER  
     Room Number []: <--ENTER  
     Work Phone []: <--ENTER  
     Home Phone []: <--ENTER  
     Other []: <--ENTER  
 Is the information correct? [Y/n] <--Y  
 root@server1:~#

Maintenant, nous allons ajouter l’utilisateur srijan au groupe ftpgroup comme suit :

adduser srijan ftpgroup

Ensuite, nous devons protéger le répertoire contre la suppression et le renommage de son contenu par tout utilisateur, nous allons donc changer les permissions du répertoire comme suit :

chmod -R 1777 /ftpshare/

Ensuite, nous devons configurer ProFTPD comme suit :

nano /etc/proftpd/proftpd.conf

Apportez les modifications comme indiqué

[...]  
UseIPv6 off  
[...]  
  
    RootLogin   off
    RequireValidShell off


DefaultRoot  ~


    DenyGroup !ftpgroup

Je n’utilise pas IPV6 donc je l’ai désactivé ci-dessus, je désactive la connexion de l’utilisateur root avec ProFTPD en désactivant RootLogon. DefaultRoot est ajouté pour restreindre les utilisateurs à l’accès uniquement à leurs répertoires personnels. DenyGroup permettra uniquement aux utilisateurs du groupe ftpgroup d’accéder au serveur ftp, toutes les autres connexions seront rejetées.

Redémarrez le service comme suit :

service proftpd restart

Parfois, vous obtiendrez une erreur lors du redémarrage du service, comme

root@server1:~# service proftpd restart

[ ok ] Arrêt du serveur ftp : proftpd.

[….] Démarrage du serveur ftp : proftpdserver1 proftpd[6052]: mod_tls_memcache/0.1: notice: impossible d’enregistrer le cache de session SSL ‘memcache’ : le support Memcache n’est pas activé

. ok

root@server1:~#

Nous pouvons surmonter cette erreur en éditant le fichier /etc/proftpd/modules.conf et en commentant la ligne comme suit :

nano /etc/proftpd/modules.conf
[...]  
#LoadModule mod_tls_memcache.c  
[...]  

Cela résoudra l’erreur.

Maintenant, nous pouvons nous connecter avec l’utilisateur srijan et le mot de passe à ftp://192.168.0.100

3 Activer TLS dans ProFTPD

Pour activer TLS dans ProFTPD, ouvrez /etc/proftpd/proftpd.conf

nano /etc/proftpd/proftpd.conf

Apportez les modifications comme suit et décommentez la ligne :

[...]  
Include /etc/proftpd/tls.conf  
[...]  

Maintenant, nous allons faire une sauvegarde du fichier original puis éditer le fichier comme indiqué ci-dessous :

cp /etc/proftpd/tls.conf /etc/proftpd/tls.conf_orig  
 cat /dev/null > /etc/proftpd/tls.conf  
 nano /etc/proftpd/tls.conf  
 

Donnez les entrées comme indiqué


TLSEngine                  on
TLSLog                     /var/log/proftpd/tls.log
TLSProtocol                SSLv23
TLSOptions                 NoCertRequest
TLSRSACertificateFile      /etc/proftpd/ssl/proftpd.cert.pem
TLSRSACertificateKeyFile   /etc/proftpd/ssl/proftpd.key.pem
TLSVerifyClient            off
TLSRequired                on

Pour utiliser TLS, nous devons créer un certificat SSL. Je vais le créer dans /etc/proftpd/ssl, donc je crée d’abord ce répertoire :

mkdir /etc/proftpd/ssl  
 

Ensuite, nous pouvons générer le certificat SSL comme suit :

openssl req -new -x509 -days 365 -nodes -out /etc/proftpd/ssl/proftpd.cert.pem -keyout /etc/proftpd/ssl/proftpd.key.pem

Nom du pays (code à 2 lettres) [AU]: <– Entrez le nom de votre pays (par exemple, “DE”).
Nom de l’État ou de la province (nom complet) [Some-State]: <– Entrez le nom de votre État ou province.
Nom de la localité (par exemple, ville) []: <– Entrez votre ville.
Nom de l’organisation (par exemple, entreprise) [Internet Widgits Pty 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) []: <– Entrez le nom de domaine entièrement qualifié du système (par exemple, “server1.example.com”).
Adresse e-mail []: <– Entrez votre adresse e-mail.

Maintenant, pour des raisons de sécurité, je vais rendre les certificats uniquement lisibles comme suit :

chmod 0440 /etc/proftpd/ssl/proftpd.key.pem

Enfin, redémarrez le service ProFTPD comme suit :

service proftpd restart

Nous pouvons nous connecter au serveur ProFTPD avec le logiciel FileZilla. Vous devez avoir FileZilla installé sur le client pour vous connecter au serveur. Ouvrez FileZilla et donnez-lui les détails comme suit :

Les détails seront

Hôte = 192.168.0.100
Protocole = FTP
Utilisateur = srijan
Port = peut être vide si vous ne l’avez pas personnalisé à un autre port que 21
Mot de passe = ftppassword (juste créé ci-dessus)

Remarque : Comme nous avons crypté 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 simple

Il demandera de faire confiance aux certificats, appuyez sur OK

Il sera connecté au répertoire partagé FTP.

4 Accès FTP anonyme dans ProFTPD

Nous pouvons créer un compte FTP anonyme dans ProFTPD, il suffit d’ajouter ces entrées dans le fichier de configuration ProFTPD :

nano /etc/proftpd/proftpd.conf

Et ajoutez ces entrées à la fin du fichier,

[...]  
###Partage anonyme#####

   User                         ftp
   Group                        nogroup


    AllowAll


   # Nous voulons que les clients puissent se connecter avec "anonyme" ainsi que "ftp"
   UserAlias                    anonymous ftp

   # Changements cosmétiques, tous les fichiers appartiennent à l'utilisateur ftp
   DirFakeUser  on ftp
   DirFakeGroup on ftp

   RequireValidShell            off

   # Limiter le nombre maximum de connexions anonymes
   MaxClients                   10

   # Limiter l'écriture partout dans le chroot anonyme
   
     
       DenyAll
     
   

~              

Maintenant, connectez-vous via FileZilla comme suit :

Remarque : Comme nous avons crypté 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 simple

Appuyez sur Connecter :

Il demandera de faire confiance aux certificats, appuyez sur OK

Nous nous sommes connectés avec succès au serveur avec l’utilisateur anonyme.

Félicitations ! Maintenant, nous avons configuré avec succès l’environnement du serveur ProFTPD sur Debian Wheezy :)

5 Liens

Share: X/Twitter LinkedIn

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

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