Eu tenho um servidor Ubuntu 14.04 instalado com ssh aberto. Gostaria de configurar o sftp para que os clientes possam baixar apenas arquivos. Em outras palavras, coloco os arquivos em um diretório onde eles estão presos. Preciso ter certeza de que eles só podem acessar o diretório com seus arquivos e nada mais.
Originalmente eu usaria o vsftpd, mas alguém me disse que o sftp é a melhor opção. Se houver alguma documentação sobre o que eu preciso, seria ótimo.
Preciso de ajuda com o seguinte:
- Como configurar o sftp
- Como configurar contas de usuário e usá-las para SFTP
- Como definir contas para prisão
Responder1
Configurações para/etc/ssh/sshd_config
Subsystem sftp internal-sftp -f AUTH -l VERBOSE
UsePAM yes
Match group sftp
ChrootDirectory %h
ForceCommand internal-sftp
AllowTcpForwarding no
criar grupo sftp:
groupadd sftp
Criar diretório
sudo mkdir /ftpusers
sudo mkdir /ftpusers/HomeFolder
Crie um usuário diretamente com o novo grupo SFTP anexado:
sudo useradd -d /ftpusers/HomeFolder -m UserName -g sftp -s /bin/false
sudo passwd UserName
defina permissões para uso com ssh para sftp:
chown root:root /ftpusers/HomeFolder
chmod 755 /ftpusers/HomeFolder
reinicie o serviço:
service ssh restart
Observe que a pasta inicial do novo usuário sftp deve receber o proprietário root.