Tengo una versión 6.4 de CentOs con Digital Ocean y me gustaría crear con éxito usuarios SFTP y encarcelarlos en el directorio de inicio chroot del propio usuario, pero me temo que estoy haciendo un lío.
He intentado muchas cosas, demasiadas para enumerarlas aquí porque la mayoría probablemente sea incorrecta o no tenga mucho sentido, pero creo que debería ser el proceso correcto y lo que he intentado es:
Crea un grupo para sftp
: -
groupadd sftp
Cree un usuario y configure su directorio de inicio: -
useradd -d /var/www/vhosts/domain.com dummyuser
Establezca una contraseña para el usuario: -
passwd dummyuser
Cambie el grupo de usuarios a 'sftp': -
usermod -g sftp dummyuser
Configure el shell del usuario para /bin/false
: -
usermod -s /bin/false dummyuser
Editar subsistema en sshd_config
( /etc/ssh/
): -
#Subsystem sftp /usr/lib/openssh/sftp-server
Subsystem sftp internal-sftp
Agregue lo siguiente al final del sshd_config
archivo: -
Match group sftp
X11Forwarding no
ChrootDirectory %h
AllowTcpForwarding no
ForceCommand internal-sftp
Me aseguro de que todos los siguientes directorios son root:root
: -
/var
/var/www
/var/www/vhosts
/var/www/vhosts/domain.com
Si luego intento iniciar sesión en el servidor a través de SFTP con el usuario dummyuser
(en WinSCP), obtengo lo siguiente: -
Authentication log (see session log for details):
Using username "dummyuser".
Authentication failed.
Todo lo que quiero lograr es encarcelar a un usuario a su directorio de inicio. También tengo vsftpd configurado y configurado. Los usuarios pueden iniciar sesión bien pero tendrían acceso a todo el servidor; simplemente no he logrado que la cárcel funcione.
Editar
Olvidé mencionar, luego reinicié sshd
también: -
service sshd restart
Cuando se produce el error en WinSCP, su página de ayuda está aquí .
Resultados de registro
/var/log/secure
Reemplacé el nombre real del servidor con server_name
.
Apr 28 14:20:56 server_name sshd[9944]: Accepted password for dummyuser from 80.194.255.4 port 44402 ssh2
Apr 28 14:20:56 server_name sshd[9944]: pam_unix(sshd:session): session opened for user dummyuser by (uid=0)
Apr 28 14:20:56 server_name sshd[9946]: fatal: bad ownership or modes for chroot directory component "/var/www/vhosts/"
Apr 28 14:20:56 server_name sshd[9944]: pam_unix(sshd:session): session closed for user dummyuser
/var/log/secure
.
vhosts
es root:root
.
sshd
? ¿Qué hay en los archivos de registro en el servidor?