Limite el acceso del usuario SFTP al directorio especificado

10

Tengo un servidor Ubuntu 14.04 instalado con ssh abierto. Me gustaría configurar sftp para que los clientes solo puedan descargar archivos. En otras palabras, pongo los archivos en un directorio al que están encarcelados. Necesito asegurarme de que solo puedan acceder al directorio con sus archivos y nada más.

Originalmente iba a usar vsftpd, pero alguien me dijo que sftp es la mejor opción. Si hay alguna documentación sobre lo que necesito, sería genial.

Necesito ayuda con lo siguiente:

  1. Cómo configurar sftp
  2. Cómo configurar cuentas de usuario y usarlas para sftp
  3. Cómo establecer cuentas en la cárcel
scottsmail
fuente

Respuestas:

12

Configuraciones 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

crear grupo sftp:

groupadd sftp

Crear directorio

sudo mkdir /ftpusers
sudo mkdir /ftpusers/HomeFolder

Crear usuario directamente con el nuevo grupo sftp adjunto:

sudo useradd -d /ftpusers/HomeFolder -m UserName -g sftp -s /bin/false
sudo passwd UserName

establecer permisos para usar con ssh para sftp:

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

reiniciar servicio:

service ssh restart

Tenga en cuenta que la carpeta de inicio para el nuevo usuario sftp debe tener el propietario raíz.

2707974
fuente
¡¡Gracias por la respuesta!! No estoy seguro de por qué, pero cuando trato de crear un usuario directamente al grupo. Recibo el siguiente error ... useradd: no se puede crear el directorio / ftpusers / HomeFolder
scottsmail el
Primero corre sudo mkdir /ftpusers, luegosudo mkdir /ftpusers/HomeFolder
2707974
Gracias. Ok, el siguiente problema ... Cuando trato de establecer permisos para usar con ssh para sftp con raíz conocida: root HomeFolder obtengo chown: no puedo acceder a 'HomeFolder': No existe tal archivo o directorio
scottsmail
chown root:root /ftpusers/HomeFolderychmod 755 /ftpusers/HomeFolder
2707974
UsePAM yesarruina todo para mí y causa "conexión rechazada". No estoy seguro de por qué, pero comentar esa línea hace que todo funcione perfectamente.
pzkpfw