Cómo cambiar el puerto FTP en Linux


FTP o Protocolo de transferencia de archivos es uno de los protocolos de red más antiguos que se utilizan en la actualidad como transferencias de archivos estándar a través de redes informáticas. El protocolo FTP utiliza el puerto estándar 21/TCP como puerto de comando. Aunque hay muchas implementaciones del protocolo FTP en el lado del servidor en Linux, en esta guía cubriremos cómo cambiar el número de puerto en la implementación del servicio Proftpd.

Para cambiar el puerto predeterminado del servicio Proftpd en Linux, primero abra el archivo de configuración principal de Proftpd para editarlo con su editor de texto favorito emitiendo el siguiente comando. El archivo abierto tiene diferentes rutas, específicas para su propia distribución de Linux instalada, de la siguiente manera.

# nano /etc/proftpd.conf            [On CentOS/RHEL]
# nano /etc/proftpd/proftpd.conf    [On Debian/Ubuntu]

En el archivo proftpd.conf, busque y comente la línea que comienza con el puerto 21. Necesita agregar un hashtag (#) delante de la línea para poder comentar la línea.

Luego, debajo de esta línea, agregue una nueva línea de puerto con el nuevo número de puerto. Puede agregar cualquier puerto TCP no estándar entre 1024 y 65535, con la condición de que el nuevo puerto no esté ya tomado en su sistema por otra aplicación que se vincule a él.

En este ejemplo, vincularemos el servicio FTP en el puerto 2121/TCP.

#Port 21
Port 2121

En las distribuciones basadas en RHEL, la línea Port no está presente en el archivo de configuración Proftpd. Para cambiar el puerto, simplemente agregue una nueva línea de puerto en la parte superior del archivo de configuración, como se ilustra en el siguiente extracto.

Port 2121

Después de cambiar el número de puerto, reinicie el demonio Proftpd para aplicar los cambios y emita el comando netstat para confirmar que el servicio FTP escucha en el nuevo puerto 2121/TCP.

# systemctl restart proftpd
# netstat -tlpn| grep ftp
OR
# ss -tlpn| grep ftp

En las distribuciones basadas en CentOS o RHEL Linux, instale el paquete policycoreutils y agregue las siguientes reglas de SELinux para que el demonio FTP se vincule en el puerto 2121.

# yum install policycoreutils
# semanage port -a -t http_port_t -p tcp 2121
# semanage port -m -t http_port_t -p tcp 2121
# systemctl restart proftpd

Finalmente, actualice las reglas de firewall de su distribución de Linux para permitir el tráfico entrante en el nuevo puerto FTP. Además, verifique el rango de puertos pasivos del servidor FTP y asegúrese de actualizar también las reglas del firewall para reflejar el rango de puertos pasivos.