Este artículo le enseñará acerca de dos protocolos ampliamente utilizados para la transferencia de archivos, es decir, SFTP y FTPS.
Conoceremos sus diferencias fundamentales. El objetivo principal es saber qué protocolo debe utilizarse en diferentes circunstancias.
Estos dos protocolos (un conjunto de reglas o procedimientos para transmitir datos entre dispositivos electrónicos, como ordenadores) tienen nombres similares. La ubicación de la S en cada acrónimo influye en el funcionamiento de estos protocolos. Ambos protocolos envían con éxito sus datos, pero son significativamente diferentes.
SFTP frente a FTPS: ¿Qué protocolo utilizar?
FTP, FTPS y SFTP son tres protocolos ampliamente utilizados que se siguen empleando hoy en día para la transferencia de archivos. Incluso con iniciales similares, estos protocolos difieren significativamente, incluyendo la forma en que se transfieren los datos, el nivel de seguridad proporcionado y las preocupaciones sobre el cortafuegos.
El protocolo seguro de transferencia de archivos (FTPS) y el protocolo shell de transferencia de archivos (SFTP) permiten la transmisión rápida de archivos a través de diversos canales de comunicación.
Protocolo de transferencia de archivos Shell seguro (SFTP)
Un protocolo de red denominado Protocolo de transferencia de archivos shell seguro, a menudo conocido como SFTP, permite la transferencia segura de archivos a través de dos canales de comunicación.
SFTP forma parte del protocolo SSH y superpone comandos similares a los de FTP a lo que viene a ser SCP para facilitar la vida a los usuarios de FTP.
Permite la administración y el acceso a datos fiables con un alto nivel de seguridad para el envío y la recepción de transferencias de datos de archivos. Se puede acceder fácilmente a los datos, ya que SFTP proporciona tanto facilidades de usuario a servidor como de servidor a servidor. Puede utilizar SFTP para conectarse a un servidor, descargar y cargar archivos, y mucho más.
SFTP permite que las máquinas se conecten con la ayuda de claves públicas y privadas. Una vez verificada la conexión, ambos dispositivos pueden comunicarse de forma segura. SFTP sólo utiliza una conexión, lo que significa que sólo debe activarse un puerto en el servidor, y sólo tiene que ser accesible públicamente en el puerto seleccionado para el servidor, lo que facilita su seguridad.
Protocolo seguro de transferencia de archivos (FTPS)
El protocolo de transferencia de archivos segura, o FTPS, mejora la seguridad añadiendo funciones adicionales a la seguridad de la capa de transporte (TLS) y permite a las empresas conectarse de forma segura con sus socios comerciales, usuarios y clientes.
FTPS no es más que FTP sobre TLS: las conexiones de control y datos son idénticas al FTP normal, pero están cifradas con TLS (y necesitan certificados, igual que HTTPS), lo que no tiene nada que ver con SFTP. Los archivos enviados se intercambian a través de FTPS y son autenticados por aplicaciones compatibles con FTPS.
Básicamente, dispone de un canal de control y un canal de datos para transferir archivos a través de una red informática. Añade una capa de seguridad y encriptación, y la mayoría de los clientes FTP proporcionan la capacidad de sincronizar archivos, de modo que todos los archivos estarán actualizados independientemente de su ubicación.
Hay muchas herramientas disponibles para enviar y recibir archivos a través de FTPS, lo que lo convierte en una opción lógica para muchas situaciones de transferencia de archivos.
Comprender las diferencias clave
SFTP mejora la seguridad durante las transferencias de archivos, pero FTPS añade la capa de cifrado y hace que los datos estén más seguros.
SFTP fue diseñado para la comunicación segura en red. Principalmente quiere conectarse de forma segura para transferir datos de facturación, fondos y archivos de recuperación de datos.
FTPS, por otro lado, fue creado para soportar transferencias de archivos entre ordenadores conectados en red utilizando el protocolo de transferencia de archivos. También se diseñó para añadir soporte a la encriptación mediante la implementación de algoritmos. A diferencia de SFTP, FTPS permite que un humano comprenda y lea la comunicación.
Se prefiere SFTP por su compatibilidad con cortafuegos a FTPS
Con SFTP, sólo se realiza una conexión entre el cliente y el servidor. Cuenta con un puerto específico para conectarse a un ordenador en otra ubicación; por lo tanto, no es necesario abrir numerosos puertos. Por cierto, un menor número de puertos significa que determinados tipos de malware tienen menos posibilidades de explotar la seguridad.
El cliente y el servidor se conectan a través de una única red. El cortafuegos actúa como interfaz entre la conexión y comprueba las diversas anomalías que puedan producirse o los signos sospechosos e indicadores de amenazas.
Sin embargo, en comparación con SFTP, FTPS necesita una conexión de datos de reserva. Crea un nuevo puerto para cada transmisión de datos y pueden abrirse numerosos puertos simultáneamente.
El problema es que FTPS no está cifrado de forma natural. Debido a la encriptación externa, el software cortafuegos no puede determinar qué puerto se está utilizando y con qué propósito. Si se intenta utilizar FTPS y un cortafuegos simultáneamente, la conexión fallará de inmediato.
SFTP suele transferir los archivos más lentamente que FTPS.
Las conexiones SFTP son casi siempre notablemente más lentas que las conexiones FTPS. El protocolo que ejecuta SFTP genera un elevado coste adicional debido a la entrega de paquetes y al cifrado.
SFTP utiliza la arquitectura del protocolo de control de transmisión (TCP) en su núcleo. Para mantener la fiabilidad, TCP emplea varias técnicas de comprobación de errores, como el análisis de datos, el acuse de recibo y la sincronización de la entrega de mensajes.
FTPS se creó principalmente para transferencias rápidas de archivos y es un protocolo ligero y sin complicaciones en comparación con otros protocolos.
Mientras que FTPS también admite ASCII, SFTP sólo admite la transmisión de datos binarios.
No existe un modo ASCII(American Standard Code for Information Interchange) en SFTP. Toda la información se transmite de forma binaria, lo que garantiza que el servidor reciba los mismos datos que envió el cliente (o viceversa).
No existe un modo ASCII para traducir las cadenas del sistema operativo del emisor al del receptor. Debido a esto, el registro SFTP es bastante complicado. Utilizar la configuración por defecto de SFTP hace casi imposible crear y mantener registros, por lo que las empresas suelen utilizar una tecnología de transferencia de archivos gestionada (MFT) para sortear este problema.
Dado que FTPS es una versión más reciente de FTP, también admite transferencias ASCII. Esto resulta bastante útil para el registro, ya que facilita a los administradores de TI la comprensión de las actividades de protocolo de red que se están produciendo y la detección de cuellos de botella.
Mientras que SFTP es incompatible con los marcos de trabajo .NET, FTPS sí lo es.
El marco de software .NET, propiedad de Microsoft, permite a los programadores crear aplicaciones que pueden funcionar en el sistema operativo Windows. Tiene fama de ser fácil de usar y compatible con varias plataformas.
.NET, por defecto, no es compatible con los protocolos SFTP. Los desarrolladores que confían en este protocolo no pueden utilizarlo para la transferencia o administración de archivos. Por el contrario, .NET soporta FTPS, que nos permite ejecutar varios comandos.
SFTP utiliza autenticación fuera de banda, mientras que FTPS depende de un certificado firmado para obtener permiso.
El protocolo SFTP no proporciona ningún certificado firmado para la verificación. En primer lugar, no hay datos disponibles en texto plano, y toda la información está precifrada. También depende de la autenticación fuera de banda( tipo de autenticación de dos factores).
En esta situación, el identificador y la contraseña se transmiten por el mismo canal. Sin embargo, se utiliza un canal secundario separado para autenticar aún más la identidad del usuario.
FTPS, por el contrario, utiliza un servidor FTP, y se requiere que el servidor ofrezca una autenticación de clave pública (el cifrado y el descifrado se realizan utilizando claves separadas). Para utilizar la pasarela FTPS sin problemas, las empresas pueden comprar servidores que admitan el mecanismo de clave pública y que vengan con un certificado digital instalado.
En comparación con los comandos FTPS, los comandos SFTP proporcionan un mayor control.
Los sistemas operativos más populares vienen preinstalados con software CLI (interfaz de línea de comandos), y SFTP y FTPS pueden utilizarse utilizando una interfaz CLI. Como resultado, ambos protocolos de comunicación son abiertos y accesibles desde una amplia gama de plataformas.
Los comandos FTPS, en comparación, son bastante más sencillos y tienen menos funcionalidades. Los usuarios no pueden editar los archivos o directorios alojados a través de una conexión remota; sólo pueden acceder a ellos y recuperarlos. Por ejemplo, la utilización de comandos FTPS no permite modificar o alterar los permisos de propiedad de los archivos, ya que SFTP y FTPS utilizan sistemas de protocolo básicos diferentes (es decir, SSH para SFTP y FTP para FTPS).
SFTP goza de una compatibilidad y una adopción más excelentes
El uso de FTPS está disminuyendo. Cuando los datos son públicos y no sensibles, algunas empresas, soluciones de transferencia gestionada de archivos (MFT) y desarrolladores web independientes siguen empleando FTPS como método sencillo de transferencia de archivos.
Comparado con FTPS, SFTP es más reciente; la versión más reciente (versión 6, borrador 13) se creó en 2006. Todos los navegadores populares soportan SFTP, y existen numerosas soluciones SFTP de nivel empresarial disponibles a través de proveedores de confianza.
Por ejemplo, los protocolos de transferencia de archivos SFTP pueden configurarse para trabajar con servidores IBM y cubos en la nube Microsoft Azure.
¿Qué protocolo elegir entre SFTP y FTPS y en qué condiciones?
SFTP y FTPS son protocolos muy utilizados para transferir datos a través de redes públicas y privadas. Ambos tienen ventajas y desventajas. Antes de elegir un protocolo para satisfacer sus necesidades, las organizaciones deben tener en cuenta lo siguiente:
- SFTP es totalmente seguro por defecto, mientras que FTPS añade una capa de cifrado mediante SSL o TLS.
- SFTP es compatible con los cortafuegos, pero los datos binarios que transmite lo hacen inadecuado para el registro.
- Las transmisiones de archivos FTPS avanzan mucho más rápido que SFTP. Aunque SFTP no funciona con frameworks .NET, es más utilizado y compatible.
- Los procedimientos de autenticación y el conjunto de comandos difieren para los dos protocolos.
Por ello, la mayoría de las empresas combinan los dos para aprovechar las ventajas y abordar al mismo tiempo los inconvenientes
Cuándo utilizar SFTP
Aunque SFTP es más lento, se termina rápidamente sin que se interrumpa toda la sesión. Es fácil de utilizar compartiendo su clave SSH pública; pueden rellenar rápidamente la información en su servidor y vincularla a su cuenta.
Cuando se establece la conexión, el software cliente envía su clave pública al servidor para su verificación. Si esta clave pública coincide y el usuario introduce el usuario de la contraseña necesaria, entonces se completa la autenticación.
SFTP utiliza un puerto independiente para transferir datos (por defecto, es el puerto 22). Debido al menor número de puertos, SFTP limita el número de puntos en peligro de escucha (interceptación no autorizada en tiempo real de una comunicación privada) y evita los ataques man-in-the-middle.
Puede transferir archivos grandes y voluminosos de una sola vez. Los datos se transmitirán con rapidez y eficacia.
Cuándo utilizar FTPS
Su mejor opción para transferir archivos de forma segura es FTPS. Si un socio comercial lo requiere o si desea emplear certificados para autenticar las conexiones.
FTPS utiliza TLS y SSL para cifrar las conexiones del servidor. Incluyen detalles identificativos, como el nombre del emisor, el nombre del sujeto, la información crítica pública del sujeto y una firma.
Cuando se emplean certificados, se confía en ellos si están autofirmados por un socio comercial o firmados por una autoridad de certificación (CA) reconocida. Necesita una copia del certificado público del socio comercial en su almacén vital de confianza para validar las credenciales autofirmadas.
Su mejor opción para transferir archivos de forma segura es FTPS. Se abrirá un nuevo puerto ya que FTPS emplea numerosos números de puerto para tipos de conexión implícitos y explícitos.
Conclusión
Mientras que SFTP es una versión mejorada de SSH que proporciona funciones sencillas de transferencia de archivos al SSH seguro por defecto, FTPS se desarrolló como una versión mejorada de FTP para añadir un marco de seguridad. FTPS utiliza dos canales, mientras que SFTP sólo utiliza uno para permitir las comunicaciones de control y la transferencia de datos.
SFTP envía datos en formato binario; FTPS envía datos en formato legible por humanos. Si elige FTPS para su organización, tenga en cuenta que puede resultar difícil conectarse a través de cortafuegos de alta seguridad.
Dado que FTPS utiliza varios números de puerto para los tipos de conexión implícita y explícita, se abre otro puerto cada vez que se solicita una transferencia de archivos o un listado de directorios. No ser precavido y estar alerta puede poner en riesgo su red y exponerla a vulnerabilidades.