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

8

Eu tenho um servidor Ubuntu 14.04 instalado com o ssh aberto. Eu gostaria de configurar o sftp para que os clientes possam baixar apenas arquivos. Em outras palavras, eu coloco os arquivos em um diretório para o qual eles sã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, isso seria ótimo.

Preciso de ajuda com o seguinte:

  1. Como configurar o sftp
  2. Como configurar contas de usuários e usá-las para o sftp
  3. Como definir contas para a cadeia
por scottsmail 19.03.2015 / 21:20

1 resposta

10

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

crie o 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

definir permissões para uso com o ssh para sftp:

chown root:root /ftpusers/HomeFolder
chmod 755 /ftpusers/HomeFolder

reiniciar o serviço:

service ssh restart

Note que a pasta pessoal do novo usuário do sftp deve receber o dono da raiz.

    
por 2707974 20.03.2015 / 10:33