Protocolo de transferência de arquivos SSH – IOT Parte 45

Protocolo de transferencia de archivos SSH – IOT Parte 45

En el tutorial anterior, vimos cómo se puede utilizar el protocolo FTP para actualizar el software de la aplicación en un dispositivo IoT. Sin embargo, el protocolo FTP tiene algunos problemas de seguridad, ya que es vulnerable a varios tipos de ataques, como ataques de fuerza bruta, ataques de rebote de FTP, captura de paquetes, robo de puertos (adivinar el siguiente puerto abierto y usurpar una conexión legítima), ataques de suplantación de identidad, nombre de usuario. enumeración, etcétera. Por ello, se han desarrollado variantes seguras de los protocolos FTP. El protocolo de transferencia de archivos SSH es una de las variantes seguras del protocolo FTP.

Símbolo do protocolo de transferência de arquivos SSH (SFTP)

Figura 1: Símbolo del protocolo de transferencia de archivos SSH (SFTP)

El Protocolo de transferencia de archivos SSH/Protocolo de transferencia segura de archivos (SFTP) está diseñado para acceder, transferir y administrar archivos en un flujo de datos confiable y seguro. Fue diseñado por Internet Taskforce (IETF) para proporcionar capacidad de transferencia segura de archivos. Más tarde, el IETF declaró que fue diseñado como una extensión de SSH (Secure Shell) para transferir archivos a través de una conexión segura usando TLS.
¿Por qué necesitas SFTP?
Se utilizaba FTP para transferir archivos, pero no a través de un canal seguro, por lo que se desarrolló SFTP. Probablemente no sea un protocolo FTP sobre SSH, es un protocolo nuevo que admite muchas operaciones de archivos a través de la red. Proporciona acceso fácil pero seguro a archivos a través de una conexión remota. También se puede utilizar como SSH-1 y SSH-2.
Funciones SFTP:
SFTP viene con muchas ventajas sobre FTP, como
1. Reanudar las transferencias de archivos interrumpidas
2. Eliminación remota de archivos
3. Listado de directorio
4. Gestión de archivos en el servidor.
5. Independencia de la plataforma
6. Sello de carga, es decir, los archivos cargados se pueden asociar con sus atributos básicos, como marcas de fecha y hora. Esta es una ventaja sobre el protocolo FTP común.
Software SFTP-
Como cualquier otro protocolo, SFTP también se basa en el modelo cliente-servidor. Por lo tanto, se requiere algún software servidor-cliente para implementar el protocolo.
Cliente SFTP: ​​el cliente es un software basado en línea de comandos donde un usuario puede usar herramientas tradicionales como shell seguro y PUTTY, pero depende totalmente de lo que admita el servidor.
Algunos programas cliente SFTP de uso común son los siguientes:
1) WinSCP: es un cliente GUI SFTP gratuito y de código abierto. A pesar del nombre, no se limita a SCP, sino que también funciona con SFTP y FTP/SSL.
2) Cliente Filezilla: Es un cliente GUI FTP, FTP/SSL y SFTP gratuito y de código abierto (tenga cuidado con el adware).
3) Cliente Bitvise SSH: es un túnel SSH, emulación de terminal SSH y cliente SFTP. Está disponible como aplicación comercial.
4) JSCAPEAny Client: Es un cliente SFTP/FTP/FTPS/WebDAV/S3 basado en web. Está disponible como aplicación comercial.
Servidor SFTP: los servidores SFTP se pueden implementar en máquinas basadas en Linux. Algunas implementaciones de servidores FTP y SSH proporcionan implementación SFTP junto con su instalación y comparten el puerto predeterminado 22 con otros servicios SSH.
Algunas herramientas populares del servidor SFTP son las siguientes:
1) OpenSSH: Este es el servidor SFTP/SSH más utilizado del planeta. Es perfecto para Linux o *BSD, pero no tan bueno en Windows. Es una herramienta de código abierto.
2) Servidor Bitvise SSH: Es un servidor SFTP/SSH para Windows.
3) Servidor Tectia SSH: Es un servidor SFTP/SSH empresarial de los creadores del protocolo SSH.
4) CrushFTP: Es un servidor de transferencia de archivos con soporte para SFTP, SCP, FTPS y HTTPS.
Proxy SFTP: el manejo del tráfico SFTP en servidores proxy tradicionales no es efectivo para controlar el tráfico SFTP. Existen herramientas difamadas para servidores proxy SFTP que son como “TIS fwtk” o “SUSE FTP proxy”.
Desarrollo con SFTP –
Las bibliotecas de cliente y servidor para SFTP están escritas en lenguajes de programación populares como C/C++, .net, java y python. Por tanto, desarrollar una aplicación con SFTP es fácil y tiene muchas funciones.
En el siguiente tutorial, aprenderá a diseñar un sistema de gestión de pedidos de hoteles en línea utilizando el protocolo MQTT.

Volver al blog

Deja un comentario

Los comentarios deben ser aprobados antes de su publicación.