Si está configurando un servidor Linux, necesitará acceso FTP. Esto significa instalar primero un servidor FTP en Linux. Debería ser una de las primeras cosas que haga después de instalar el sistema operativo de su servidor.
Muchos servidores Linux ejecutan Ubuntu. Entonces, veamos cómo configurar un servidor FTP en un servidor Ubuntu.
¿Qué es un servidor FTP?
FTP, o Protocolo de transferencia de archivos, es el sistema que se utiliza para cargar (colocar) o descargar (obtener) archivos de un servidor. Probablemente lo haya usado sin darse cuenta en el pasado, al tomar archivos o cargar imágenes a la web. O puede que haya utilizado un cliente FTP para conectarse directamente al servidor de archivos FTP.
Para que esto suceda, el software del servidor FTP debe estar instalado en el servidor remoto que aloja los archivos.
Ya sea que esté construyendo un servidor doméstico Linux, un servidor web, un servidor de juegos o cualquier servidor que se adapte a su proyecto, FTP es la forma más sencilla de transferir datos de un sistema a otro.
Instalar un servidor en Ubuntu
Instalar un servidor FTP en Ubuntu es sencillo. Podría decirse que la mejor solución es vsftpd. Siga los pasos a continuación para instalar y configurar un servidor FTP en Ubuntu con vsftpd.
1. Instale vsftpd
Es posible que ya tenga instalado vsftpd. Para verificar, abra una ventana de terminal e ingrese
sudo apt list --installed
Debería encontrar vsftpd cerca del final de la lista. Si no es así, simplemente instálelo con
sudo apt install vsftpd
Una vez instalado, es hora de configurar vsftpd. Empiece por hacer una copia del archivo de configuración original. Esto significa que si algo sale mal, se puede restaurar la configuración predeterminada.
sudo cp /etc/vsftpd.conf /etc/vsftpd.conf_default
Una vez hecho esto, inicie el servicio con:
sudo systemctl start vsftpd
Confirme que el servidor se está ejecutando con:
sudo systemctl enable vsftpd
Con vsftpd instalado, puede comenzar la configuración.
2. Cree un usuario de FTP
Lo primero que necesita es una cuenta de usuario FTP. Con esto puede utilizar cualquier cliente FTP para acceder a los archivos alojados en el servidor a través de vsftpd. En la terminal, ingrese:
sudo useradd –m username
(Sustituya "nombre de usuario" por su nombre de usuario previsto).
sudo password username
Con el nombre de usuario y la contraseña configurados, cree un archivo de prueba en la carpeta de inicio de la cuenta para confirmar que funciona:
cd /home/username sudo nano testfile.txt
Cuando se conecte por primera vez a su servidor FTP de Ubuntu, debería ver testfile.txt.
3. Asegure su servidor FTP de Ubuntu
Sin embargo, antes de configurar una conexión, deberá asegurarse de que los puertos FTP estén abiertos en Ubuntu. De forma predeterminada, estos están cerrados por razones de seguridad en ufw (firewall sin complicaciones).
Para habilitar el acceso a través del puerto 20, use
sudo ufw allow 20/tcp
Si su distribución usa un firewall diferente o ha instalado una alternativa, consulte la documentación para abrir los puertos.
También querrá que los usuarios puedan cargar archivos. Puede configurar esto en el archivo de configuración. Ábrelo para editar:
sudo nano /etc/vsftpd.conf
Busque write_enabled y descomente la entrada, asegurándose de que esté configurada en "YES":
write_enable=YES
Presione Ctrl + X para salir e Y para guardar.
Para los servidores FTP de acceso público, querrá limitar el acceso que tiene cada usuario. Con chroot podemos restringir a cada usuario a su directorio de inicio. En vsftpd.conf, busque y descomente esta línea (elimine el #):
chroot_local_user=YES
Nuevamente, Ctrl + X para salir e Y para guardar.
Para varios usuarios, mantener una lista es una opción más inteligente.
Primero, abra vsftpd.chroot_list en su editor de texto.
sudo nano /etc/ vsftpd.chroot_list
Aquí, enumere los nombres de usuario que desea limitar a sus propias carpetas. Guarde y salga, luego regrese a vsftpd.conf y asegúrese de que chroot_local_user = YES no esté comentado:
#chroot_local_user=YES
En cambio, descomenta
chroot_list_enable=YES
y
chroot_list_file=/etc/vsftpd.chroot_list
Debe tener un aspecto como este:
Nuevamente, guarde y salga. Finalmente, reinicie el servicio FTP:
sudo systemctl restart vsftpd.service
Finalmente, use el comando hostname para verificar el nombre de su servidor Ubuntu. Luego puede usar esto para conectarse al servidor FTP. Si prefiere usar la dirección IP, ingrese el comando de dirección IP y anótelo.
4. Conexiones encriptadas: FTP + SSL = FTPS
También puede forzar el cifrado del tráfico hacia y desde su servidor FTP de Ubuntu utilizando SSL / TLS.
Relacionado: términos de cifrado que todos deberían conocer
En el archivo vsftpd.conf, busque la referencia a "conexiones cifradas SSL" y agregue lo siguiente:
ssl_enable=YES rsa_cert_file=/etc/ssl/certs/ssl-cert-snakeoil.pem rsa_private_key_file=/etc/ssl/private/ssl-cert-snakeoil.key
Guardar y salir del archivo. Ahora puede especificar FTPS como protocolo de conexión en su cliente FTP.
5. Instale un cliente FTP en Ubuntu
Desde otro sistema, puede conectarse a su servidor FTP de Ubuntu utilizando una herramienta de línea de comandos o una aplicación de escritorio.
En Linux, puede acceder al servidor en la terminal con
sudo ftp hostname
Asegúrese de sustituir "nombre de host" por el nombre de host de su servidor. También puede utilizar la dirección IP
sudo ftp ipaddress
Cuando se le solicite, ingrese el nombre de usuario y la contraseña que estableció anteriormente. Luego puede usar los comandos get y put para transferir datos.
¿Quiere algo más intuitivo o acceder al servidor FTP desde otro sistema operativo? Necesitará un cliente FTP y posiblemente el mejor disponible es FileZilla. Una solución de código abierto, está disponible para Windows (así como para un servidor), macOS, y existen versiones de 32 y 64 bits para Linux. Lamentablemente, no existe un servidor FTP FileZilla para Ubuntu u otras distribuciones de Linux.
Descargar: FileZilla (gratis)
Para usar el cliente FileZilla para conectarse a su servidor FTP de Ubuntu, instale e inicie la aplicación. Luego:
- Haga clic en Archivo> Administrador del sitio
- Aquí, haga clic en Nuevo sitio
- En el panel de la derecha, seleccione FTP
- Si está utilizando FTPS, seleccione TLS para cifrado .
- A continuación, ingrese el nombre de host o la dirección IP en Host y agregue el puerto .
- Para el tipo de inicio de sesión, ingrese las credenciales de su cuenta en Usuario y Contraseña .
- Haga clic en Conectar .
A continuación, puede cargar y descargar (poner y obtener) datos de su servidor FTP de Ubuntu. Simplemente arrastre y suelte los archivos que desea mover.
¿Utiliza un cliente FTP diferente? Los pasos deben ser en gran parte los mismos, pero consulte la documentación de la aplicación para obtener una aclaración.
Construiste un servidor FTP en Ubuntu
Ya sea que esté usando una versión de escritorio o de servidor del sistema operativo Ubuntu, ahora ejecuta un servidor FTP. Esto se puede utilizar para diversos fines, desde cargar páginas web hasta proporcionar un fácil acceso a datos importantes. Usando FTP, puede capturar los datos siempre que los necesite sin acceso físico a la máquina del servidor.