En este tutorial, explicaré cómo configurar SSH para permitir SFTP y no permitir el acceso de inicio de sesión SSH.
Bueno, SFTP utiliza SSH y por defecto los usuarios podrán usar tanto SSH como SFTP. Pero si alguna vez desea que los usuarios usen solo SFTP y no permitan el acceso SSH, entonces OpenSSH lo admite. Desde OpenSSH versión 4.9, puede editar sshd_config archivo como se muestra a continuación:
Cómo permitir SFTP y no permitir SSH
# vim /etc/sshd_config
Paso 2 :busque el subsistema FTP.
En caso de que el Subsistema ya está configurado como se muestra a continuación:
Subsystem sftp /usr/lib/openssh/sftp-server
Entonces necesitas cambiarlo a:
Subsystem sftp internal-sftp
Ambos servidor sftp y sftp interno son los subsistemas de SSH, pero internal-sftp es el más preferido. El motivo es internal-sftp es un sftp en proceso servidor que tiene una ventaja de rendimiento sobre stp-server y tampoco requiere archivos de soporte adicionales cuando se usa con ChrootDirectory opción.
Paso 3 :Agregue las siguientes líneas
Match group ftp ChrootDirectory /home/%u X11Forwarding no AllowTcpForwarding no ForceCommand internal-sftp
Busque 'Grupo de coincidencias ftp ' línea que indica que cualquier usuario que quiera usar SFTP debe pertenecer al grupo llamado 'ftp (cree su propio grupo, si es necesario). También usando internal-sftp subsistema es importante, porque usaremos ChrootDirectory opción.
Nota :asegúrese de que las líneas anteriores se agreguen después de 'UsePAM yes ' en el sshd_config archivo.
Paso 4 :Agregar usuarios al grupo FTP.
# vim /etc/group
Busque el grupo FTP y agregue usuarios como se muestra a continuación, por ejemplo, el usuario 'sysadmin ‘.
ftp:x:113:sysadmin
Es posible que deba cambiar el directorio de inicio del usuario a /
debido al uso de Chroot y raíz debe ser el propietario de /home/user .
Paso 5 :pruebe si las configuraciones son correctas antes de reiniciar el servicio SSH. Este paso es muy importante.
# sshd -t
Si hay un error, se mostrará en la pantalla. De lo contrario, no se mostrará ninguna salida.
Paso 6 :reiniciar el servicio SSHD
# /etc/init.d/ssh restart
(o)
# /etc/init.d/sshd restart
(o)
# service ssh restart
(o)
# service sshd restart
Paso 7 :Prueba
Ahora cualquier usuario perteneciente a 'ftp El grupo podrá usar SFTP pero no podrá iniciar sesión mediante SSH.
Nota :Los comandos anteriores se ejecutaron y probaron en Ubuntu 14.04.4 LTS.