GNU/Linux >> Tutoriels Linux >  >> Cent OS

Comment configurer PureFTPd et FileZilla pour utiliser les sessions TLS sur CentOS 7.2

Cet article explique comment configurer PureFTPd pour accepter les sessions TLS sur un serveur CentOS 7.2. Le FTP simple est un protocole non sécurisé, 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, ce qui rend le FTP beaucoup plus sécurisé.

1 Remarque préliminaire

Vous devriez avoir une configuration PureFTPd fonctionnelle sur votre serveur CentOS 7.2, par ex. comme indiqué dans ce didacticiel : serveur FTP avec PureFTPd, MariaDB et utilisateurs virtuels (y compris la gestion des quotas et de la bande passante) sur CentOS 7.2

2 Installer OpenSSL

OpenSSL est requis par TLS ; pour installer OpenSSL, nous exécutons simplement :

yum -y install openssl

3 Configuration de PureFTPd

Ouvrez /etc/pure-ftpd/pure-ftpd.conf...

nano /etc/pure-ftpd/pure-ftpd.conf

Si vous souhaitez autoriser le FTP et Sessions TLS, définissez TLS sur 1 :

[...]
# This option can accept three values :
# 0 : disable SSL/TLS encryption layer (default).
# 1 : accept both traditional and encrypted sessions.
# 2 : refuse connections that don't use SSL/TLS security mechanisms,
#     including anonymous sessions.
# Do _not_ uncomment this blindly. Be sure that :
# 1) Your server has been compiled with SSL/TLS support (--with-tls),
# 2) A valid certificate is in place,
# 3) Only compatible clients will log in.

TLS                      1
[...]

Si vous souhaitez accepter uniquement les sessions TLS (pas de FTP), définissez TLS sur 2 :

[...]
# This option can accept three values :
# 0 : disable SSL/TLS encryption layer (default).
# 1 : accept both traditional and encrypted sessions.
# 2 : refuse connections that don't use SSL/TLS security mechanisms,
#     including anonymous sessions.
# Do _not_ uncomment this blindly. Be sure that :
# 1) Your server has been compiled with SSL/TLS support (--with-tls),
# 2) A valid certificate is in place,
# 3) Only compatible clients will log in.

TLS                      2
[...]

Pour ne pas autoriser TLS du tout (uniquement FTP), définissez TLS sur 0 :

[...]
# This option can accept three values :
# 0 : disable SSL/TLS encryption layer (default).
# 1 : accept both traditional and encrypted sessions.
# 2 : refuse connections that don't use SSL/TLS security mechanisms,
#     including anonymous sessions.
# Do _not_ uncomment this blindly. Be sure that :
# 1) Your server has been compiled with SSL/TLS support (--with-tls),
# 2) A valid certificate is in place,
# 3) Only compatible clients will log in.

TLS                      0
[...]

Supprimez ensuite le # devant les 2 lignes suivantes :

TLSCipherSuite           HIGH
CertFile                 /etc/ssl/private/pure-ftpd.pem

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

Nom du pays (code à 2 lettres) [XX] :<-- Entrez le nom de votre pays (par exemple, "DE").
Nom de l'État ou de la province (nom complet) [] :<-- Entrez le nom de votre État ou de la province .
Nom de la localité (par exemple, ville) [Ville par défaut] :<-- Saisissez votre ville.
Nom de l'organisation (par exemple, société) [Default Company Ltd] :<-- Saisissez 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 ou le nom d'hôte de votre serveur) [] :<-- Saisissez le nom de domaine complet du système (par exemple, "serveur1.exemple.com").
Adresse e-mail [] :<-- Saisissez votre adresse e-mail.

Modifiez les autorisations du certificat SSL :

chmod 600 /etc/ssl/private/pure-ftpd.pem

Enfin, redémarrez PureFTPd :

systemctl restart pure-ftpd.service

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 - 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 compatible avec TLS, tel que FileZilla ou le plug-in Firefox FireFTP.

Dans FileZilla, ouvrez le gestionnaire de site :

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

Vous pouvez maintenant vous connecter au serveur. Si vous faites cela 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é sur le serveur :

  • PureFTPd :http://www.pureftpd.org/
  • FileZilla :http://filezilla-project.org/
  • CentOS :http://www.centos.org/

Cent OS
  1. Comment installer et configurer Nginx sur CentOS 7

  2. Comment configurer PureFTPd pour accepter les sessions TLS sur CentOS 6.2

  3. Comment configurer PureFTPd pour accepter les sessions TLS sur Fedora 14

  4. Comment configurer PureFTPd pour accepter les sessions TLS sur Fedora 18

  5. Comment configurer vsftpd pour utiliser SSL/TLS (FTPS) sur CentOS/Ubuntu

Comment installer et configurer Zabbix sur CentOS 7

Comment configurer PureFTPd pour utiliser les sessions TLS sur CentOS 7

Comment installer et configurer GitLab CE sur CentOS 8

Comment installer et configurer Nagios 4.0.7 sur CentOS 7

Comment installer et configurer ISPConfig CP sur CentOS 7

Comment installer et configurer ownCloud sur CentOS 7