VSFTPD não permite upload com usuários virtuais

7

Estou tentando configurar o VSFTPD com usuários virtuais em um servidor que executa o Ubuntu 12.04. Eu configurei o servidor para permitir que usuários virtuais façam login, mas estou tendo problemas para permitir uploads. Meu vsftpd.conf é o seguinte:

listen=YES
anonymous_enable=NO
local_enable=YES
write_enable=YES
local_umask=022
anon_upload_enable=YES
dirmessage_enable=YES
use_localtime=YES
xferlog_enable=YES
connect_from_port_20=YES

chroot_local_user=YES
virtual_use_local_privs=YES
guest_enable=YES
guest_username=virtual
user_sub_token=$USER
local_root=/var/www/$USER
hide_ids=YES

secure_chroot_dir=/var/run/vsftpd/empty
pam_service_name=vsftpd
rsa_cert_file=/etc/ssl/private/vsftpd.pem

/etc/pam.d/vsftpd contém:

auth required pam_pwdfile.so pwdfile /etc/vsftpd.passwd crypt=hash
account required pam_permit.so crypt=hash

Eu tenho dois usuários virtuais configurados, um dos quais tem o mesmo nome de um usuário local. Cada um deles tem um diretório em / var / www / possuído por 'virtual'. Pelo que entendi, quando um usuário virtual faz o login dessa maneira, ele aparecerá no sistema como o usuário virtual. Usar esse usuário de configuração pode fazer logon, mas não pode fazer upload de arquivos. O erro dado em /var/log/vsftpd.log é:

Tue Nov 20 19:49:00 2012 [pid 2] CONNECT: Client "96.233.116.53"
Tue Nov 20 19:49:07 2012 [pid 1] [zac] OK LOGIN: Client "96.233.116.53"
Tue Nov 20 19:49:11 2012 [pid 2] CONNECT: Client "96.233.116.53"
Tue Nov 20 19:49:11 2012 [pid 1] [zac] OK LOGIN: Client "96.233.116.53"
Tue Nov 20 19:49:11 2012 [pid 3] [zac] FAIL CHMOD: Client "96.233.116.53", "/test.ppm 644"

Eu tentei alterar as permissões desses diretórios de várias maneiras, mas nada parece funcionar. Tenho a sensação de que é algo simples relacionado a permissões. Alguma idéia?

    
por Mr. Squig 21.11.2012 / 02:14

4 respostas

0

O problema pode ser causado por permissão de diretório, eu tenho vsftpd que funcionou para mim como abaixo:

anonymous_enable=NO
local_enable=YES
write_enable=YES
local_umask=022
dirmessage_enable=YES
xferlog_enable=YES
connect_from_port_20=YES
chown_uploads=YES
xferlog_file=/var/log/vsftpd.log
xferlog_std_format=YES
ftpd_banner=Welcome to blah FTP service.
ls_recurse_enable=NO
listen=YES
pam_service_name=vsftpd
userlist_enable=YES
tcp_wrappers=YES
    
por 21.11.2012 / 04:27
0

O diretório existe?

 /var/www/zac

e esse diretório pertence ao zac?

tente:

 mkdir -p /var/www/zac; chown zac /var/www/zac; chmod 600 /var/www/zac;

e faça o upload do arquivo novamente

    
por 03.08.2013 / 21:53
0

Tente isso para que os usuários virtuais ativem o acesso de gravação:

virtual_use_local_privs=YES
    
por 25.11.2014 / 10:28
0

O VSFTP não permite uploads para usuários virtuais que você precisa para criar um usuário local ou você pode usar um único usuário mapeado para todos os usuários virtuais. Nesse caso, não é possível controlar a permissão do usuário verifique este link - link

    
por 14.11.2017 / 08:33