Eu segui o bom tutorial de link
Agora, se eu entendi, tenho duas coisas:
1) um é o único usuário chamado vsftpd
que age como usuário dedicado para o serviço vsftpd
2) é a capacidade de criar configurações específicas de usuários na /etc/vsftpd_user_conf/
pasta
para que eu possa ter um arquivo /etc/vsftpd_user_conf/user1
preenchido com:
local_root=/var/www/website_name1/sub_folder1
a /etc/vsftpd_user_conf/user2
com específico
local_root=/var/www/website_name1/sub_folder2
e assim por diante.
Com esta configuração eu posso definir o main ou o sub_folders dentro de suas raízes e torná-los graváveis, atribuindo ou não o chmod vsftpd: nogroup e os comuns atributos comuns 777, 775 ou 664.
Mas gostaria de criar uma configuração mais complexa.
Eu gostaria de criar uma pasta:
/var/ftp_users/
com
/var/ftp_users/boss
/var/ftp_users/employee1
/var/ftp_users/employee2
/var/ftp_users/employee3
...
Para torná-los acessíveis e graváveis, preciso
chmod vsftpd:nogroup /var/ftp_users/boss
chmod vsftpd:nogroup /var/ftp_users/employee1
chmod vsftpd:nogroup /var/ftp_users/employee2
...
e também definir sua raiz local da seguinte forma:
/etc/vsftpd_user_conf/employee1
com local_root=/var/ftp_users/employee1
/etc/vsftpd_user_conf/employee2
com local_root=/var/ftp_users/employee2
/etc/vsftpd_user_conf/employee3
com local_root=/var/ftp_users/employee3
...
O problema é que a BOSS me pediu para:
poder ler as pastas de todos para que ele possa ver o que os outros usuários estão fazendo. Minha ideia era colocar o local_root=/var/ftp_users
MAS - Eu quero que esse chefe seja capaz de escrever / modificar apenas /var/ftp_users/boss
e nem todas as outras pastas, criar novas ou deletar as que ele encontrou dentro!
Como é possível nesta configuração, de modo que o chefe do usuário tenha local_root=/var/ftp_users
, mas seu acesso de gravação está limitado apenas a /var/ftp_users/boss
?
Eu também considerei criar manualmente links simbólicos dentro
ln /var/ftp_users/employee1 /var/ftp_users/boss/employee1
e
chmod -h 0444 /var/ftp_users/boss/employee1
mas desta forma não está funcionando corretamente.
Estou acostumado com as permissões do Windows ou com as diretivas que você pode especificar dentro do Apache, nginx e assim por diante, então estou um pouco perdido com o vsftpd config. Em circunstâncias normais, eu teria definido a raiz /var/ftp_users/
não gravável e somente a pasta /var/ftp_users/boss
gravável.
Tags permissions chmod vsftpd linux