#1 Le 07/11/2015, à 13:31
- adgenodux
[RESOLU] VSFTPD - Autoriser écriture dans répertoires hors HOME
Bonjour à tous,
Je sollicite votre expertise pour un problème que je ne parviens pas à résoudre.
Je souhaite pouvoir autoriser l'édition via ftp par un utilisateur local non virtuel, de fichiers distants se trouvant en dehors du répertoire personnel, comme le www par ex.
Ainsi j'ai créé un "dossier de travail" dans le répertoire utilisateur et ajouté une entrée dans le fstab pour donner un accès au répertoire utile :
/var/www/html /home/utilisateur/dossier_travail none bind 0 0
Alors, sur un serveur de test (ubuntu 12.04 lts), cela semble fonctionner, les modifs se font, malgré avoir le message d'erreur suivant dans la console de mon client FTP (filezilla):
set attrs for /chemin/vers/fichier/modifié: permission denied
A quoi ce message correspond-il si les modifs semblent bien réalisées (vérifié en console après la modif) ?
Ensuite, j'essaye de reproduire la même chose sur mon serveur principal (ubuntu 14.04 lts) mais cela ne fonctionne pas, malgré avoir notamment désactivé le chroot comme sur le serveur de test et j'obtiens le message d'erreur suivant:
/chemin/vers/fichier/a/modifier: open for write: permission denied
12:28:12 Erreur : Échec du transfert du fichier
Ce qui m'étonne aussi, c'est que certains fichiers semblent manquant quand je compare l'install du serveur test avec celle du serveur principal.
Ainsi je n'ai pas de fichier /var/log/vsftpd.log ni de fichier vsftpd dans /etc/init.d alors que vsftpd est bien actif.
A toutes fins utiles, les réglages principaux de mon vsftpd.conf:
listen=YES
listen_address= xx.xx.xx.xx
anonymous_enable=NO
local_enable=YES
write_enable=YES
local_umask=022
anon_other_write_enable=NO
anon_mkdir_write_enable=NO
xferlog_enable=YES
xferlog_file=/var/log/vsftpd.log
xferlog_std_format=YES
dual_log_enable=YES
chroot_local_user=NO
chroot_list_enable=NO
secure_chroot_dir=/var/run/vsftpd
ssl_enable=YES
force_local_data_ssl=NO
force_local_logins_ssl=NO
ssl_tlsv1=YES
ssl_sslv2=YES
ssl_sslv3=YES
rsa_cert_file=/chemin/vers/fichier.cert.pem
rsa_private_key_file=/chemin/vers/fichier.key.pem
allow_anon_ssl=NO
pam_service_name=vsftpd
virtual_use_local_privs=YES
guest_enable=YES
user_sub_token=$USER
guest_username=user_ftp
user_config_dir=/etc/vsftpd/vsftpd_user_conf
local_root=/home/$USER
... et accessoirement, le filtre Fail2ban pour vsftpd:
# Fail2Ban filter for vsftp
#
[INCLUDES]
before = common.conf
[Definition]
__pam_re=\(?pam_unix(?:\(\S+\))?\)?:?
_daemon = vsftpd
failregex = ^%(__prefix_line)s%(__pam_re)s\s+authentication failure; logname=\S* uid=\S* euid=\S* tty=(ftp)? ruser=\S* rhost=<HOST>(?:\s+user=.*)?\s*$
^ \[pid \d+\] \[.+\] FAIL LOGIN: Client "<HOST>"\s*$
ignoreregex =
# Author: Cyril Jaquier
J'avoue être un peu perdu et ne plus bien savoir où regarder
Auriez-vous des suggestions pour résoudre ça ?
Merci de votre aide...
Adgenodux
Dernière modification par adgenodux (Le 10/11/2015, à 17:47)
Hors ligne
#2 Le 07/11/2015, à 14:18
- mikael8349
Re : [RESOLU] VSFTPD - Autoriser écriture dans répertoires hors HOME
Hi !
Je n'ai pas eu le temps de regardé réelement ton problème, mais juste un conseil perso que je mets en application par habitude :
- enlève la partie "sécurité". Une fois que tout est ok, mets en place la sécurité. Donc désactive iptables et fail2ban dans un premier temps
Sinon, vspftp tourne t-il ?
ps aux | grep vsftpd
Hors ligne
#3 Le 07/11/2015, à 15:21
- adgenodux
Re : [RESOLU] VSFTPD - Autoriser écriture dans répertoires hors HOME
Bonjour Mikael8349 et merci de ta réponse.
Alors j'ai essayé en désactivant iptables et fail2ban mais cela ne change rien, le problème semble venir d'ailleurs.
A l'évidence vsftpd fonctionne puisque je peux de toutes façons me connecter et travailler dans ma session donc à la question j'obtiens tout logiquement :
~$ sudo ps aux | grep vsftpd
[sudo] password for adgenodux:
adgenod+ 27229 0.0 0.0 11716 908 pts/0 S+ 14:53 0:00 grep --color=auto vsftpd
root 32102 0.0 0.0 23536 1856 ? Ss 12:27 0:00 vsftpd: LISTENER
Merci de t'intéresser au problème
Hors ligne
#4 Le 10/11/2015, à 17:46
- adgenodux
Re : [RESOLU] VSFTPD - Autoriser écriture dans répertoires hors HOME
Bon, j'ai trouvé l'origine du problème, encore une bêtise, une question de droits
En fait, comme mon apache est passé en version 2.4, le répertoire de travail www est désormais /var/www/html où j'avais bien transféré mon site mais sans effacer l'ancien contenu pour "le cas où" et moi gros malin, j'ai travaillé sur les droits du répertoire /var/www et non /var/www/html
Du coup après une toute petite correction, ça marche désormais très bien, on peut maintenant éditer en dehors du chroot mais je m'étonne tout de même d'avoir un message d'erreur dans ma console Filezilla, malgré que les modifications se font très bien. Le message est le suivant, si quelqu'un a une idée:
set attrs for /home/mon_user/chemin/vers/fichier_a_modifier: permission denied
Sinon la procédure que j'ai suivi pour donner un accès au répertoire WWW se trouve ICI.
J'ai donc créé un utilisateur local que j'ai ajouté au groupe www-data et j'ai modifié les permissions du répertoire /var/www/html pour autoriser le groupe www-data à écrire dedans.
That's it !
Hors ligne