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
Dernière révision Les deux révisions suivantes
tutoriel:vsftpd_multi-utilisateurs_multi-dossiers_avec_db_ou_mysql [Le 24/09/2012, 17:01]
ChesterKiK [OPTION : Définir un administrateur général]
tutoriel:vsftpd_multi-utilisateurs_multi-dossiers_avec_db_ou_mysql [Le 01/09/2022, 00:10]
moths-art Passage de http à https sur les liens externes (détecté et corrigé via le bot wiki-corrector (https://forum.ubuntu-fr.org/viewtopic.php?id=2067892)
Ligne 1: Ligne 1:
 +{{tag> Precise tutoriel vsftpd}}
 +----------------
 ====== VSFTPD multi-utilisateurs multi-dossiers avec DB ou MYSQL. ====== ====== VSFTPD multi-utilisateurs multi-dossiers avec DB ou MYSQL. ======
  
Ligne 10: Ligne 12:
  
 Ce tuto suppose que avez un minimum de connaissance en ligne de commande, mais il est suffisamment détaillé pour un débutant. Ce tuto suppose que avez un minimum de connaissance en ligne de commande, mais il est suffisamment détaillé pour un débutant.
-Il a été réalisé sous Ubuntu 12.04, mais peu s'​adapter ​au versions précédentes.+Il a été réalisé sous Ubuntu 12.04, mais peut s'​adapter ​aux versions précédentes.
  
 Pour réaliser cette installation,​ il ne vous faudra pas plus de 10 minutes. Pour réaliser cette installation,​ il ne vous faudra pas plus de 10 minutes.
- 
  
 ===== Pré-requis ===== ===== Pré-requis =====
Ligne 85: Ligne 86:
 virtual_use_local_privs=YES virtual_use_local_privs=YES
 user_sub_token=$USER user_sub_token=$USER
-local_root=/​ftpzone/​$USER'' ​+local_root=/​ftpzone/​$USER
 hide_ids=YES hide_ids=YES
 </​file>​ </​file>​
Ligne 153: Ligne 154:
 Copiez/​collez ce contenu  : Copiez/​collez ce contenu  :
 <​file>​ <​file>​
-auth required /lib/i386-linux-gnu/​security/​pam_userdb.so db=/​etc/​vsftpd_login +auth required /lib/x86_64-linux-gnu/​security/​pam_userdb.so db=/​etc/​vsftpd_login 
-account required /lib/i386-linux-gnu/​security/​pam_userdb.so db=/​etc/​vsftpd_login+account required /lib/x86_64-linux-gnu/​security/​pam_userdb.so db=/​etc/​vsftpd_login
 </​file>​ </​file>​
  
Ligne 162: Ligne 163:
  
  
-==== Une base mySQL ====+==== Une base MySQL ====
   ​   ​
 Pour créer la base de données vsftpd, il est nécessaire de connaître le mot de passe root (ici les étoiles) de votre installation de mysql ou celui d'un autre utilisateur ayant les droits de création. Pour créer la base de données vsftpd, il est nécessaire de connaître le mot de passe root (ici les étoiles) de votre installation de mysql ou celui d'un autre utilisateur ayant les droits de création.
 Nous utiliserons ici des mots de passe cryptés pour nos utilisateurs virtuels. Nous utiliserons ici des mots de passe cryptés pour nos utilisateurs virtuels.
  
-Création de la base de donnée de vsftpd  :+Connexion au serveur MySQL
 <​code>​ <​code>​
-mysqladmin -u root --password='​******'​ create vsftpd ​+sudo mysql
 </​code>​ </​code>​
 +(Ajoutez //-p// à cette commande si vous utilisez un mot de passe pour le compte //root//.)
  
-Entrez ensuite ​dans le système ​de commande SQL, pour créer ​l'utilisateur ​de la base vsftpd, puis créer la table d'​utilisateurs ​virtuels ​et insérer vos deux premiers utilisateurs,​ pour exemple user1 et user2 avec les mots de passe 123456 et 654321 :+Vous entrez alors dans l'​invite ​de commande SQL ou vous pouvez ​créer ​une base de données vsftpd associée à un utilisateur ​MySQL vsftpd, puis créer la table d'​utilisateurs ​FTP et insérer vos deux premiers utilisateurs ​FTP, pour exemple user1 et user2 avec les mots de passe 123456 et 654321 :
  
-<note important>​N'​oubliez pas de changer le mot de passe de l'​utilisateur de la base vsftpd en fonction de vos préférences,​ ici  ​« XpassftpX ».</​note>​+<note important>​N'​oubliez pas de changer le mot de passe de l'​utilisateur de la base vsftpd en fonction de vos préférences,​ ici  ​« mot_de_passe ».</​note>​
 <​code>​ <​code>​
-mysql -u root --password='​******' ​ +CREATE DATABASE vsftpd; 
-GRANT ALL PRIVILEGES ​ON vsftpd.* TO "​vsftpd"​@"​localhost"​ IDENTIFIED BY 'XpassftpX';  +GRANT ALL ON vsftpd.* TO "​vsftpd"​@"​localhost"​ IDENTIFIED BY 'mot_de_passe'; 
-USE vsftpd;  +USE vsftpd; 
-CREATE TABLE `utilisateurs` (  +CREATE TABLE `utilisateurs` ( 
-`username` varchar(64) NOT NULL default '',​  +`username` varchar(64) NOT NULL default '',​ 
-`password` varchar(64) NOT NULL default '',​  +`password` varchar(64) NOT NULL default '',​ 
-`quota` int(10) NOT NULL default '​0',​  +`quota` int(10) NOT NULL default '​0',​ 
-PRIMARY KEY  (username)  +PRIMARY KEY  (username) 
-) ENGINE=MyISAM COMMENT='​Utilisateurs Virtuels pour le ftp';  +) ENGINE=MyISAM COMMENT='​Utilisateurs Virtuels pour le ftp';​ 
-INSERT INTO `utilisateurs` (`username`,​`password`) VALUES ("​user1",​ ENCRYPT("​123456"​)) ;  +INSERT INTO `utilisateurs` (`username`,​`password`) VALUES ("​user1",​ ENCRYPT("​123456"​));​ 
-INSERT INTO `utilisateurs` (`username`,​`password`) VALUES ("​user2",​ ENCRYPT("​654321"​)) ;  +INSERT INTO `utilisateurs` (`username`,​`password`) VALUES ("​user2",​ ENCRYPT("​654321"​));​ 
-quit+QUIT;
 </​code>​ </​code>​
- 
  
  
Ligne 203: Ligne 204:
 </​code>​ </​code>​
 Copiez/​coller ce contenu  : Copiez/​coller ce contenu  :
-<note important>​N'​oubliez pas de modifier le mot de passe de l'​utilisateur de la base vsftpd en fonction de votre création, ici « XpassftpX ».</​note>​+<note important>​N'​oubliez pas de modifier le mot de passe de l'​utilisateur de la base vsftpd en fonction de votre création, ici « mot_de_passe».</​note>​
 <​file>​ <​file>​
-auth       ​required pam_mysql.so user=vsftpd passwd=XpassftpX ​host=127.0.0.1 db=vsftpd table=utilisateurs usercolumn=username passwdcolumn=password crypt=1  +auth       ​required pam_mysql.so user=vsftpd passwd=mot_de_passe ​host=127.0.0.1 db=vsftpd table=utilisateurs usercolumn=username passwdcolumn=password crypt=1  
-account ​   required pam_mysql.so user=vsftpd passwd=XpassftpX ​host=127.0.0.1 db=vsftpd table=utilisateurs usercolumn=username passwdcolumn=password crypt=1 ​+account ​   required pam_mysql.so user=vsftpd passwd=mot_de_passe ​host=127.0.0.1 db=vsftpd table=utilisateurs usercolumn=username passwdcolumn=password crypt=1 ​
 </​file>​ </​file>​
  
  
 **Vos utilisateurs virtuels peuvent maintenant être authentifiés sans être créés comme des utilisateurs locaux.** **Vos utilisateurs virtuels peuvent maintenant être authentifiés sans être créés comme des utilisateurs locaux.**
 +
  
 ===== Dossiers des utilisateurs virtuels ===== ===== Dossiers des utilisateurs virtuels =====
Ligne 472: Ligne 474:
 Si vous obtenez les messages suivants lors de la connexion d'un utilisateur virtuel : Si vous obtenez les messages suivants lors de la connexion d'un utilisateur virtuel :
  
-''​500 OOPS: cannot change directory:/​ftpzone/​user1 the folder doesnt exist''​+<​file>​500 OOPS: cannot change directory:/​ftpzone/​user1 the folder doesnt exist</​file>  ​
 Vous n'avez pas créé le dossier racine de l'​utilisateur Vous n'avez pas créé le dossier racine de l'​utilisateur
  
-''​500 OOPS: vsftpd: refusing to run with writable root inside chroot ()'' ​+ 
 +<​file>​500 OOPS: vsftpd: refusing to run with writable root inside chroot ()</​file> ​
 Vous n'avez pas restreint les droits d'​écriture (555) sur le dossier racine de l'​utilisateur (ex. /​ftpzone/​userx )  Vous n'avez pas restreint les droits d'​écriture (555) sur le dossier racine de l'​utilisateur (ex. /​ftpzone/​userx ) 
  
-Lors du redémarrage si vous constatez un message du type : +----
-''​stop:​ Unknown instance''​ +
-Vous avez une erreur dans le fichier de configuration qui empêche de démmarer le daemon.+
  
  
 +Lors du redémarrage si vous constatez un message du type :
 +<​file>​stop:​ Unknown instance</​file>  ​
 +Vous avez une erreur dans le fichier de configuration qui empêche de démarrer le daemon.
 +
 +----
  
  
 +Lors de la connexion vous obtenez le message
 +<​file>​libgcc_s.so.1 must be installed for pthread_cancel to work ubuntu</​file>​
 +Il vous manque une bibliothèque (normalement installé sous ubuntu 12.04). Vous devez installer le paquet **libpam-ldap** pour résoudre votre problème.
 ===== Voir aussi. ===== ===== Voir aussi. =====
  
 (en) [[https://​security.appspot.com/​vsftpd.html]] (en) [[https://​security.appspot.com/​vsftpd.html]]
  
-(en) [[http://​ubuntuforums.org/​showthread.php?​t=518293]]+(en) [[https://​ubuntuforums.org/​showthread.php?​t=518293]]
  
-(en) [[http://​www.debiantutorials.com/​installing-vsftpd-using-text-file-for-virtual-users/​]]+(en) [[https://​www.debiantutorials.com/​installing-vsftpd-using-text-file-for-virtual-users/​]]
  
  
  • tutoriel/vsftpd_multi-utilisateurs_multi-dossiers_avec_db_ou_mysql.txt
  • Dernière modification: Le 11/09/2022, 12:21
  • par moths-art