Vous êtes sur la page 1sur 3

VSFTP

Le serveur FTP (File Transfer Protocol) le plus courant est vsftpd (Very Secure FTP Daemon). Il a l’avantage d’être très
petit, performant et rapide tout en étant tout de même très configurable (moins toutefois que Proftpd ou d’autres). Il
convient dans la quasi-totalité des situations. C’est un service qui peut aussi bien être lancé par xinetd que (dans les
dernières versions des distributions) en tant que service seul.
Deux niveaux de sécurité sont utilisables :
• Anonyme : tout le monde peut se connecter au serveur FTP en tant que utilisateur ftp ou anonymous.
l’environnement FTP est chrooté.
• Utilisateur : les utilisateurs qui existent sur le serveur peuvent se connecter avec leur mot de passe et ont un
accès complet à leurs données dans leur répertoire personnel.
• Les utilisateurs anonymes étant considérés comme l’utilisateur ftp, c’est le répertoire personnel de ce compte
qui est la racine du ftp.
Mode FTP actif et FTP passif
Historiquement, les clients FTP travaillaient en mode actif où la session est établie sur le port 21 du serveur, et où les
données sont envoyées depuis le port 20 et à l’initiative du serveur vers un port quelconque du client. Ce fonctionnement qui
date d’avant la généralisation des parefeu ne va pas sans poser de problème dans la mesure où il est vu par le parefeu
comme une session ouverte depuis le serveur sur un port imprévisible du client.
Le mode passif est venu corriger cet état de fait en faisant établir les deux sessions par le client. Le port utilisé pour les
données est alors quelconque, annoncé par le serveur en mode commande, et utilisé par le client pour l’ouverture de la
session de données.

Le fichier de configuration est présent dans : /etc/vsftpd/vsftpd.conf.


• La racine du ftp par défaut est dans /var/ftp.
• Le script de lancement est /etc/init.d/vsftpd (service vsftpd start).
• Pour activer ou non l’accès anonyme on modifie le fichier de configuration. Dans ce cas, l’utilisateur peut se
connecter en tant que anonymous ou ftp. Dans tous les cas, il sera reconnu comme utilisateur « ftp » du serveur
une fois connecté :
anonymous_enable=YES/NO
• Pour activer ou non l’envoi de fichiers sur le serveur par des anonymes. Dans ce cas, l’autorisation d’écriture
dans un répertoire est fonction des droits du répertoire sur le serveur (notamment si l’utilisateur ftp a le droit
d’écrire ou non dans un répertoire) :
anon_upload_enable=YES/NO

• Vous pouvez interdire à des utilisateurs de se connecter en plaçant leurs noms dans /etc/vsftpd/ftpusers.
• Vous pouvez ajouter des utilisateurs dans /etc/vsftpd.user_list si userlist_enable=YES. Dans ce cas, c’est la
valeur de userlist_deny (YES/NO) qui déterminera si le fichier contient les utilisateurs interdits ou autorisés.
• On peut créer dans chaque répertoire du serveur un fichier .message. Dans ce cas, son contenu sera affiché lors
de l’accès au répertoire.

# Port d'ecoute
listen_port=21
# Bannière de bienvenue
ftpd_banner=Bienvenue sur mon ftp perso
# Fichier de config PAM
pam_service_name=vsftpd
# Mode "standalone"
listen=YES
# Je ne veux pas de connexion anonyme
anonymous_enable=Yes
# On autorise les connexions des utilisateurs locaux. C'est indispensable
# pour que les utilisateurs virtuels (mappes sur un utilisateur local)
# puissent se connecter (les "vrais" utilisateurs locaux sont ensuite désactives
# avec le fichier user_list
local_enable=YES
# Fichier de users
userlist_file=/etc/vsftpd/user_list
# Chargement de la liste userlist_file
userlist_enable=YES
# On refuse les utilisateurs de la liste
userlist_deny=YES
# trop restrictif, un utilisateur virtuel pourra ainsi télécharger un fichier même s'il n'est pas world readable
anon_world_readable_only=NO
# Refus des droits d'écriture pour les anonymes (et donc utilisateurs virtuels) par défaut
# les autorisations seront données au cas par cas :
# pas d'upload
anon_upload_enable=NO
# pas de création de répertoire
anon_mkdir_write_enable=NO
# pas de création, suppression, renommage de répertoire ...
anon_other_write_enable=NO
# On fait en sorte que les utilisateurs "guest" (non-anonymes) soient mappés sur le compte local "ftp"
guest_enable=YES
guest_username=ftp
# chroot des utilisateurs
chroot_local_user=YES
# Nombre maximum de connexions simultanées
max_clients=50
# Nombre maximum de connexion venant de la même IP
max_per_ip=4
# Dossier de configuration spécifique des utilisateurs
user_config_dir=/etc/vsftpd/vsftpd_user_conf
# On active le log
xferlog_enable=YES
Les clients FTP
Les clients FTP graphiques
Les clients FTP graphiques sont nombreux et existent pour toutes les platesformes. On peut citer filezilla qui est un
produit open source très populaire sur les systèmes Windows. La configuration et l’usage des clients FTP graphique
variant selon les produits et ne présentant pas de difficulté majeure, leur utilisation ne sera pas traitée ici.

Le client FTP en lignes de commandes


• La plupart des systèmes incluent un client FTP en lignes de commandes. Le mode de fonctionnement de ces
clients peut les rendre inconfortables pour un usage fréquent mais ils sont extrêmement pratiques pour tester
la configuration d’un serveur FTP.
• Le chargement de ces clients se fait le plus simplement du monde par la commande ftp.
• L’avantage principal du client FTP en ligne de commande est qu’il permet de réaliser toutes les opérations
voulues une à une, et donc de comprendre en cas de dysfonctionnement où se situe l’échec. Au contraire, les
clients graphiques ont tendance à automatiser un grand nombre d’opérations. Pour une connexion FTP avec
Internet Explorer par exemple, la connexion est automatiquement anonyme, et un mot de passe standard est
automatiquement envoyé.
Client FTP : commandes courantes

Vous aimerez peut-être aussi