FTP

vsftpd - Cómo hacer chroot a los usuarios de FTP en sus directorios de inicio

vsftpd - Cómo hacer chroot a los usuarios de FTP en sus directorios de inicio
chroot es una característica de seguridad muy importante de los servidores FTP.

Cuando inicia sesión en un servidor FTP, no desea que los usuarios naveguen por todo su sistema de archivos. Solo desea que explore los archivos a los que puede acceder, generalmente sus directorios de inicio. Esto es lo que hace chroot. Bloquea a los usuarios en sus directorios de inicio. Los usuarios solo pueden navegar por los archivos y directorios en su directorio de inicio. No importa cuánto lo intenten, no podrán salir de sus directorios de inicio.

En este artículo, le mostraré cómo usar vsftpd chroot para bloquear usuarios en sus directorios de inicio. Voy a considerar este artículo como una extensión del artículo Administrar Apache 2 VirtualHost con Macro en Ubuntu 18.04 LTS o Cómo configurar Apache VirtualHost en Ubuntu 18.04 LTS. Asegúrese de leer estos artículos para configurar todos los usuarios de FTP y directorios de inicio. Entonces empecemos.

Cómo quiero configurar vsftpd:

En los artículos de Apache VirtualHost anteriores, le he mostrado cómo configurar Apache VirtualHost y alojar varios sitios web en un solo servidor web.

Ahora, quiero permitir que todos los propietarios de sitios web (usuarios) carguen los archivos necesarios en su servidor web mediante FTP. Entonces, voy a configurar vsftpd de manera que los usuarios puedan cargar los archivos requeridos en su servidor web usando FTP.

Instalación de vsftpd en Ubuntu:

En Ubuntu, puede instalar fácilmente vsftpd desde el repositorio oficial de paquetes de Ubuntu con el administrador de paquetes APT.

Primero, actualice la caché del administrador de paquetes APT con el siguiente comando:

actualización de $ sudo apt

Ahora, instale vsftpd con el siguiente comando:

$ sudo apt install vsftpd

vsftpd debe estar instalado.

Configuración de vsftpd:

El archivo de configuración de vsftpd es / etc / vsftpd.conf.

Siempre es una buena idea mantener una copia de seguridad del archivo de configuración vsftpd original.

Para crear un archivo de configuración de vsftpd de respaldo / etc / vsftpd.conf.respaldo, ejecute el siguiente comando:

$ sudo mv -v / etc / vsftpd.conf / etc / vsftpd.conf.respaldo

Ahora, crea un nuevo / etc / vsftpd.conf archivo con el siguiente comando:

$ sudo nano / etc / vsftpd.conf

Ahora, escriba las siguientes líneas y guarde el archivo presionando + X seguido por y y .

escuchar = SI
listen_ipv6 = NO
connect_from_port_20 = SÍ
 
anonymous_enable = NO
local_enable = SÍ
write_enable = YES
chroot_local_user = SÍ
allow_writeable_chroot = SÍ
secure_chroot_dir = / var / run / vsftpd / vacío
 
pam_service_name = vsftpd
 
pasv_enable = SÍ
pasv_min_port = 40000
pasv_max_port = 45000
 
userlist_enable = SÍ
userlist_file = / etc / vsftpd.Lista de usuarios
userlist_deny = NO

Finalmente, el / etc / vsftpd.conf El archivo de configuración se ve así.

Aquí, chroot_local_user La opción es responsable de bloquear a los usuarios en sus directorios de inicio.

allow_writable_chroot La opción es responsable de los permisos de escritura en los directorios de inicio.

Ahora, reinicie el servicio vsftpd con el siguiente comando:

$ sudo systemctl reiniciar vsftpd

Ahora, verifique si el servicio vsftpd se está ejecutando con el siguiente comando:

$ sudo systemctl status vsftpd

Estupendo! El servicio vsftpd se está ejecutando.

Ahora, debe agregar todos los usuarios que desea conectar a sus directorios de inicio y cargar archivos a un archivo de configuración / etc / vsftpd.Lista de usuarios

Abre el / etc / vsftpd.Lista de usuarios archivo de configuración con el siguiente comando:

$ sudo nano / etc / vsftpd.Lista de usuarios

Ahora, escriba todos los nombres de usuario a los que desea permitir el acceso a sus directorios de inicio a través de FTP aquí. Luego, guarde el archivo presionando + X seguido por y y .

Accediendo al servidor FTP:

Ahora, puede usar cualquier cliente FTP para conectarse a su servidor FTP. El cliente FTP más popular es FileZilla.

En Linux, también puede usar el administrador de archivos Nautilus para conectarse a su servidor FTP.

En Windows, puede agregar su servidor FTP como una ubicación de red y cargar archivos allí.

Primero, debe conocer la dirección IP o el nombre de host de su servidor FTP.

Puede averiguar la dirección IP de su servidor FTP con el siguiente comando:

$ ip a | egrep "inet"

Como puede ver, la dirección IP de mi servidor FTP es 192.168.21.187. Debería ser diferente para ti. Por lo tanto, asegúrese de reemplazarlo por el suyo a partir de ahora.

Uso de Nautilus para acceder al servidor FTP:

Si desea iniciar sesión en su servidor FTP usando Nautilus en Linux, primero, abra Nautilus y haga clic en Otras Ubicaciones. Luego, escriba ftp: // [email protected] _ADDR o ftp: // [email protected] _NAME en la sección Connect to Server. Luego, haga clic en Conectar.

Ahora, escriba la contraseña de su usuario (en mi caso, Alicia) y haga clic en desbloquear. También puede consultar Recordar contraseña, si desea que Nautilus recuerde las credenciales de inicio de sesión. De lo contrario, déjelo sin marcar.

Debes estar conectado. Como puede ver, el directorio www está aquí.

Como puede ver, puedo avanzar en la cadena de directorios.

La índice.html El archivo también está dentro del public_html / directorio.

Como puede ver, subí un archivo y funciona. También puedo acceder al archivo html desde el servidor Apache.

Agregar ubicación de red FTP en Windows:

Si desea iniciar sesión en su servidor FTP y usarlo en Windows agregando una ubicación de red, consulte la Accediendo al servidor FTP sección del artículo Cómo configurar un servidor FTP con vsftpd en Ubuntu 18.04 LTS.

Entonces, así es como configura vsftpd y lo configura para hacer chroot a los usuarios de FTP en sus directorios de inicio. Gracias por leer este artículo.

Cómo cambiar la configuración del mouse y el panel táctil con Xinput en Linux
La mayoría de las distribuciones de Linux se envían con la biblioteca "libinput" de forma predeterminada para manejar eventos de entrada en un sistema...
Vuelva a asignar los botones del mouse de manera diferente para diferentes programas con X-Mouse Button Control
Tal vez necesite una herramienta que pueda hacer que el control de su mouse cambie con cada aplicación que use. Si este es el caso, puede probar una a...
Revisión del mouse inalámbrico Microsoft Sculpt Touch
Recientemente leí sobre el Microsoft Sculpt Touch mouse inalámbrico y decidí comprarlo. Después de usarlo por un tiempo, decidí compartir mi experienc...