Quero criar usuários para SFTP com acesso limitado a pastas específicas
Minha estrutura de pastas fica assim:
/var/www/site1/files/
/var/www/site2/files/
/var/www/site3/files/
Quero criar o usuário sftp1 para acessar /var/www/site1/files/
apenas o upload de arquivos do site usando o filezila e não consigo visualizar nenhuma outra pasta
e da mesma forma para o usuário2 com acesso limitado a/var/www/site2/files/
e para usuário3 com acesso limitado a/var/www/site3/files/
Responder1
Você praticamente acompanhou a coisa.
A melhor maneira é fazer isso:
Monte cada um dos 3 diretórios em
/home
diretórios anexando as seguintes linhas em/etc/fstab
:/var/www/site1/files/ /home/site1/htdocs/ bind 0 0 /var/www/site2/files/ /home/site2/htdocs/ bind 0 0 /var/www/site3/files/ /home/site3/htdocs/ bind 0 0
Use
mount -a
para iniciar instantaneamente as montagens.Certifique-se de ter adicionado os usuários site1, site2, site3 ao mesmo grupo (por exemplo, sftpusers ou sftponly). Você pode usar estes comandos para adicionar usuários a grupos:
usermod -aG sftponly site1 usermod -aG sftponly site2 usermod -aG sftponly site3
Crie os
/home/{site1,site2,site3}
diretórios iniciais dos usuários correspondentes usando:usermod -d /home/site1 site1 usermod -d /home/site2 site2 usermod -d /home/site3 site3
Anexe o seguinte em seu
/etc/ssh/sshd_config
:Match group sftponly ChrootDirectory %h X11Forwarding no AllowTcpForwarding no
Finalmente reinicie o serviço ssh usando:
service ssh restart
Veresta postagem no Digital Oceanpara detalhes.
Responder2
Depois de seguirresposta de Krishna Chalisepode ser necessário ajustar a propriedade e as permissões.
Por exemplo, para o usuário site1:
chown root:root /home/site1
chmod 755 /home/site1
cd /home/site1
chown site1:sftponly