Comment installer ProFTPD sur CentOS 7

L'une des méthodes de connexion les plus sécurisées et traditionnelles de toute organisation est le FTP (File Transfer Protocol) qui permet le transfert de fichiers entre deux ordinateurs sur un réseau TCP.
Sa conception est basée sur l'architecture client-serveur, avec laquelle il est possible d'utiliser un ordinateur client à partir duquel on peut se connecter à un serveur pour télécharger des fichiers depuis celui-ci ou envoyer des fichiers quel que soit le système d'exploitation utilisé dans chacun des ordinateurs, de là la large acceptation de ce protocole.

L'un des utilitaires dont nous disposons pour ajouter encore plus de sécurité à la connexion FTP est ProFTPD que nous analyserons aujourd'hui dans CentOS 7.

Qu'est-ce que le ProFTPDProFTPD est essentiellement un logiciel de serveur FTP sous licence GPL hautement configurable pour répondre aux attentes de connexion sur n'importe quel site. ProFTPD est conçu à partir de zéro afin qu'il n'utilise pas une autre copie et cela nous donne la possibilité de configurer de nombreuses options dans son exécution.

ProFTPDProFTPD peut être exécuté sur les plates-formes suivantes de manière intégrale :

  • AIX
  • BSD/OS
  • Cygwin
  • Unix numérique
  • DG / UX HP / UX
  • IRIX
  • Linux
  • macOS
  • SCO
  • FreeBSD
  • NetBSD
  • OpenBSD
  • Solaris
  • SunOS
  • Linux pour IBM S/390, zSeries

Fonctionnalités de ProFTPDParmi ses caractéristiques on trouve :

  • Il possède un seul fichier de configuration principal, avec des directives et des groupes de directives intuitifs pour tout utilisateur ayant utilisé Apache.
  • Il possède un répertoire ".ftpaccess" dont la configuration est similaire au ".htaccess" d'Apache
  • Possibilité de configurer plusieurs serveurs FTP virtuels et services FTP anonymes
  • Conçu pour fonctionner en tant que serveur autonome ou à partir d'inetd / xinetd, en fonction de la charge du système
  • Les répertoires racine FTP anonymes ne nécessitent pas de structure de répertoire spécifique, de binaires système ou d'autres fichiers système pour une administration facile
  • Aucune commande SITE EXEC. Dans les environnements Internet modernes, ces commandes sont un cauchemar de sécurité
  • Le code source est disponible pour les administrateurs et les développeurs pour auditer le système
  • A des fichiers et des répertoires cachés, basés sur des autorisations de style Unix ou la propriété d'un utilisateur / groupe
  • Il s'exécute en tant qu'utilisateur non privilégié configurable en mode autonome pour réduire les risques d'attaques qui pourraient exploiter les capacités « root ». Remarque : cette fonctionnalité dépend des capacités du système hôte Unix
  • Registre et support utmp/wtmp. L'enregistrement est conforme à la norme wu-ftpd, avec un enregistrement étendu disponible
  • Prise en charge du jeu de mots de passe Shadow, y compris la prise en charge des comptes expirés
  • Il est basé sur une conception modulaire, ce qui nous permet d'étendre facilement le serveur avec des modules. Les modules ont été écrits pour les bases de données SQL, les serveurs LDAP, le cryptage SSL/TLS, le support RADIUS, etc.
  • Prend en charge IPv6.

1. Comment installer EPEL sur CentOS 7

Étape 1
La première étape consiste à installer le référentiel EPEL pour obtenir ultérieurement ProFTPD, pour cela, nous exécutons les opérations suivantes :

 miam -y installer epel-release

Étape 2
Une fois ce processus terminé, nous verrons ceci :

Étape 3
Maintenant, nous allons importer la clé EPEL GPG en utilisant la ligne suivante :

 rpm --import / etc / pki / rpm-gpg / RPM-GPG-KEY-EPEL-7
Nous procédons à la mise à jour des packages système :
 miam -y mise à jour

2. Comment installer ProFTPD sur Comment installer EPEL sur CentOS 7


La prochaine étape à suivre sera d'installer l'utilitaire ProFTPD et OpenSSL en exécutant ce qui suit :
 yum install -y proftpd openssl proftpd-utils

Une fois ce processus terminé, nous allons exécuter les lignes suivantes :

 systemctl start proftpd.service (démarre le service ProFTPD) systemctl enable proftpd.service (active le service ProFTPD avec le démarrage de CentOS)

3. Comment configurer le pare-feu


Si Firewalld est installé sur CentOS 7, nous devons le configurer avec firewall-cmd pour ouvrir le port FTP comme suit :
 firewall-cmd --add-service = ftp --permanent firewall-cmd -reload

Nous procédons à la vérification de la version installée de ProFTPD :

 proftpd -v

4. Comment créer des utilisateurs et des groupes pour ProFTPD dans CentOS 7


Une fois que ProFTPD est installé dans CentOS 7, il s'agit de créer le groupe et l'utilisateur pour l'accès, dans ce cas nous allons créer un groupe ftpgroup et un utilisateur solvetic1 pour ProFTPD, et nous allons définir /ftpshare comme répertoire personnel pour l'utilisateur créé :
 groupadd ftpgroup useradd -G ftpgroup solvetic1 -s / sbin / nologin -d / ftpshare passwd solvetic1

Là, nous devons entrer et confirmer le mot de passe respectif pour le nouvel utilisateur. Une fois cela fait, nous accorderons les autorisations à ftpshare en exécutant :

 chmod -R 1750 / ftpshare /

5. Comment activer TLS dans ProFTPD


Maintenant il va nous falloir sécuriser les connexions FTP à l'aide de TLS et pour cela, il faut ouvrir le fichier /etc/proftpd/proftpd.conf mais c'est idéal avant d'éditer le fichier, créer une copie de sauvegarde du fichier d'origine puis éditez le fichier avec nano .

Étape 1
Pour créer la copie, nous exécutons :

 cp -pf /etc/proftpd.conf /etc/proftpd.conf.bak
Pour accéder au fichier, nous utiliserons nano et exécuterons :
 nano /etc/proftpd.conf
Dans le fichier affiché, nous entrerons ce qui suit sous la ligne DefaultRoot ~! Adm :
 Ports passifs 6000 6100

Étape 2
En plus de cela, nous commenterons les lignes suivantes :

 # TLSEngine sur TLSRequired sur TLSRSACertificateFile /etc/pki/tls/certs/proftpd.pem TLSRSACertificateKeyFile /etc/pki/tls/certs/proftpd.pem requis TLSOptions 36 NoCertRequest000 offStriatet000 requis TLSOptions NoCertRequest timeout 300 TLSLog /var/log/proftpd/tls.log # # TLSSessionCache shm: / file = / var / run / proftpd / sesscache # #
Étape 3
Nous sauvegardons les modifications à l'aide des touches Ctrl + O et sortons de l'éditeur à l'aide des touches Ctrl + X. Comme on peut le voir, les ports 6000 et 6100 ont été ajoutés pour permettre le mode passif de ftp, pour permettre cet accès nous allons exécuter ce qui suit :
 firewall-cmd --add-port = 6000-6100 / tcp --permanent firewall-cmd --reload

Étape 4
Si nous voulons voir l'état des ports, nous pouvons exécuter ce qui suit :

 pare-feu-cmd --list-ports

Étape 5
Maintenant, il va falloir configurer SELINUX afin de permettre la lecture et l'écriture des fichiers, nous exécutons ceci :

 setsebool -P allow_ftpd_full_access = 1

Étape 6
Pour utiliser TLS, il faudra créer un certificat SSL, nous allons le créer dans le chemin /etc/pki/tls/certs, comme suit :

 openssl req -x509 -nodes -newkey rsa: 1024 -keyout /etc/pki/tls/certs/proftpd.pem -out /etc/pki/tls/certs/proftpd.pem
Les questions suivantes seront affichées où nous entrerons des réponses telles que:
  • Ville
  • Pays
  • Organisation
  • Courrier et plus

Étape 7
Maintenant, pour des raisons de sécurité, nous allons configurer les certificats pour qu'ils ne soient lisibles que comme ceci :

 chmod 0440 /etc/pki/tls/certs/proftpd.pem
Enfin, nous redémarrons le service ProFTPD en exécutant ce qui suit :
 systemctl redémarrer proftpd.service

6. Comment accéder à CentOS via FTP

Étape 1
Pour accéder à CentOS via FTP, nous pouvons utiliser un client FTP et dans ce cas, nous utiliserons Filezilla qui peut être téléchargé sur le lien suivant :

Filezilla

Lors de l'accès à Filezilla, nous allons dans le menu Fichier et là nous sélectionnons l'option Gestionnaire de site pour créer la configuration de notre accès, nous entrerons ce qui suit :

Serveur192.168.0.9 (IP CentOS 7)
ProtocoleFTP
ChiffrementNécessite un FTP explicite sur TLS
Mode d'accèsNormal
Utilisateursolvetic1 (Créé lors de l'installation)
PortCe champ peut être vide si un port autre que 21 n'a pas été personnalisé, ce qui est le cas par défaut.
Mot de passeCréé lors de la configuration de l'utilisateur

AGRANDIR

Étape 2
Une fois celui-ci défini, cliquez sur Connecter pour accéder à notre serveur CentOS et à partir d'ici démarrez la connexion, ce processus peut se faire depuis Windows, macOS ou Linux, lorsque nous cliquons là, le message suivant s'affichera :

Détails du messageLà, nous pouvons voir des détails tels que:

  • Algorithmes, date de validité et empreintes du certificat
  • Données du certificat telles que configurées au moment de la création
  • Données de session avec adresse IP, utilisateur, mots de passe et type de cryptage

Étape 3
Nous pouvons activer la case Toujours faire confiance au certificat dans les sessions futures pour éviter que ce message ne s'affiche à chaque connexion avec CentOS 7.

Si cela est correct, cliquez sur le bouton OK et nous serons ainsi connectés à CentOS 7 à l'aide de ProFTPD :

AGRANDIR

Là, nous pouvons démarrer le processus de navigation sans problème.

Étape 4
Si vous souhaitez configurer l'utilisateur anonyme pour l'accès FTP, nous allons créer le fichier suivant :

 nano /etc/proftpd.conf
Là, nous collerons ce qui suit :
 […] ### Partage anonyme ##### Utilisateur ftp Group ftp UserAlias ​​​​anonyme ftp DirFakeUser sur ftp DirFakeGroup sur ftp MaxClients 10 DenyAll 
Nous enregistrons les modifications à l'aide des touches Ctrl + O et sortons à l'aide de Ctrl + X.

Étape 5
Enfin on redémarre le service :

 systemctl redémarrer proftpd.service
Nous avons vu comment ProFTPD est un outil utile pour établir une connexion intégrée à nos serveurs, garantissant ainsi une communication intégrée et complètement agile des fichiers.

N'oubliez pas que ProFTPD est disponible pour divers systèmes, son utilisation est donc large.

wave wave wave wave wave