Al instalar Linux desde cualquier distribución, solo el usuario root estará disponible por defecto. Sin embargo, por razones de seguridad, no será posible conectarse por FTP con este usuario. En este artículo, explicaremos cómo configurar rápidamente un servidor FTP y crear un usuario usando únicamente comandos de la consola de Linux.
Paso 1: Establezca una conexión segura a su servidor
Primero, necesita conectarse a su servidor. Puede hacerlo mediante el protocolo SSH (Secure Shell), que proporciona un acceso remoto seguro. En lugar de iniciar sesión como root, que es la cuenta administrativa predeterminada en Linux, use una cuenta normal y ejecute comandos mediante sudo para mayor seguridad.
Paso 2: Instalar el servidor FTP
El siguiente paso es la instalación del servidor FTP. En este tutorial, usaremos proftpd, un popular servidor FTP de código abierto.
Si usa CentOS, instale primero el repositorio EPEL. Introduzca los siguientes comandos en la terminal:
sudo yum install epel-release
sudo yum install proftpd
Si está utilizando Debian o Ubuntu, simplemente escriba:
sudo apt install proftpd
Paso 3: Configurar el inicio automático del FTP
Tras instalar el servidor FTP, configúrelo para que se inicie automáticamente cada vez que arranque. Esto se realiza mediante los siguientes comandos:
sudo systemctl start proftpd.service
sudo systemctl enable proftpd.service
Paso 4: Configure su firewall
Por motivos de seguridad, su firewall debe estar configurado para permitir conexiones entrantes en el puerto TCP 21. El comando exacto depende de la utilidad de administración de firewall que utilice. Para 'iptables':
sudo iptables -I INPUT -p tcp -m tcp --dport 21 -j ACCEPT
sudo systemctl save iptables
para 'firewalld':
sudo firewall-cmd --permanent --zone=public --add-port=21/tcp
sudo firewall-cmd –reload
para 'nftables' en Debian 11:
sudo nft add rule ip filter input tcp dport { 21 } ct state new accept
Una vez configurado el firewall, no olvide guardar los cambios para que se apliquen al reiniciar. Para iptables y firewalld, esto se realiza automáticamente, mientras que para nftables deberá guardar manualmente las reglas actuales en un archivo que se cargará al iniciar el sistema.
Paso 5: Restringir los usuarios de FTP por su directorio doméstico
De forma predeterminada, los usuarios de FTP pueden acceder a otros directorios, lo cual puede suponer un riesgo de seguridad. Para evitarlo, añada la línea DefaultRoot ~ al archivo 'proftpd.conf'. Esta línea restringe el acceso de los usuarios a su directorio. Añádala al final del archivo y reinicie el servidor FTP:
sudo systemctl restart proftpd.service
Paso 6: Creación de un nuevo usuario FTP
Ya está listo para crear un nuevo usuario FTP. No necesita acceso a la consola de comandos, así que deshabilítelo por seguridad. Estos son los comandos para ello:
sudo useradd [username] -d /home/[username] -m -s /usr/sbin/nologin
sudo passwd [username]
Reemplace [nombre de usuario] con el nombre de usuario deseado. El comando 'passwd' le permitirá ingresar una contraseña para el nuevo usuario.
Ya ha configurado un servidor FTP y creado un nuevo usuario FTP en el servidor Linux. Tenga siempre en cuenta la seguridad durante la configuración.