Tabla de contenido
- Introducción
- Actualizar paquetes del sistema
- Instalar el servidor vsftpd en Ubuntu
- Copia de seguridad de archivos de configuración
- Crear usuario FTP
- Configurar el cortafuegos para permitir el tráfico FTP
- Conéctese al servidor FTP de Ubuntu
- Cómo conectarse al servidor FTP a través de la línea de comandos
- Cómo conectarse al servidor FTP a través de GUI
- Configuración y protección del servidor Ubuntu vsftpd
- Cambiar directorio predeterminado
- Autenticar usuarios de FTP
- Cómo configurar el inicio de sesión FTP anónimo
- Cómo cambiar el puerto de escucha FTP predeterminado
- Asegurar FTP
- Limitar el acceso de usuarios
- Cifrar tráfico con FTPS
- Solución de problemas de error de conexión FTP “conexión rechazada”
- Conclusión
Introducción
En este artículo, le mostraremos cómo configurar y usar un servidor FTP en Ubuntu Linux. También cubriremos algunas medidas básicas de configuración y seguridad para que pueda comenzar.
Actualizar paquetes del sistema
Antes de comenzar, siempre es una buena idea actualizar los paquetes de su sistema a la última versión. Puede hacer esto ejecutando los siguientes comandos:
sudo apt-get update sudo apt-get upgrade
Instalar el servidor vsftpd en Ubuntu
Ahora que su sistema está actualizado, puede instalar el paquete del servidor vsftpd ejecutando el siguiente comando:
sudo apt-get install vsftpd
Copia de seguridad de archivos de configuración
Antes de realizar cambios en los archivos de configuración, siempre es una buena idea hacer una copia de seguridad en caso de que algo salga mal. Puede hacer esto ejecutando el siguiente comando:
sudo cp /etc/vsftpd.conf /etc/vsftpd.conf.bak
Crear usuario FTP
Ahora que el servidor vsftpd está instalado, debe crear un usuario que se utilizará para conectarse al servidor. Puede hacer esto ejecutando el siguiente comando:
sudo adduser ftpuser
Se le pedirá que ingrese una contraseña para el usuario. Una vez que se crea el usuario, debe agregarlo al grupo FTP ejecutando el siguiente comando:
sudo usermod -a -G ftp ftpuser
Configurar el cortafuegos para permitir el tráfico FTP
Si tiene un firewall habilitado en su servidor Ubuntu, debe permitir el tráfico FTP a través de él. Puede hacer esto ejecutando el siguiente comando:
sudo ufw allow ftp
Conéctese al servidor FTP de Ubuntu
Ahora que el servidor está configurado, puede conectarse a él usando su cliente FTP. Para esto exampleusaremos el cliente Filezilla.
Primero, abra Filezilla y haga clic en el icono “Administrador del sitio”.
A continuación, haga clic en el botón “Nuevo sitio” e ingrese la siguiente información:
- Anfitrión: Enter la dirección IP o el nombre de host de su servidor
- Puerto: Enter 21
- Protocolo: Seleccione “FTP – Protocolo de transferencia de archivos”
- Cifrado: seleccione “Usar solo FTP simple (no seguro)”
- Tipo de inicio de sesión: seleccione “Normal”
- Usuario: Enter el nombre de usuario FTP que creó anteriormente
- Clave: Enter la contraseña del usuario FTP
Ahora haga clic en el botón “Conectar” y debería estar conectado a su servidor FTP.
Cómo conectarse al servidor FTP a través de la línea de comandos
Si prefiere usar la línea de comandos, puede conectarse a su servidor FTP ejecutando el siguiente comando:
ftp hostname
Se le pedirá la contraseña del usuario de FTP. Una vez que haya iniciado sesión, estará en el indicador de FTP donde puede ingresar varios comandos. Escribe help
para ver una lista de los comandos disponibles.
Cómo conectarse al servidor FTP a través de GUI
Si está utilizando un escritorio Linux, puede conectarse a su servidor FTP utilizando un cliente GUI como Filezilla o Nautilus.
Para conectarse usando Filezilla, abra el programa y haga clic en el icono “Administrador del sitio”.
A continuación, haga clic en el botón “Nuevo sitio” e ingrese la siguiente información:
- Anfitrión: Enter la dirección IP o el nombre de host de su servidor
- Puerto: Enter 21
- Protocolo: Seleccione “FTP – Protocolo de transferencia de archivos”
- Cifrado: seleccione “Usar solo FTP simple (no seguro)”
- Tipo de inicio de sesión: seleccione “Normal”
- Usuario: Enter el nombre de usuario FTP que creó anteriormente
- Clave: Enter la contraseña del usuario FTP
Ahora haga clic en el botón “Conectar” y debería estar conectado a su servidor FTP.
Para conectarse usando Nautilus, abra el programa y haga clic en el menú “Archivo”, luego seleccione “Conectar al servidor”.
En el campo “Dirección del servidor”, ingrese la siguiente información:
- Tipo de servicio: Seleccione “FTP”
- Servidor: Enter la dirección IP o el nombre de host de su servidor
- Puerto: Enter 21
- Nombre de usuario: Enter el nombre de usuario FTP que creó anteriormente
- Clave: Enter la contraseña del usuario FTP
Ahora haga clic en el botón “Conectar” y debería estar conectado a su servidor FTP.
Configuración y protección del servidor Ubuntu vsftpd
Ahora que tiene un servidor FTP básico funcionando, veamos algunas de las opciones de configuración disponibles.
Cambiar directorio predeterminado
De forma predeterminada, el servidor vsftpd cambiará su directorio al /var/ftp
directorio cuando inicie sesión. Si desea cambiar esto, puede editar el /etc/vsftpd.conf
archivo y cambie la siguiente línea:
#chroot_local_user=YES
a
chroot_local_user=YES
También deberá crear el nuevo directorio que desea utilizar. Para examplesi desea utilizar el /home/ftpuser
directorio, puede hacerlo ejecutando el siguiente comando:
sudo mkdir /home/ftpuser
Autenticar usuarios de FTP
De forma predeterminada, el servidor vsftpd permitirá que cualquiera inicie sesión con cualquier nombre de usuario y contraseña. Si desea restringir el acceso solo a ciertos usuarios, puede editar el /etc/vsftpd.conf
archivo y cambie la siguiente línea:
#anon_upload_enable=YES
a
anon_upload_enable=NO
También deberá descomentar la siguiente línea:
#local_enable=YES
Cómo configurar el inicio de sesión FTP anónimo
Si desea permitir el inicio de sesión FTP anónimo, puede editar el /etc/vsftpd.conf
archivo y cambie la siguiente línea:
#anon_upload_enable=YES
a
anon_upload_enable=YES
También deberá descomentar la siguiente línea:
#anon_mkdir_write_enable=YES
Cómo cambiar el puerto de escucha FTP predeterminado
De forma predeterminada, el servidor vsftpd escucha en el puerto 21 el tráfico FTP. Si desea cambiar esto, puede editar el /etc/vsftpd.conf
archivo y cambie la siguiente línea:
#listen=YES
a
listen=NO
También deberá descomentar la siguiente línea e ingresar el nuevo número de puerto:
#listen_port=
Asegurar FTP
Una de las cosas más importantes que puede hacer para proteger su servidor FTP es cifrar el tráfico. Puede hacerlo mediante SSL/TLS. Para hacer esto, debe generar un certificado SSL autofirmado ejecutando el siguiente comando:
sudo openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout /etc/ssl/private/vsftpd.pem -out /etc/ssl/private/vsftpd.pem
Se le pedirá que ingrese cierta información sobre su certificado. Una vez que se genera el certificado, debe editar el /etc/vsftpd.conf
archivo y cambie las siguientes líneas:
#ssl_enable=NO #rsa_cert_file=/etc/ssl/certs/ssl-cert-snakeoil.pem #rsa_private_key_file=/etc/ssl/private/ssl-cert-snakeoil.key
a
ssl_enable=YES rsa_cert_file=/etc/ssl/private/vsftpd.pem rsa_private_key_file=/etc/ssl/private/vsftpd.pem
También deberá descomentar la siguiente línea:
#force_local_data_ssl=YES
Limitar el acceso de usuarios
Si desea limitar el acceso que los usuarios tienen a su servidor FTP, puede crear un archivo de lista de usuarios. Para hacer esto, necesita editar el /etc/vsftpd.conf
archivo y cambie la siguiente línea:
#userlist_deny=NO
a
userlist_deny=YES
También deberá descomentar la siguiente línea e ingresar la ruta a su archivo de lista de usuarios:
#userlist_file=/etc/vsftpd.userlist
El archivo de lista de usuarios es un archivo de texto simple que contiene una lista de usuarios de FTP, uno por línea. Puede crear este archivo ejecutando el siguiente comando:
sudo nano /etc/vsftpd.userlist
Agregue la siguiente línea al archivo:
ftpuser
Guarda el archivo y cierra.
Cifrar tráfico con FTPS
Si desea encriptar el tráfico entre su servidor FTP y el cliente, puede usar FTPS. Para hacer esto, necesita editar el /etc/vsftpd.conf
archivo y cambie las siguientes líneas:
#ssl_enable=NO #allow_anon_ssl=NO #force_local_data_ssl=NO #force_local_logins_ssl=NO
a
ssl_enable=YES allow_anon_ssl=NO force_local_data_ssl=YES force_local_logins_ssl=YES
También deberá descomentar la siguiente línea:
#rsa_cert_file=/etc/ssl/certs/ssl-cert-snakeoil.pem
Solución de problemas de error de conexión FTP “conexión rechazada”
Si tiene problemas para conectarse a su servidor FTP, es posible que vea un error de “conexión rechazada”. Esto generalmente es causado por un firewall que bloquea el tráfico FTP. Para solucionar esto, debe permitir el tráfico FTP a través de su firewall.
Si está utilizando el firewall UFW, puede hacerlo ejecutando el siguiente comando:
sudo ufw allow ftp
Si está utilizando otro firewall, deberá consultar la documentación para obtener instrucciones sobre cómo permitir el tráfico FTP.
Conclusión
En este artículo, le mostramos cómo configurar y usar el servidor FTP en Ubuntu Linux. También hemos cubierto algunas medidas básicas de configuración y seguridad para que pueda comenzar.