Comment configurer un serveur FTP sur CentOS 8 en utilisant VSFTPD

Qu’est-ce que le FTP ?

FTP (File Transfer Protocol) est un protocole réseau client-serveur qui permet aux utilisateurs d’échanger des fichiers vers et depuis des ordinateurs distants.

FTP utilise du texte brut pour transférer des données et accéder aux données. Il existe plusieurs serveurs FTP open source différents disponibles pour la plate-forme du système d’exploitation Linux. Les serveurs FTP les plus couramment utilisés sont VSFTPD, ProFTPD et PureFTPD. Le protocole FTP utilise le numéro de port 21 pour la connexion et le port 20 pour le transfert de données. En mode passif, des ports supplémentaires sont utilisés.

Dans ce tutoriel, nous allons apprendre à configurer et configurer VSFTPD. Il est très sécurisé et stable et disponible dans le référentiel de paquets CentOS 8.

Installer le serveur FTP VSFTP

Pour installer le package VSFTPD sur CentOS 8, ouvrez un terminal ou connectez-vous à votre serveur par SSH en tant qu’utilisateur root et tapez la commande suivante:

# dnf install –y vsftpdInstalling VSFTPD

Une fois le package installé, démarrez et activez le service VSFTPD à l’aide de la commande suivante:

# systemctl enable vsftpd# systemctl start vsftpdEnable FTP service

 Démarrez le service FTP

Prenez une copie du fichier de configuration d’origine /etc/vsftpd/vsftpd.conf en tapant la commande suivante:

# cp /etc/vsftpd/vsftpd.conf /etc/vsftpd/vsftpd.conf.bk

 Faites une copie de sauvegarde du fichier de configuration d'origine

Éditez maintenant le fichier de configuration, en utilisant la commande suivante:

# vim /etc/vsftpd/vsftpd.conf

 Modifiez le fichier de configuration avec vim

Trouvez et définissez les directives suivantes dans celui-ci:

anonymous_enable=NO # disable anonymous users(Unknown users)local_enable=YES # allow local userswrite_enable=YES # allow ftp write commandslocal_umask=022 # set default umaskdirmessage_enable=YES # enable messages on change directoryxferlog_enable=YES # enable logging of uploads and downloadsconnect_from_port_20=YES # ensure PORT transfer connections from port 20 xferlog_std_format=YES # keep standard log formatlisten=NO # prevent vsftpd run in stand-alone modelisten_ipv6=YES # allow vsftpd to listen on IPv6 socketpam_service_name=vsftpd # set PAM Service name to vsftpd

Configurer la liste des utilisateurs dans le serveur FTP

Par défaut, tous les utilisateurs qui se trouvent dans le fichier user_list situé dans /etc/vsftpd/user_list sont autorisés à utiliser les services FTP.

Pour restreindre les utilisateurs dans un environnement chrooté, utilisez les directives suivantes:Publicité

chroot_local_user=YES # Create chrooted environment for usersallow_writeable_chroot=YES # Allow write permission to a user on chroot jail directory

Pour limiter l’utilisateur à son répertoire personnel, utilisez les directives suivantes:

userlist_enable=YES # enable vsftpd to load usernamesuserlist_deny=NO # allow access to users in the user list

Si vous souhaitez fournir un accès global à notre système, ajoutez cette directive dans votre fichier de configuration:

chroot_list_enable=YESchroot_list_file=/etc/vsftpd/chroot_list #users in this file list have an overall access

Enregistrez et fermez le fichier de configuration.

Maintenant, créez une chroot_list sous le répertoire /etc/vsftpd/, en utilisant la commande suivante:

# touch /etc/vsftpd/chroot_list

 Chroot Utilisateurs FTP

Ajoutez uniquement les utilisateurs de cette liste auxquels vous souhaitez fournir un accès global sur le système.

Créer un utilisateur pour accéder aux services FTP

Pour créer un utilisateur pour utiliser le service FTP, utilisez la commande suivante:

# useradd user1# passwd user1

Ajoutez cet utilisateur dans le fichier user_list pour restreindre un utilisateur à son répertoire personnel, utilisez la commande suivante:

# vim /etc/vsftpd/user_list

Tapez « i » pour insérer et tapez ce nom d’utilisateur, comme indiqué sur la figure:

 Créer un utilisateur FTP

Appuyez sur ECHAP et tapez: wq! pour enregistrer le fichier.

Si vous souhaitez fournir à un utilisateur spécifique un accès global au système, ajoutez cet utilisateur dans /etc/vsftpd/chroot_list.

Redémarrez le service VSFTPD:

# systemctl restart vsftpd

 Appliquer les modifications de configuration

Vérifiez l’état du service FTP à l’aide de la commande suivante:

# systemctl status vsftpd

 Vérifiez l'état du service FTP

Configurer le pare-feu pour FTP

Pour autoriser le service FTP via le pare-feu, utilisez la commande suivante:

# firewall-cmd - - add-service = ftp - - permanent# firewall-cmd - - reload

 Configurer firewalld pour FTP

 Appliquer les modifications de configuration du pare-feu

Tester le serveur FTP à partir d’une machine Windows

Pour se connecter au serveur FTP, vous avez besoin d’un logiciel client. Le logiciel le plus couramment utilisé pour FTP est FileZilla, WINSCP, etc. J’utilise FileZilla pour la connexion.

Ouvrez votre Logiciel Client FTP, entrez les informations suivantes pour vous connecter :

Hôte – > Adresse IP ou nom d’hôte.

Nom d’utilisateur: Nom d’utilisateur FTP (Dans mon cas, c’est user1)

Mot de passe

Port: 21

 Testez la connexion FTP

Une fois connecté avec succès, vous pouvez télécharger / télécharger des fichiers en fonction de vos besoins.

 Connexion FTP testée avec succès

Conclusion

Dans ce tutoriel, nous avons appris à configurer un serveur FTP sur Centos 8, à restreindre les utilisateurs à leur répertoire personnel et à leur accorder un accès en lecture/écriture. Nous avons également vu comment donner à l’utilisateur spécifique un accès général au système.

Comment configurer un serveur FTP sur CentOS 8 en utilisant VSFTPD

You might also like

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée.