VSFTPD - Comment chroot les utilisateurs FTP à leurs répertoires domestiques

VSFTPD - Comment chroot les utilisateurs FTP à leurs répertoires domestiques
Chroot est une caractéristique de sécurité très importante des serveurs FTP.

Lorsque vous vous connectez à un serveur FTP, vous ne voulez pas que les utilisateurs parcourent tout votre système de fichiers. Vous voulez seulement qu'il parcoure les fichiers auxquels il peut accéder, généralement leurs répertoires domestiques. C'est ce que fait chroot. Il verrouille les utilisateurs dans leurs répertoires domestiques. Les utilisateurs ne peuvent parcourir les fichiers et les répertoires de leur répertoire domestique. Peu importe à quel point ils essaient, ils ne pourront pas sortir de leurs répertoires domestiques.

Dans cet article, je vais vous montrer comment utiliser VSFTPD Chroot pour verrouiller les utilisateurs dans leurs répertoires domestiques. Je vais considérer cet article comme une extension de l'article Gérer Apache 2 VirtualHost avec macro sur Ubuntu 18.04 LTS ou Comment configurer Apache VirtualHost sur Ubuntu 18.04 LTS. Assurez-vous de lire ces articles pour configurer tous les utilisateurs FTP et répertoires domestiques. Alors, commençons.

Comment je veux configurer VSftpd:

Dans les articles Apache VirtualHost ci-dessus, je vous ai montré comment configurer Apache VirtualHost et héberger plusieurs sites Web sur un seul serveur Web.

Maintenant, je souhaite laisser tous les propriétaires de sites Web (utilisateurs) pour télécharger les fichiers requis sur leur serveur Web à l'aide de FTP. Donc, je vais configurer VSFTPD d'une manière que les utilisateurs sont en mesure de télécharger les fichiers requis sur leur serveur Web à l'aide de FTP.

Installation de vsftpd sur Ubuntu:

Sur Ubuntu, vous pouvez facilement installer VSFTPD à partir du référentiel de packages officiels d'Ubuntu avec le gestionnaire de packages APT.

Tout d'abord, mettez à jour le cache APT Package Manager avec la commande suivante:

$ sudo apt mise à jour

Maintenant, installez vsftpd avec la commande suivante:

$ sudo apt install vsftpd

VSFTPD doit être installé.

Configuration de vsftpd:

Le fichier de configuration VSFTPD est / etc / vsftpd.confli.

C'est toujours une bonne idée de garder une sauvegarde du fichier de configuration VSFTPD d'origine.

Pour créer un fichier de configuration de sauvegarde VSFTPD / etc / vsftpd.confli.sauvegarde, Exécutez la commande suivante:

$ sudo mv -v / etc / vsftpd.conf / etc / vsftpd.confli.sauvegarde

Maintenant, créez un nouveau / etc / vsftpd.confli fichier avec la commande suivante:

$ sudo nano / etc / vsftpd.confli

Maintenant, saisissez les lignes suivantes et enregistrez le fichier en appuyant sur + X suivie par y et .

Écouter = oui
écouter_ipv6 = non
connect_from_port_20 = oui
anonymous_enable = non
local_enable = oui
write_enable = oui
chroot_local_user = oui
allow_writeable_chroot = oui
sécuris_chroot_dir = / var / run / vsftpd / vide
pam_service_name = vsftpd
pasv_enable = oui
pasv_min_port = 40000
pasv_max_port = 45000
userList_enable = Oui
userList_file = / etc / vsftpd.liste d'utilisateur
userList_deny = non

Finalement, le / etc / vsftpd.confli Le fichier de configuration ressemble à ceci.

Ici, chroot_local_user L'option est responsable du verrouillage des utilisateurs dans leurs répertoires domestiques.

allow_witable_chroot L'option est responsable des autorisations d'écriture sur les répertoires domestiques.

Maintenant, redémarrez le service VSFTPD avec la commande suivante:

$ sudo systemctl redémarrer vsftpd

Maintenant, vérifiez si le service VSFTPD est en cours d'exécution avec la commande suivante:

$ sudo systemctl status vsftpd

Super! Le service VSFTPD est en cours d'exécution.

Maintenant, vous devez ajouter tous les utilisateurs que vous souhaitez connecter à leurs répertoires domestiques et télécharger des fichiers dans un fichier de configuration / etc / vsftpd.liste d'utilisateur

Ouvrir le / etc / vsftpd.liste d'utilisateur Fichier de configuration avec la commande suivante:

$ sudo nano / etc / vsftpd.liste d'utilisateur

Maintenant, saisissez tous les noms d'utilisateur que vous souhaitez permettre d'accéder à leurs répertoires domestiques via FTP ici. Ensuite, enregistrez le fichier en appuyant sur + X suivie par y et .

Accès au serveur FTP:

Maintenant, vous pouvez utiliser n'importe quel client FTP pour vous connecter à votre serveur FTP. Le client FTP le plus populaire est Filezilla.

Sur Linux, vous pouvez également utiliser le gestionnaire de fichiers Nautilus pour vous connecter à votre serveur FTP.

Sur Windows, vous pouvez ajouter votre serveur FTP comme emplacement du réseau et télécharger des fichiers là-bas.

Tout d'abord, vous devez connaître l'adresse IP ou le nom d'hôte de votre serveur FTP.

Vous pouvez trouver l'adresse IP de votre serveur FTP avec la commande suivante:

$ ip a | Egrep "Inet"

Comme vous pouvez le voir, l'adresse IP de mon serveur FTP est 192.168.21.187. Ça devrait être différent pour toi. Alors, assurez-vous de le remplacer par le vôtre à partir de maintenant.

Utilisation de Nautilus pour accéder au serveur FTP:

Si vous souhaitez vous connecter à votre serveur FTP à l'aide de Nautilus sur Linux, d'abord, ouvrez Nautilus et cliquez sur Autres emplacements. Ensuite, tapez FTP: // username @ ip_addr ou ftp: // username @ domain_name dans la section Connexion à serveur. Ensuite, cliquez sur Connecter.

Maintenant, saisissez le mot de passe de votre utilisateur (dans mon cas, Alice) et cliquez sur Ouvrir. Vous pouvez également vérifier Se souvenir du mot de passe, Si vous voulez que Nautilus se souvienne des informations d'identification de connexion. Sinon, laissez-le sans contrôle.

Vous devriez être connecté. Comme vous pouvez le voir, le répertoire www est là.

Comme vous pouvez le voir, je peux aller de l'avant la chaîne d'annuaire.

Le indice.html Le fichier est également à l'intérieur du public_html / annuaire.

Comme vous pouvez le voir, j'ai téléchargé un fichier et cela fonctionne. Je peux également accéder au fichier HTML depuis le serveur Apache.

Ajout de l'emplacement du réseau FTP sur Windows:

Si vous souhaitez vous connecter à votre serveur FTP et l'utiliser sur Windows en ajoutant un emplacement du réseau, consultez le Accéder au serveur FTP Section de l'article Comment configurer un serveur FTP avec VSFTPD sur Ubuntu 18.04 LTS.

C'est donc ainsi que vous configurez VSFTPD et le configurez pour chroot les utilisateurs FTP à leurs répertoires domestiques. Merci d'avoir lu cet article.