FTP est un protocole très peu sûr car tous les mots de passe et toutes les données sont transférés en texte clair. En utilisant TLS, toute la communication peut être cryptée, ce qui rend le FTP beaucoup plus sécurisé. Cet article explique comment configurer ProFTPd avec TLS sur un serveur Debian Squeeze.
Je n'émets aucune garantie que cela fonctionnera pour vous !
1 Remarque préliminaire
Dans ce tutoriel, j'utilise le nom d'hôte server1.example.com avec l'adresse IP 192.168.0.100. Ces paramètres peuvent différer pour vous, vous devez donc les remplacer le cas échéant.
2 Installation de ProFTPd et OpenSSL
OpenSSL est requis par TLS ; pour installer ProFTPd et OpenSSL, nous lançons simplement :
apt-get install proftpd openssl
Une question vous sera posée :
Exécutez proftpd :<-- autonome
Pour des raisons de sécurité, vous pouvez ajouter les lignes suivantes à /etc/proftpd/proftpd.conf (merci à Reinaldo Carvalho ; plus d'informations peuvent être trouvées ici :http://proftpd.org/localsite/Userguide/linked/userguide.html) :
vi /etc/proftpd/proftpd.conf
[...] DefaultRoot ~ IdentLookups off ServerIdent on "FTP Server ready." [...] |
3 Création du certificat SSL pour TLS
Pour utiliser TLS, nous devons créer un certificat SSL. Je le crée 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] :<-- Saisissez le nom de votre pays (par exemple, "DE").
Nom de l'État ou de la province (nom complet) [Some-State] :<-- Saisissez votre état ou Nom de la province.
Nom de la localité (par exemple, ville) [] :<-- Entrez votre ville.
Nom de l'organisation (par exemple, société) [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) [] :<-- Saisissez le nom de votre unité organisationnelle (par exemple, "Service informatique").
Nom commun (par exemple, VOTRE nom) [] :<-- Saisissez le nom de domaine complet du système (par exemple, "serveur1.exemple.com").
Adresse e-mail [] :<-- Saisissez votre adresse e-mail.
4 Activation de TLS dans ProFTPd
Pour activer TLS dans ProFTPd, ouvrez /etc/proftpd/proftpd.conf...
vi /etc/proftpd/proftpd.conf
... et décommentez la ligne Include /etc/proftpd/tls.conf :
[...] # # This is used for FTPS connections # Include /etc/proftpd/tls.conf [...] |
Ouvrez ensuite /etc/proftpd/tls.conf et faites-le ressembler à ceci :
cp /etc/proftpd/tls.conf /etc/proftpd/tls.conf_orig
cat /dev/null > /etc/proftpd/tls.conf
vi /etc/proftpd/tls.conf
<IfModule mod_tls.c> 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 </IfModule> |
Si vous utilisez TLSRequired on, seules les connexions TLS sont autorisées (cela verrouille tous les utilisateurs avec d'anciens clients FTP qui ne prennent pas en charge TLS); en commentant cette ligne ou en utilisant TLSRequired off, les connexions TLS et non-TLS sont autorisées, selon ce que le client FTP prend en charge.
Redémarrez ensuite ProFTPd :
/etc/init.d/proftpd restart
C'est ça. Vous pouvez maintenant essayer de vous connecter en utilisant votre client FTP; cependant, vous devez configurer votre client FTP pour utiliser TLS (ceci est indispensable si vous utilisez TLSRequired sur) - voir le chapitre suivant pour savoir comment faire cela avec FileZilla.
Si vous rencontrez des problèmes avec TLS, vous pouvez consulter le fichier journal TLS /var/log/proftpd/tls.log.
5 Configuration de FileZilla pour TLS
Pour utiliser FTP avec TLS, vous avez besoin d'un client FTP prenant en charge TLS, tel que FileZilla.
Dans FileZilla, ouvrez le gestionnaire de serveur :
Sélectionnez le serveur qui utilise ProFTPd avec TLS ; dans le menu déroulant Type de serveur, sélectionnez FTPES au lieu de FTP normal :
Vous pouvez maintenant vous connecter au serveur. Si vous le faites pour la première fois, vous devez accepter le nouveau certificat SSL du serveur :
Si tout se passe bien, vous devriez maintenant être connecté sur le serveur :
6 liens
- ProFTPd :http://www.proftpd.org/
- FileZilla :http://filezilla-project.org/
- Debian :http://www.debian.org/