Limitar o acesso do usuário SFTP ao diretório especificado

Limitar o acesso do usuário SFTP ao diretório especificado

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:

  1. Como configurar o sftp
  2. Como configurar contas de usuário e usá-las para SFTP
  3. 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.

informação relacionada