La siguiente es una guía para la creación de usuarios SFTP y la restricción de acceso hacia el directorio home del usuario.
La confirmación la realizara agregando lo siguiente al final del archivo /etc/ssh/sshd_config
[root@gostir ~]# vi /etc/ssh/sshd_config
Subsystema sftp internal-sftp
#configuracion de sftp
Match Group sftpgroup
ChrootDirectory %h
ForceCommand internal-sftp
X11Forwarding no
AllowTcpForwarding no
Esto significa que todos los usuarios en el grupo de "sftpgroup “ estan restringidos a su directorio principal, en el que sólo podrán ejecutar procesos internos SFTP y nada mas.
Ahora creamos el grupo sftpgroup ejecutando el siguiente comando:
[root@gostir ~]# groupadd sftpgroup
Creamos los usuarios requeridos y configuramos las passwords respectivas
[root@gostir ~]# useradd usuario1
[root@gostir ~]# passwd usuario1
[root@gostir ~]# useradd usuario2
[root@gostir ~]# passwd usuario2
Establecer un grupo de usuarios:
[root@gostir ~]# usermod –g sftpgroup usuario1
[root@gostir ~]# usermod –g sftpgroup usuario2
Para denegar el acceso shell SSH, ejecutamos el siguiente comando:
[root@gostir ~]# usermod usuario1 –s /bin/false
[root@gostir ~]# usermod usuario2 –s /bin/false
Y configuramos el directorio de inicio del usuario:
[root@gostir ~]# usermod usuario1 –d /var/www/
[root@gostir ~]# usermod usuario2 –d /var/www/
Establecemos el propietario del directorio raiz de los sitios web
[root@gostir ~]# chown root:sftpgroup /var/www/
Establecemos los permisos para los directorios
[root@gostir ~]# chmod 755 –R /var/www/web.com
Establecemos el permiso de escritura al grupo sftpgroup
[root@gostir ~]# chmod g+w /var/www/web.com
Por último, pero no menos importante, reiniciar el servicio SSH
En caso de ser un BSD (tipo Slackware)
[root@gostir ~]# /etc/rc.d/rc-sshd restart
En caso de ser un SystemV (tipo Mageia o Red Hat)
[root@gostir ~]# service sshd restart
La parte SSH ahora esta en orden, pero tenes que asegurarte de que los permisos de los archivos también son correctos. Si el entorno chroot está en el directorio principal de un usuario a la vez / debe ser propiedad de root y debe tener permisos de 755 o 750.
En otras palabras, todas las carpetas que lleva hasta e incluyendo la carpeta de inicio debe ser propiedad de root, de lo contrario, aparecerá el siguiente error después de iniciar sesión:
Error en la escritura: Tubería rota
No se pudo leer paquete: Connection reset by peer
En el caso de ser necesario verificar que se tengan permisos necesarios para acceder y de tener SELinux habilitado:
[root@gostir ~]# getenforce
[root@gostir ~]# setenforce 0
Basado en: http://edwin-montenegro.blogspot.com.ar/2013/09/restringir-los-usuarios-sftp-la-carpeta.html
No hay comentarios:
Publicar un comentario