Estoy configurando en mi VPS un vsftpd, y no quiero que los usuarios puedan abandonar su directorio de inicio ftp. Estoy usando ftp local_user, no anónimo, así que agregué:
chroot_local_user = YES
He leído en muchas publicaciones del foro que esto no es seguro.
- ¿Por qué esto no es seguro?
- Si esto no es seguro debido al uso de ssh para unirse a mi VPS también, entonces podría bloquear a estos usuarios de sshd, ¿verdad?
- ¿Hay alguna otra opción para lograr este comportamiento de vsftpd? (No quiero eliminar los permisos de lectura en todas las carpetas / archivos para "mundo" en mi sistema)
vsftpd
tuviera una falla de seguridad (desbordamiento de búfer)? ¿De qué manera la ejecuciónvsftpd
con usuarios conectados a su directorio principal hace que este escenario sea más probable? Por favor explique ...El problema es que no puedes usar cuentas locales y también deshabilitar esas cuentas desde el inicio de sesión de shell. Si configura su shell de inicio de sesión en / bin / nologin, tampoco le permitirá iniciar sesión con vsftpd.
Un demonio FTP mejor y más seguro sería Pure-ftpd. Búscalo, está disponible en el repositorio EPEL y permite crear usuarios virtuales. El servidor utiliza un usuario / grupo común para establecer todos los permisos para las carpetas de inicio de los usuarios y "asigna" los usuarios virtuales a ese usuario cuando inicia sesión para tratar los permisos. Eso es más seguro y no tiene que lidiar con la seguridad de inicio de sesión de openssh.
Pure-ftpd también es compatible con una gran cantidad de características, como cuotas, proporciones, etc. Mucho mejor que vsftpd.
Aquí hay un tutorial simple sobre cómo instalarlo y configurar un usuario virtual básico: http://blog.namran.net/2011/05/04/how-to-setup-virtual-ftp-server-using-pure-ftpd- en centos /
Si lees el documento completo (que deberías) sabrás que el modificador -d al crear el usuario virtual es un auto-chroot a ese directorio para ese usuario.
fuente
AllowUsers user1 user2
directiva en mi sshd_config, donde no permito que ftp_user1 inicie sesión con ssh, aún así el usuario ftp_user1 puede iniciar sesión con ftp. Entonces funciona como está previsto, pero mi pregunta principal sigue abierta, ¿por qué no es segura?