Comment installer, configurer et sécuriser le serveur FTP dans RHEL 8

Comment installer, configurer et sécuriser le serveur FTP dans RHEL 8

FTP (signifie «Protocole de transfer de fichier») Est un protocole réseau standard et ancien utilisé pour le transfert de fichiers entre un client et un serveur sur un réseau informatique. Il est construit sur une architecture de modèle client-serveur, qui offre un accès aux fichiers et répertoires via un client FTP, pour télécharger des fichiers sur le serveur ainsi que télécharger des fichiers à partir de celui-ci.

Dans notre article précédent, nous avons expliqué comment installer, configurer et sécuriser le serveur FTP dans CENTOS / RHEL 7 pour le transfert de fichiers informatiques entre un client et un serveur sur un réseau informatique.

Dans cet article, nous décrire comment installer, configurer et sécuriser un serveur FTP sur Rhel 8 Pour le partage de fichiers de base entre les ordinateurs.

Installez le serveur FTP sur RHEL 8

1. Pour installer le package FTP sécurisé, utilisez la commande DNF suivante.

# DNF Installer vsftpd 
Installez VSFTP dans RHEL 8

2. Une fois l'installation terminée, vous devez démarrer le service VSFTPD pour l'intervalle, lui permettre de démarrer automatiquement au démarrage du système, puis de vérifier l'état à l'aide des commandes SystemCTL suivantes.

# systemctl start vsftpd # systemctl activer vsftpd # statut systemctl vsftpd 
Démarrer et vérifier le service FTP

3. Ensuite, vous devez ouvrir le port FTP 21 sur le pare-feu système pour permettre l'accès aux services FTP à partir de systèmes externes.

# Firewall-CMD --zone = public --permanent --add-port = 21 / TCP # Firewall-CMD --zone = public --permanent --add-port = 45073 / tcp # Firewall-Cmd - Reload 

Configurer le serveur FTP sur RHEL 8

4. Pour configurer un serveur FTP, vous devez prendre la sauvegarde du fichier de configuration FTP principal / etc / vsftpd / vsftpd.confli en utilisant la commande de copie suivante.

# cp / etc / vsftpd / vsftpd.conf / etc / vsftpd / vsftpd.confli.origine 

5. Ensuite, ouvrez le fichier de configuration à l'aide de votre éditeur de ligne de commande préféré.

# vi / etc / vsftpd / vsftpd.confli 

Définissez les paramètres suivants avec ces valeurs correspondantes (voir homme vsftpd.confli pour les significations des paramètres de configuration):

anonymous_enable = no local_enable = oui write_enable = oui local_umask = 022 dirMessage_enable = oui xferlog_enable = oui connect_from_port_20 = oui xferlog_std_format = oui écouter = non écouter_ipv6 = oui pam_service_name = vsftpd 

6. Ensuite, vous devez configurer FTP pour permettre / refuser aux utilisateurs l'accès aux services FTP en fonction du fichier de liste d'utilisateurs / etc / vsftpd.liste d'utilisateur.

Par défaut, les utilisateurs ont indiqué / etc / vsftpd.liste d'utilisateur Le fichier est refusé l'accès avec le userlist_deny option définie sur OUI, si userList_enable = Oui, il permet l'accès.

Mais, régler le paramètre userList_deny = non modifie le paramètre, ce qui signifie que seuls les utilisateurs ont explicitement répertorié dans userList_file = / etc / vsftpd.liste d'utilisateur sera autorisé à se connecter.

Par conséquent, ajoutez les lignes suivantes dans votre vsftpd.confli Fichier de configuration (ou s'il existe déjà, les désomner et définir leurs valeurs comme indiqué):

userList_enable = Oui # Autoriser l'accès à la liste des noms d'utilisateur à partir du userList_file userList_file = / etc / vsftpd.liste d'utilisateurs # stocke des noms d'utilisateur. userList_deny = non 

7. Maintenant, ajoutez les lignes suivantes dans votre vsftpd.confli Fichier de configuration pour restreindre les utilisateurs FTP à leurs répertoires domestiques.

chroot_local_user = oui #means Les utilisateurs locaux seront placés dans une prison de chroot, leur répertoire domestique après connexion par défaut par défaut. user_sub_token = $ utilisateur local_root = / home / $ user / ftp 

Enregistrez les modifications dans le fichier et fermez-le.

8. Définissez la règle SELINUX BOOLEAN suivante pour permettre à FTP de lire / écrire des fichiers du répertoire domestique de l'utilisateur.

# SEMANAGE BOOLEAN -M FTPD_FULL_ACCESS --ON 

9. Enfin redémarrer le vsftpd Service pour affecter toutes les modifications que nous avons apportées jusqu'à présent:

# SystemCTL Redémarrer VSFTPD 

Tester le serveur FTP sur RHEL 8

dix. Pour tester si la configuration FTP ci-dessus fonctionne bien, commencez par créer un utilisateur FTP avec une commande userAdd et créez un mot de passe pour cet utilisateur.

# useradd -m -c "tecmint howtos" -s / bin / bash tecmint # passwd tecmint 

11. Puis ajoutez l'utilisateur Tecmint au fichier / etc / vsftpd.liste d'utilisateur en utilisant la commande echo comme suit.

# echo "Tecmint" | tee -a / etc / vsftpd.liste d'utilisateurs # cat / etc / vsftpd.liste d'utilisateur 

12. Créez ensuite le répertoire racine local alternatif pour l'utilisateur (Tecmint, Le vôtre est probablement différent) et définissez les autorisations appropriées sur ce répertoire.

# mkdir -p / home / tecmint / ftp # chown personne: personne / home / tecmint / ftp # chmod a-w / home / tecmint / ftp 

13. Ensuite, créez un répertoire à l'intérieur de l'emplacement des racines locales, où les utilisateurs conserveront ses fichiers.

# mkdir / home / tecmint / ftp / fichiers # chown tecmint: tecmint / home / tecmint / ftp / fichiers # chmod 0700 / home / tecmint / ftp / fichiers / 

14. Connectez maintenant au serveur FTP à l'aide d'un client FTP comme suit.

# ftp [e-mail protégé] 
Échantillon de sortie
Connecté à 192.168.56.100 220 Bienvenue à Tecmint.service ftp com. 331 Veuillez spécifier le mot de passe. Mot de passe: 230 Connexion réussie. Le type de système distant est Unix. Utiliser le mode binaire pour transférer des fichiers. FTP> LS 

C'est ça! Dans cet article, nous avons décrit comment installer, configurer et sécuriser un serveur FTP dans Rhel 8. Dans notre prochain article, nous montrerons comment sécuriser le serveur FTP à l'aide de connexions SSL / TLS. Jusque-là, restez avec nous.