Cómo configurar un servidor FTP en CentOS 8 usando VSFTPD

¿Qué es FTP?

FTP (Protocolo de transferencia de archivos) es un protocolo de red cliente-servidor que permite a los usuarios intercambiar archivos desde y hacia equipos remotos.

FTP utiliza texto sin formato para transferir datos y acceder a ellos. Hay varios servidores FTP de código abierto disponibles para la plataforma del sistema operativo Linux. Los servidores FTP más utilizados son VSFTPD, ProFTPD y PureFTPd. El protocolo FTP utiliza el puerto número 21 para la conexión y el puerto 20 para la transferencia de datos. En el modo pasivo, se utilizan puertos adicionales.

En este tutorial, aprenderemos a configurar y configurar VSFTPD. Es muy seguro y estable y está disponible en el repositorio de paquetes CentOS 8.

Instalar el servidor FTP VSFTP

Para instalar el paquete VSFTPD en CentOS 8, abra un terminal o conéctese a su servidor mediante SSH como usuario root y escriba el siguiente comando:

# dnf install –y vsftpdInstalling VSFTPD

Una vez instalado el paquete, inicie y habilite el servicio VSFTPD utilizando el siguiente comando:

# systemctl enable vsftpd# systemctl start vsftpdEnable FTP service

Inicie el servicio FTP

Tome una copia del archivo de configuración original /etc/vsftpd / vsftpd.conf escribiendo el siguiente comando:

# cp /etc/vsftpd/vsftpd.conf /etc/vsftpd/vsftpd.conf.bk

Haga una copia de seguridad del archivo de configuración original

Ahora edite el archivo de configuración mediante el siguiente comando:

# vim /etc/vsftpd/vsftpd.conf

Edite el archivo de configuración con vim

Busque y establezca las siguientes directivas en el mismo:

anonymous_enable=NO # disable anonymous users(Unknown users)local_enable=YES # allow local userswrite_enable=YES # allow ftp write commandslocal_umask=022 # set default umaskdirmessage_enable=YES # enable messages on change directoryxferlog_enable=YES # enable logging of uploads and downloadsconnect_from_port_20=YES # ensure PORT transfer connections from port 20 xferlog_std_format=YES # keep standard log formatlisten=NO # prevent vsftpd run in stand-alone modelisten_ipv6=YES # allow vsftpd to listen on IPv6 socketpam_service_name=vsftpd # set PAM Service name to vsftpd

Configurar la lista de usuarios en el servidor FTP

De forma predeterminada, todos los usuarios que están en el archivo user_list ubicado en /etc/vsftpd/user_list pueden usar servicios FTP.

Para restringir usuarios en un entorno chroot, utilice las siguientes directivas:Advertisement

chroot_local_user=YES # Create chrooted environment for usersallow_writeable_chroot=YES # Allow write permission to a user on chroot jail directory

Para mantener la restricción del usuario en su directorio personal, use las siguientes directivas:

userlist_enable=YES # enable vsftpd to load usernamesuserlist_deny=NO # allow access to users in the user list

Si desea proporcionar un acceso general a nuestro sistema, agregue esta directiva a su archivo de configuración:

chroot_list_enable=YESchroot_list_file=/etc/vsftpd/chroot_list #users in this file list have an overall access

Guarde y cierre el archivo de configuración.

Ahora, cree una chroot_list en el directorio / etc / vsftpd/, utilizando el siguiente comando:

# touch /etc/vsftpd/chroot_list

Usuarios de Chroot FTP

Agregue solo aquellos usuarios de esa lista a los que desea proporcionar acceso general en el sistema.

Crear un usuario para acceder a servicios FTP

Para crear un usuario para usar el servicio FTP, utilice el siguiente comando:

# useradd user1# passwd user1

Agregue ese usuario en el archivo user_list para restringir un usuario a su directorio personal, use el siguiente comando:

# vim /etc/vsftpd/user_list

Escriba» i » para insertar y escriba ese nombre de usuario, como se muestra en la figura:

Crear usuario FTP

Pulse ESC y escriba: wq! para guardar el archivo.

Si desea proporcionar a un usuario específico un acceso general al sistema, agregue ese usuario en /etc/vsftpd / chroot_list.

Reinicie el servicio VSFTPD:

# systemctl restart vsftpd

Aplicar cambios de configuración

Verifique el estado del servicio FTP con el siguiente comando:

# systemctl status vsftpd

Comprobar el estado del servicio FTP

Configurar Firewall para FTP

Para permitir el servicio FTP a través del firewall, utilice el siguiente comando:

# firewall-cmd - - add-service = ftp - - permanent# firewall-cmd - - reload

Configurar firewalld para FTP

Aplicar cambios de configuración de firewall

Probar el servidor FTP desde una máquina Windows

Para conectarse al servidor FTP necesita un software cliente. El software más utilizado para FTP es FileZilla, WINSCP, etc. Estoy usando FileZilla para la conexión.

Abra su software de cliente FTP, ingrese los siguientes detalles para conectarse:

Host — > Dirección IP o nombre de host.

Nombre de usuario: Nombre de usuario FTP (En mi caso es user1)

Contraseña

Puerto: 21

Pruebe la conexión FTP

Después de conectarse correctamente, puede cargar / descargar archivos de acuerdo con sus necesidades.

 Conexión FTP probada con éxito

Conclusión

En este tutorial aprendimos cómo configurar un servidor FTP en Centos 8, cómo restringir a los usuarios a su directorio personal y cómo concederles acceso de lectura/escritura. También vimos cómo dar al usuario específico acceso general al sistema.

Cómo configurar un servidor FTP en CentOS 8 usando VSFTPD

You might also like

Deja una respuesta

Tu dirección de correo electrónico no será publicada.