Este artículo describe cómo configurar un chroot jail usando distribuciones basadas en Debian® y RPM Package Manager (RPM).
Estas instrucciones crean el chroot jail usando el siguiente grupo de ejemplo y nombres de usuario:
-
Grupo:sftponly
-
Usuario:ftpuploader
Crea un grupo para usuarios encarcelados
Use las siguientes instrucciones para crear un grupo para usuarios encarcelados:
-
Cree el grupo encarcelado usando el siguiente comando:
groupadd sftponly
Nota: Este grupo se utiliza para restringir o encarcelar a los usuarios en su directorio de inicio. -
Abra /etc/ssh/sshd_config en un editor de texto y edite el archivo siguiendo los siguientes pasos:
-
Comente la siguiente línea colocando un signo de número (
#
) antes de la línea:Antes:
Subsystem sftp /usr/libexec/openssh/sftp-server
Después:
#Subsystem sftp /usr/libexec/openssh/sftp-server
-
Agregue las siguientes líneas al final del archivo de configuración:
Subsystem sftp internal-sftp Match Group sftponly ChrootDirectory %h X11Forwarding no AllowTCPForwarding no ForceCommand internal-sftp`
-
-
Verifique que la sintaxis sea correcta en la nueva configuración y vuelva a cargar sshd usando los siguientes comandos:
sshd –t service sshd reload
Crear un usuario del protocolo de transferencia segura de archivos
Utilice los siguientes pasos para crear un usuario de Protocolo seguro de transferencia de archivos (SFTP):
-
Cree un directorio de inicio para el usuario de SFTP mediante el siguiente comando:
mkdir -p /home/chroot/ftpuploader/public
-
Cree un nuevo usuario con un directorio de inicio que no tenga acceso de shell y agréguelo al grupo sftponly usando el siguiente comando:
useradd -d /home/chroot/ftpuploader -s /sbin/nologin -G sftponly ftpuploader
-
Si ya tiene un usuario SFTP creado, debe configurar el acceso de shell del usuario a /sbin/nologin y añádelos al grupo sftponly usando el siguiente comando:
usermod -s /sbin/nologin -G sftponly ftpuploader
-
Ahora, establezca una nueva contraseña para el usuario SFTP usando el siguiente comando:
Passwd ftpuploader
-
Cambie los permisos y la propiedad del directorio de inicio utilizando RPM y distribuciones basadas en Debian como se muestra en el siguiente código:
chown root:root /home/chroot/ftpuploader/ chown ftpuploader:sftponly /home/chroot/ftpuploader/public chmod 711 /home/chroot/ chmod 755 /home/chroot/ftpuploader/ chmod 755 /home/chroot/ftpuploader/public