Red Hat Enterprise Linux est fourni avec deux serveurs FTP différents :
Accélérateur de contenu Red Hat — Un serveur Web basé sur le noyau qui fournit un serveur Web haute performance et des services FTP. Étant donné que le but de sa conception est à l'origine la vitesse, ses fonctionnalités sont limitées et son fonctionnement n'est possible que comme serveur FTP anonyme. Pour obtenir de plus amples informations sur la configuration et l'administration de l'Accélérateur de contenu Red Hat, consultez la documentation disponible en ligne à l'adresse suivante : http://www.redhat.com/docs/manuals/tux/.
vsftpd — Un démon FTP sécurisé et rapide qui est le serveur FTP préféré pour Red Hat Enterprise Linux. Le reste de ce chapitre se concentre sur vsftpd.
Le démon vsftpd (acronyme de Very Secure FTP Daemon) est conçu pour être rapide, stable et surtout sécurisé du point de branchement à l'utilisateur final. Sa capacité à traiter un grand nombre de connexions de manière efficace et sécurisée explique la raison pour laquelle vsftpd est le seul FTP autonome distribué avec Red Hat Enterprise Linux.
Le modèle de sécurité utilisé par vsftpd possède trois caractéristiques essentielles, à savoir :
Séparation claire entre les processus privilégiés et les processus non-privilégiés — Des processus différents traitent différentes tâches et chacun de ces derniers fonctionne avec le minimum de privilèges nécessaires pour la tâche à exécuter.
Les tâches demandant un degré élevé de privilèges sont traitées par des processus dotés du minimum de privilèges nécessaires — En contrôlant les compatibilités, contenues dans la bibliothèque libcap, des tâches qui nécessitent généralement l'ensemble des privilèges root peuvent être exécutées de manière plus sûre depuis un processus doté de privilèges moins étendus.
La plupart des processus sont exécutés dans une prison chroot — Autant que possible, le répertoire root des processus devient le répertoire partagé ; ce répertoire est alors considéré comme une prison chroot. Par exemple, si le répertoire /var/ftp/ est le répertoire partagé primaire, vsftpd réassigne alors /var/ftp/ au nouveau répertoire root, /. Cette situation empêche toute activité de la part de pirates malintentionnés sur les répertoires qui ne sont pas présents sous le nouveau répertoire root.
L'utilisation de ces pratiques de sécurité entraîne les conséquences suivantes sur la manière dont vsftpd traite les requêtes :
Le processus parent tourne avec le moins de privilèges requis. — Le processus parent calcule dynamiquement le degré de privilèges dont il a besoin pour minimiser le degré de risque. Les processus enfants traitent l'interaction directe avec les clients FTP et tournent avec aussi peu de privilèges que possible.
Toutes les opérations nécessitant un degré élevé de privilèges sont traitées par un petit processus parent — D'une manière semblable à Serveur HTTP Apache, vsftpd lance des processus enfants non-privilégiés pour le traitement des connexions entrantes. Ce faisant, le processus parent privilégié peut être aussi petit que possible et traiter relativement peu de tâches.
Le processus parent se méfie de toutes les requêtes provenant de processus enfants non-privilégiés — Toute communication avec des processus enfants est reçue sur un socket et la validité de toute information provenant de processus enfants est vérifiée avant que toute opération ne soit exécutée.
La plupart de l'interaction avec les clients FTP est traitée par des processus enfants non-privilégiés dans une prison chroot — Étant donné que ces processus enfants ne sont pas privilégiés et n'ont accès qu'au répertoire partagé, tout processus planté ne permet à un agresseur d'accéder qu'aux fichiers partagés.
Précédent | Sommaire | Suivant |
FTP | Niveau supérieur | Fichiers installés avec vsftpd |