O vsftpd pode ser configurado para configurar chroots arbitrários por usuário virtual

1

Idealmente, gostaria de algo como a capacidade do proftpds de fazer isso

DefaultRoot /var/www/whatever/userone/ user1
DefaultRoot /home/directory/whatever/ user2

É importante que isso seja para usuários virtuais.

    
por RecQuery 25.01.2011 / 21:13

2 respostas

1

Sim, é possível, veja meu post aqui:

vsftpd - local_root = / var / www / sites / $ USER não foi interpretado?

Você precisa usar os arquivos de configuração por usuário para especificar um local chroot exclusivo para eles. No seu caso, a configuração por usuário "local_root" estará variando valores fora de / var / www / sites / conforme necessário.

    
por 29.01.2011 / 17:58
2

Isso pode ser feito facilmente com o PAM.

Se o seu disto não vier com o PAM, você precisará pegar uma cópia, já que o vsftpd usa o PAM para autenticação de usuários virtuais.

Existe um pacote debian para o pam_pwdfile já disponível, alternativamente, faça o download e compile-o, se a sua cópia do linux não for incluída:

apt-get install libpam-pwdfile

Primeiro, crie um arquivo de senha para o primeiro usuário:

htpasswd -c /etc/vsftpd/passwd user1

E então:

htpasswd /etc/vsftpd/passwd user2

Em seguida, você precisa editar o arquivo de configuração do vsftpd /etc/vsftpd.conf

listen=YES
anonymous_enable=NO
local_enable=YES
virtual_use_local_privs=YES
write_enable=YES
connect_from_port_20=YES
secure_chroot_dir=/var/run/vsftpd
pam_service_name=vsftpd
guest_enable=YES
user_sub_token=$USER
local_root=/var/www/sites/$USER
chroot_local_user=YES
hide_ids=YES

Finalmente, você precisa configurar o PAM para usar o arquivo de senhas, então edite o /etc/pam.d/vsftpd

# Customized login using htpasswd file
auth    required pam_pwdfile.so pwdfile /etc/vsftpd/passwd
account required pam_permit.so

Não se esqueça de reiniciar o vsftpd, e isso é muito bonito!

    
por 25.01.2011 / 21:24