logo Debian Debian Debian-France Debian-Facile Debian-fr.org Forum-Debian.fr Debian ? Communautés logo inclusivité

Debian-facile

Bienvenue sur Debian-Facile, site d'aide pour les nouveaux utilisateurs de Debian.

Vous n'êtes pas identifié(e).


L'icône rouge permet de télécharger chaque page du wiki visitée au format PDF et la grise au format ODT → ODT PDF Export

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
Prochaine révision Les deux révisions suivantes
utilisateurs:hypathie:tutos:vsftpd [30/09/2014 19:30]
Hypathie [Installation et configuration]
utilisateurs:hypathie:tutos:vsftpd [02/10/2014 17:41]
Hypathie créée
Ligne 1: Ligne 1:
-====== vsftpd ======+====== ​Le serveur ​vsftpd ======
  
-  * Objet : mettre en place un serveur ​de partage de fichier FTP +  * Objet : Installation et configuration du serveur ​ftp vsftpd. ​ 
-  * Niveau requis : FIXME {{tag>débutant ​avisé}} +  * Niveau requis : {{tag>​avisé}}
-  * Commentaires : //Contexte d'​utilisation du sujet du tuto. // FIXME+
   * Débutant, à savoir : [[:​doc:​systeme:​commandes:​le_debianiste_qui_papillonne|Utiliser GNU/Linux en ligne de commande, tout commence là !.]] :-)   * Débutant, à savoir : [[:​doc:​systeme:​commandes:​le_debianiste_qui_papillonne|Utiliser GNU/Linux en ligne de commande, tout commence là !.]] :-)
  
-===== Installation et configuration ​===== +===== Introduction ​===== 
-===Installation=== +Ce wiki a pour but de détailler les différentes étapes pour mettre en place un serveur de partage de fichier FTP, en utilisant ​vsftpd ​(Very Secure FTP Daemon).\\ ​
-<code root>​apt-get install ​vsftpd</​code>​+
  
-Pendant la configuration on arrête ​le serveur ​:+Un serveur vsftpd permet comme un serveur FTP de déterminer un le lieu sur votre serveur ​depuis lequel il est possible de transférer des fichiers depuis son ordinateur personnel sur lequel est installé un client ftp.\\ ​
  
-<code root>/​etc/​init.d/​vsftpd stop</​code>​+Il y a plusieurs façon de créer des espaces ftp:
  
-===Configuration=== +- En utilisant ou en créant un utilisateur linux dont le répertoire personnel sera l'​espace ftp.
-Le but ici est d'​utiliser ​le serveur FTP uniquement avec des utilisateurs virtuels, et non avec les utilisateurs locaux du système Unix.\\ +
  
-(Se faire une sauvegarde du fichier ​de configuration)+- En utilisant ​une base de donnée de type Berkeley (mode utilisateurs viruels)
  
-  * Éditer le fichier de configuration /​etc/​vsftpd.conf +Nous allons d'​abord mettre ​en œuvre la solution un utilisateur linux pour chaque espace ftp car c'est certainement la solution la plus simple. Elle ne convient pas pour un grand nombre d'espaces FTP. 
-<code root>vim /​etc/​vsftpd.conf</​code>​ +
-On dé-commente les lignes suivantes : +
-<​code>​ +
-anonymous_enable=NO # Par défaut, mais là on met en place des utilisations virtuels +
-local_enable=YES #autoriser les utilisateurs locaux à utiliser le FTP, +
-                 # y compris les utilisateurs virtuels +
-write_enable=NO ​ # On désactive l'écriture +
-nopriv_user=ftpsecure # (1) +
-chroot_local_user=YES # emprisonner l'utilisateur dans son propre répertoire+
  
-#ajout pour utilisateur ftpsecure +La faille majeur d'un serveur vsftpd est que tout passe en clair. Il faudra donc installer un certificat ssl qui permet le chiffrement de la connexion au serveur. 
-guest_enable=YES +  
-guest_username=ftpvirtual+===== Installation et utilisation===== 
 +====Installation de vsftpd et de open-ssl ==== 
 +===Installation de vsftpd=== 
 +<code root>​apt-get install vsftpd</​code>​
  
-#Ajout pour activer la configuration par utilisateur +===Mon serveur vsftp est-il en fonction? === 
-user_config_dir=/​etc/​vsftpd_user_conf +Pour le savoir deux méthodes : 
-</​code>​ +<code root>​netstat -a | grep ftp</​code>​ 
-(1) Le démon vsftpd peut utiliser un utilisateur sans privilège. Par défaut, il utilisera nobody, comme tout autre démon ​en dé-commentant,​ on lui dédie un utilisateur comme ftpsecure.+<code>tcp    0      0 *:ftp     *:*      LISTEN</​code>​
  
-===On dédie l'​utilisateur "​ftpsecure"​=== +-> C'est ok !
-<code root>​useradd ​-r -s /bin/false ftpsecure</​code>+
  
-===Création ​d'un répertoire utilisateur ftp ===+<code root>/​etc/​init.d/vsftpd status</​code>​ 
 +<​code>​vsftpd is running</​code>​
  
-<code root>​useradd ​-m ftpvirtual</​code> +-> C'est ok aussi !
- +
-===Ajout des droits en écriture sur le répertoire ftpvirtual === +
-<code root>​chmod a-w /​home/​ftpvirtual/</​code>​ +
- +
-===Créer le répertoire de configuration de l'utilisateur virtuel=== +
-<code root>​mkdir /​etc/​vsftpd_user_conf</​code>​ +
- +
-====Configurer SSL pour vsFTPd ==== +
-Il faut éditer le fichier de configuration de vsftpd.+
  
 +===Connexion avec configuration basique===
 +Attention il faut être derrière un routeur c'​est-à-dire en local.
 +  * On fait quelques menues modification au fichier de configuration "/​etc/​vsftpd.conf"​
 <code root>vim /​etc/​vsftpd.conf</​code>​ <code root>vim /​etc/​vsftpd.conf</​code>​
 +<​code>​listen=YES
 +anonymous_enable=NO
 +local_enable=YES
 +ftpd_banner=Bienvenue !</​code>​
  
-<​code>​ +===Première connexion avec le compte de l'​utilisateur principal sur le serveur=== 
-ssl_enable=YES +Depuis le client une autre machine virtuelle par exemple que celle sur laquelle on a installé ​vsftpd ​on tape simplement ​
-rsa_private_key_file=/​etc/​ssl/​private/​vsftpd.key.pem +<​code ​user>ftp 192.168.0.10</​code>​ 
-rsa_cert_file=/​etc/​ssl/​certs/​vsftpd.cert.pem</​code>​ +192.168.0.10 étant l'IP du serveur vsftpd 
- +<​code>​Connected to 192.168.0.10
- +220 Bienvenue ! 
-===Création des clés privée/​publique ​=== +Name (192.168.0.10:hypathie)hypathie 
- +331 Please specify the password
-<code root>​openssl genrsa -des3 -out /​etc/​ssl/​private/​vsftpd.key.pem</​code>​ +Password: 
- +230 Login successful
-On donne les droits de lecture ​+Remote system type is UNIX
-<​code ​root>chmod 400 /​etc/​ssl/​private/​vsftpd.key.pem</​code>​ +Using binary mode to transfer files
- +ftpexit 
-===Création du certificat=== +221 Goodbye.</​code>​
-<code root>openssl req -new -key /​etc/​ssl/​private/​vsftpd.key.pem -out /​etc/​ssl/​certs/​vsftpd.cert.pem</​code>​ +
- +
-====Créer une base de donnée ==== +
-<code root>cd /​etc/</​code>​ +
- +
-<code root>vim vsftpd_logins.txt</​code>​ +
-<​code>​user +
-password +
-user2 +
-password2</​code>​ +
- +
-  * Installer les outils pour une base de donnée de type Berkeley ​: +
- +
-<​code ​root>apt-get install db-util</​code>​ +
- +
-  * Convertir le fichier utilisateur/​mot-de-passe : +
-<code root>​db_load -T -t hash -f /​etc/​vsftpd_logins.txt /​etc/​vsftpd_login.db</​code>​ +
- +
-  * Modifier les droits des deux fichiers : +
-<code root>​chmod 600 /​etc/​vsftpd_login.txt /​etc/​vsftpd_login.db</​code>​ +
- +
- +
-====Créer un fichier de règle PAM ==== +
-Cela permet d'​utiliser cette base de données lors de l'​authentification des utilisateurs. +
- +
-  * Supprimer le fichier PAM existant ​: +
- +
-<code root>mv /​etc/​pam.d/​vsftpd /home/hypathie/​PAM-OLD</​code>​ +
- +
-  * En éditer un nouveau ​+
-<code root>vim /etc/pam.d/​vsftpd</​code>​ +
-<​code></​code>​ +
- +
-====Créer un fichier de configuration par utilisateur==== +
-Pour l'​instant,​ l'​utilisateur virtuel peut lire les fichiers présents dans le répertoire de dépôt FTP+
-On va lui donner les droits d'​uploader lui-même des fichiers+
- +
-Pour cela, chaque utilisateur virtuel devra avoir sa propre configuration située dans le répertoire /​etc/​vsftpd_user_conf+
- +
-  * Editer le fichier de configuration d'un utilisateur virtuel : +
- +
-<code root>vim /​etc/​vsftpd_user_conf/​user</​code+
-<​code>​ +
-anon_world_readable_only=NO +
-write_enable=YES +
-anon_upload_enable=YES +
-anon_mkdir_write_enable=YES +
-anon_other_write_enable=YES +
-</​code>​ +
- +
-====Redémarrer et tester==== +
-  * Redémarrer le service vsftpd : +
-<code root>/​etc/​init.d/vsftpd start</​code>​+
  
-  * Se connecter au serveur : 
-<code root>ftp localhost</​code>​ 
  
 ===== Utilisation ===== ===== Utilisation =====
  
  
utilisateurs/hypathie/tutos/vsftpd.txt · Dernière modification: 02/10/2014 18:40 par Hypathie

Pied de page des forums

Propulsé par FluxBB