La seguridad en Internet es muy importante. Debemos proteger nuestros sistemas, dispositivos, así como también preservar siempre los datos y archivos de nuestra página web de forma segura. Por ello a la hora de alojar contenido en un servidor debemos tener en cuenta ciertos aspectos para evitar así problemas. En este artículo vamos a hablar de qué es FTP sobre TLS/SSL.
Cómo evitar problemas en servidores FTP, FTPES o SFTP
Hay que tener en cuenta que en muchas ocasiones podemos sufrir problemas que afecten al funcionamiento de nuestros servidores. Es algo relativamente común cuando cometemos errores de configuración o el servicio que estamos usando tiene algún tipo de error. Por ello conviene evitar en todo momento problemas que puedan perjudicar al buen funcionamiento de nuestros servidores FTP, FTPES o SFTP. Hay errores habituales como el 530 de fallo de autenticación.
Uno de los consejos más importantes es asegurarnos de que nuestro proveedor de Internet no está bloqueando el puerto correspondiente. Esto podría dar lugar a problemas como FTP connection timed out. Esto significaría que nuestro proveedor está bloqueando el puerto 21, que es el que utiliza en este caso FTP.
También podría ocurrir que estemos usando un puerto incorrecto. Podríamos toparnos con un error como ECONNREFUSED. Esto ocurre cuando estamos intentando conectarnos a través de un puerto incorrecto. Por ello es esencial asegurarnos de que estamos usando el puerto adecuado y también que nuestro operador no lo está bloqueando.
Un fallo que también aparece mucho es el de EAI_NONAME. Ocurre cuando el servidor especificado no es el correcto y no se puede establecer la conexión. Para evitarlo debemos verificar siempre la información de nuestro sitio.
¿Está disponible el directorio al que intentamos acceder? Un problema habitual es el error 530 Sorry, but I can’t trust you. Lo podemos evitar si vemos la ruta exacta del directorio para comprobar que es la correcta o si la creamos en caso de que no esté disponible.
Por otra parte, hay que tener en cuenta la importancia de controlar posibles firewalls que estemos utilizando. A veces pueden interferir en la conexión y generar problemas que eviten el uso de servidores FTP, FTPES o SFTP.
Qué es FTP
FTP es un protocolo para transferir archivos de un equipo a otro. Por ejemplo podemos pasar archivos y carpetas de un ordenador a un servidor web. Fue creado inicialmente en la década de 1970 pero continúa siendo muy importante. Los servidores FTP están muy presentes en la red y a la hora de acceder a uno podemos ver que la URL empieza por ftp://, en lugar del típico http://.
Su nombre viene de File Transfer Protocol (protocolo de transferencia de archivos). Permite cargar y descargar archivos de una manera sencilla en un servidor a través de cualquier equipo como puede ser un ordenador o un móvil.
Básicamente el usuario va a disponer de un sistema de gestión de archivos. Va a poder usar un explorador como podemos ver en sistemas operativos como Windows. Estos archivos los podemos incluir en carpetas y organizarlos como queramos. De la misma manera que hacemos con nuestro ordenador.
Para que funcione es necesario hacer uso de TCP/IP, igual que en el caso del protocolo HTTP. Lo podemos utilizar a través de un navegador o herramientas específicas. Podemos ver en qué lugar exactamente está incluido ese archivo. Por defecto se conecta al puerto TCP 21.
El problema es que inicialmente el protocolo FTP se diseñó sin tener en cuenta la seguridad. Como hemos mencionado se trata de algo que lleva con nosotros muchas décadas. Lógicamente la tecnología ha avanzado y aporta tanto aspectos positivos como también negativos. Estos últimos están relacionados con los problemas de seguridad y los ataques que podemos sufrir.
Por qué FTP sobre SSL es importante para un servidor web
Esto que mencionamos, el hecho de que fuera un protocolo antiguo que no se adapta a las medidas de seguridad actuales, provocó que fuera necesaria la implantación de FTP sobre SSL. Generalmente nos referimos como FTP/SSL. Consiste básicamente en proteger la transferencia de archivos.
FTP sobre SSL utiliza una capa SSL/TLS debajo del protocolo estándar FTP. De esta manera logramos cifrar los canales de control y datos. Cuando se va a intercambiar información, se realiza una negociación TLS/SSL antes de que se envíe nada. De esta forma va todo cifrado.
Este protocolo autentifica las conexiones utilizando un ID de usuario o contraseña, además de poder tener también un certificado.
Variantes: FTPS implícito y explícito
Hay que mencionar que hay dos variantes de este protocolo. Por un lado tenemos FTP implícito sobre SSL y por otra parte también encontramos la variante FTP explícito sobre SSL. Vamos a explicar en qué consiste cada una.
- FTP implícito sobre SSL: esta variante significa que la conexión cifrada es implícita. No es necesario solicitarla. No obstante, esta variante está desaconsejada hoy en día.
- FTP explícito sobre SSL: la segunda variante es FTP explícito sobre SSL. También se le conoce simplemente como FTPES. Se establece una conexión estándar mediante el puerto 21 con el servidor y se solicita explícitamente la negociación SSL.
SFTP, un protocolo diferente
Hay que tener en cuenta que SFTP no es lo mismo que FTPS, aunque pueda confundir a los usuarios en ocasiones. Se trata de un protocolo diferente, aunque sí simula el funcionamiento de FTP. En este caso utiliza el protocolo de red SSH.
En este caso tanto los datos de control como de transferencia van siempre cifrados y a través de un único canal. Para ello hace uso del puerto 22, como ocurre con el protocolo SSH.
Aunque tanto FTPS como SFTP mejoran notablemente la seguridad al transferir archivos, hay que tener en cuenta que tienen diferencias. Una de las principales es que la primera utiliza múltiples puertos diferentes, mientras que SFTP utiliza un único puerto para todas las transferencias.
En definitiva, la seguridad es un factor muy importante a la hora de alojar contenido para nuestra web. Hacer uso de FTP sobre SSL es muy interesante para cifrar las conexiones y evitar problemas.
Alternativas a protocolos FTP
Si no queremos dar uso de estos sistemas FTP, nos podemos encontrar con algunas alternativas que también son válidas para las transferencias de archivos. Estas son:
- SCP: Está basado en el protocolo SSH. Este permite la transferencia segura de archivos entre máquinas, y es muy similar a SFTP. Por otro lado, resulta más simple de utilizar, y es mucho más directo durante sus operaciones.
- HTTP y HTTPS: A pesar de que son conocidos por servir páginas web, también se les puede dar uso para transferir archivos. Muchas aplicaciones de almacenamiento en la nube actuales y conocidas, utilizan HTTPS para poder realizar las transferencias de los archivos.
- WebDAV: Se trata de una extensión del protocolo HTTP, la cual permite a los usuarios editar y disponer de una gestión de archivos en servidores remotos. También pueden funcionar con HTTP y HTTPS.
- Rsync: Es una herramienta y protocolo que permite realizar una sincronización de archivos entre diferentes máquinas. Es muy eficiente en todo el proceso de cambio de archivos entre el origen y el destino. Es muy utilizado para copias de seguridad y crear espejos de sitios.
- SMB: Es un protocolo de comparación de archivos que está diseñado especialmente para las redes locales. Es muy utilizado en Windows, a pesar de que puede haber clientes con otros sistemas operativos. En este caso podemos englobar dentro de este apartado a CIFS.
- NFS: Se trata de un protocolo que ha sido desarrollado por Sun Microsystems, que da la posibilidad a los sistemas informáticos de acceder a los archivos mediante una red como si fueran discos locales. Es una funcionalidad muy popular en sistemas Unix y Linux.
- TFTP: Es una versión muy simplificada de FTP, y está diseñada para funcionar dentro de redes locales. Es muy utilizada para tareas de configuración remota o realizar actualizaciones de firmware. El problema es que carece de características de seguridad. Por lo cual no se recomienda para transferencias por Internet.
Como puedes ver, hay muchas alternativas. Por lo cual antes de utilizar una sin más, lo mejor es realizar un pequeño estudio que nos ayude a determinar cuál es la que mejor se adapta a nuestras necesidades.