#language fr ||~-[[DebianWiki/EditorGuide#translation|Traduction(s)]]: - [[vsftpd|English]] - Français - [[ru/vsftpd|Русский]] -~|| (!) [[/Discussion|Discussion]]|| ---- <> ''' Installation et configuration du serveur ftp DebianPkg:vsftpd. ''' == Introduction == Cet article a pour but de détailler les différentes étapes pour mettre en place un serveur de partage de fichier FTP, en utilisant DebianPkg:vsftpd (Very Secure FTP Daemon). == Installation == Comme à l'habitude, l'installation est très simple avec [[apt-get]] ou [[Aptitude]]. En tant que root tapez : {{{ aptitude install vsftpd }}} Après l'instalation, le serveur démarre automatiquement et écoute le port TCP par défaut. Vous pouvez vérifier cela grâce à netstat : {{{ # netstat -npl Active Internet connections (only servers) Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name tcp 0 0 0.0.0.0:21 0.0.0.0:* LISTEN 22468/vsftpd }}} Si le serveur n'est pas derrière un firewall, il est recommandé d'arrêter vsftpd avant de le configurer. {{{ /etc/init.d/vsftpd stop }}} ou {{{ service vsftpd stop }}} == Configuration == Le fichier de configuration pour ce serveur est {{{/etc/vsftpd.conf}}}. Vous pouvez trouver des exemples de fichier de configuration dans {{{/usr/share/doc/vsftpd/EXAMPLE}}}. Le fichier de configuration a trois types d'options : * BOOLEAN OPTIONS - qui peuvent être YES ou NO; * NUMERIC OPTIONS - comme un temps en seconde, un numéro de port * STRING OPTIONS - un chemin de dossier ou de fichier '''/var/run/vsftpd/'''; Si certaines options ne sont pas présentes dans le fichier configuration, le serveur utilisera les paramètres par défaut (voir [[DebianMan:5/vsftpd.conf|man vsftpd.conf]]). === Comptes Anonymes === Par défaut seule la connexion anonyme est autorisée, elle a accès au répertoire {{{/srv/ftp/}}} . Si vous voulez le désactiver, changez : {{{ anonymous_enable=NO }}} Pour activer le téléversement anonymes, configurez : * {{{anon_upload_enable}}} - autorise le téléversement de fichier pour les utilisateurs anonymes. * {{{anon_mkdir_write_enable}}} - autorise la création de répertoire. * {{{anon_root=/data/directory}}} - permet de changer le dossier par défaut. Pour autoriser le changement de propriétaire des fichiers, configurez : {{{ chown_uploads=YES chown_username=utilisateur }}} === Contrôle les accès utilisateurs === Afin d'activer l'autorisation pour les utilisateurs locaux, décommentez : {{{ local_enable=YES }}} Pour autoriser l'accès en écriture : {{{ write_enable=YES }}} == Gestion des utilisateurs == === Confinement des utilisateurs === Les comptes utilisateurs peuvent avoir accès aux fichiers de tout le système ce qui n'est pas toujours souhaitable et peux aider à compromettre la machine, ils peuvent être confinés en modifiant {{{vsftpd.conf}}} : {{{ chroot_local_user=YES }}} La racine de leur FTP sera alors leur répertoire personnel. Malgré tout, un compte peut être utilisé pour se connecter ailleurs qu'au ftp : ssh, getty (login du terminal) sont des exemples. Il aura alors quand même accès au reste du système par le shell. Vous pouvez configurer les services donnés en exemple pour bloquer le compte ou pour le confiner, mais la solution généraliste est de désactiver le shell pour l'utilisateur. Pour cela on assigne le shell de l'utilisateur vers {{{false}}}, un simple binaire qui renvoie un signal d'erreur : {{{ usermod -s /bin/false }}} Il faut ensuite ajouter {{{false}}} à la liste des shells : {{{ /bin/false >> /etc/shells }}} == Redémarrer le service == Pour que les modifications du fichier vfstpd.conf soient prises en compte, il faut relancer le service ftp : {{{ service vsftpd restart }}} ou, si il avait été arrété : {{{ service vsftpd start }}} == Voir aussi : == * http://vsftpd.beasts.org/ - Site officiel * http://vsftpd.beasts.org/vsftpd_conf.html - Fichier de configuration pour vsftp * https://wiki.debian-facile.org/doc:reseau:vsftpd ''(fr)'' : Plus d'informations sur le wiki de debian-facile.org