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

Comment configurer PureFTPd pour utiliser les sessions TLS sur CentOS 7

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

1 Remarque préliminaire

Vous devriez avoir une configuration PureFTPd fonctionnelle sur votre serveur CentOS 7, par ex. comme indiqué dans ce tutoriel :Hébergement virtuel avec PureFTPd et MySQL (y compris la gestion des quotas et de la bande passante) sur CentOS 7.

2 Installer OpenSSL

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

yum 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] :<-- Entrez votre ville.
Nom de l'organisation (par exemple, société) [Default Company 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 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 FireFTP dans Firefox.

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

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

Cent OS
  1. Comment configurer PureFTPd pour accepter les sessions TLS sur Debian Lenny

  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 Remote Rsyslog pour accepter TLS et non-TLS dans CentOS/RHEL

Comment configurer OpenNMS sur CentOS 7

Comment configurer vTiger CRM sur CentOS 7

Comment configurer l'adresse IP dans CentOS 7 / RHEL 7 et CentOS 6 / RHEL 6

Comment installer et configurer GlusterFS sur CentOS 7/CentOS 8

Comment configurer vsftpd pour utiliser SSL/TLS sur un Ubuntu 20.04

Comment configurer VSFTPD pour utiliser SSL/TLS sur un VPS CentOS