GNU/Linux >> Tutoriels Linux >  >> Linux

Pourquoi le chroot_local_user de vsftpd n'est-il pas sécurisé ?

Solution 1 :

Consultez ici la FAQ de VSFTPD pour la réponse que vous recherchez. Vous trouverez ci-dessous l'extrait important qui, je pense, répondra à votre question.

Q) Au secours ! Quelles sont les implications de sécurité mentionnées dans l'option "chroot_local_user" ?

A) Notez tout d'abord que d'autres démons ftp ont les mêmes implications. C'est un problème générique. Le problème n'est pas trop grave, mais c'est ceci :certaines personnes ont des comptes d'utilisateurs FTP qui ne sont pas fiables pour avoir un accès complet au shell. Si ces comptes peuvent également télécharger des fichiers, il y a un petit risque. Un mauvais utilisateur a maintenant le contrôle de la racine du système de fichiers, qui est son répertoire personnel. Le ftpdaemon peut entraîner la lecture de certains fichiers de configuration - par ex. /etc/un_fichier. Avec chroot(), ce fichier est maintenant sous le contrôle de l'utilisateur. vsftpd est prudent dans ce domaine. Mais, la libc du système peut vouloir ouvrir les fichiers localeconfig ou d'autres paramètres...

Solution 2 :

Le problème est que vous ne pouvez pas à la fois utiliser des comptes locaux et désactiver ces comptes à partir de la connexion au shell. Si vous définissez leur shell de connexion sur /bin/nologin, il ne vous permettra pas non plus de vous connecter avec vsftpd.

Un démon FTP meilleur et plus sécurisé serait Pure-ftpd. Cherchez-le, il est disponible dans le référentiel EPEL et permet de créer des utilisateurs virtuels. Le serveur utilise un utilisateur/groupe commun pour définir toutes les autorisations pour les dossiers de base des utilisateurs et "mappe" les utilisateurs virtuels à cet utilisateur lorsqu'il se connecte pour gérer les autorisations. C'est plus sécurisé et vous n'avez pas à gérer la sécurité de connexion d'opensh.

Pure-ftpd prend également en charge de nombreuses fonctionnalités telles que les quotas, les ratios, etc. Bien mieux que vsftpd.

Voici un tutoriel simple sur la façon de l'installer et de configurer un utilisateur virtuel de base :http://blog.namran.net/2011/05/04/how-to-setup-virtual-ftp-server-using-pure-ftpd- in-centos/

Si vous lisez la doc complète (ce que vous devriez), vous saurez que le commutateur -d lors de la création de l'utilisateur virtuel est un auto-chroot vers ce répertoire pour cet utilisateur.


Linux
  1. Configurer un serveur FTP avec vsFTPd sur le Raspberry Pi

  2. Erreur "530 :autorisation refusée" lorsque l'utilisateur se connecte au serveur vsftpd via ftp

  3. Pourquoi l'utilisateur le plus puissant d'un système Unix/Linux s'appelle-t-il "root ?"

  4. Pourquoi l'utilisateur 'bin' a-t-il besoin d'un shell de connexion ?

  5. Pourquoi le bit setuid fonctionne-t-il de manière incohérente ?

Limiter l'accès FTP uniquement à /var/www avec Vsftpd ?

La fonction de la racine du groupe d'utilisateurs ? ?

La commande d'arrêt ?

Qu'est-ce que l'utilisateur debian-+ ?

FTP n'autorise pas l'utilisateur /usr/sbin/nologin

Centos 7 - ajouter un utilisateur au groupe sudoers - n'est toujours pas dans le fichier sudoers - pourquoi ?