Volver a actualizaciones
Nuevo releaseAug 20, 2026

File-Tunnel v3.5.2

Tunelizar conexiones TCP a través de un archivo

Compartir

File Tunnel

Tuneliza conexiones TCP a través de un servidor de archivos.

Puedes encontrar una lista completa de los sistemas de archivos compatibles aquí.


Descarga

Puedes encontrar ejecutables portátiles para Windows, Linux y Mac en la sección de versiones.


Ejemplo 1 - Evadir un cortafuegos

Quieres conectarte desde el Host A al Host B, pero hay un cortafuegos de por medio. Sin embargo, ambos hosts tienen acceso a una carpeta compartida.

ft_fw

Host A

ft.exe -L 5000:127.0.0.1:3389 --write "\\server\share\1.dat" --read "\\server\share\2.dat"

Este comando escucha conexiones en el puerto 5000. Cuando se recibe una, se reenvía a través del túnel de archivos y luego a 127.0.0.1:3389.

Host B

ft.exe --read "\\server\share\1.dat" --write "\\server\share\2.dat"

Ahora, en el Host A, conecta el cliente a 127.0.0.1:5000 y se reenviará al servidor remoto.



Así es como se ve File Tunnel cuando está operando:


Captura de pantalla




Ejemplo 2 - Tunelizar TCP a través de RDP (similar al túnel SSH)

Quieres conectarte a un servicio remoto (p. ej. 192.168.1.50:8888), pero solo tienes acceso al Host B mediante RDP.

Host A

ft.exe -L 5000:192.168.1.50:8888 --write "C:\Temp\1.dat" --read "C:\Temp\2.dat"

Ejecuta un cliente RDP y asegúrate de que las unidades locales estén compartidas como se muestra aquí.

Conéctate por RDP al Host B.

Host B

ft.exe --read "\\tsclient\c\Temp\1.dat" --write "\\tsclient\c\Temp\2.dat"

Ahora, en el Host A, puedes conectarte a 127.0.0.1:5000 y se reenviará a 192.168.1.50:8888.




Otras características interesantes

  • -L se puede utilizar varias veces para reenviar múltiples puertos a través de un único túnel.

  • Para permitir que otros equipos utilicen el túnel, especifica una dirección de enlace de 0.0.0.0. Por ejemplo: -L 0.0.0.0:5000:192.168.1.50:3389 permite que cualquier equipo de la red se conecte al túnel y a 192.168.1.50:3389.

  • Usa -R para el reenvío remoto. Por ejemplo: -R 5000:10.0.0.50:6000 indica al lado remoto que escuche en el puerto 5000 y, cuando se reciba una conexión, la reenvía a través del túnel y luego a 10.0.0.50:6000 mediante la máquina local. Esto te permite compartir un servidor que se ejecuta en tu máquina local con otros equipos.

  • Usa -D para el reenvío dinámico (SOCKS), igual que SSH. Por ejemplo: -D 1080 inicia un proxy SOCKS4/4a/5 en el puerto 1080; cada conexión se establece desde el lado remoto, de modo que las aplicaciones pueden alcanzar todo lo que la máquina remota pueda alcanzar. Un -R 1080 simple (sin destino) es el inverso: aloja el proxy SOCKS en el lado remoto, estableciendo las conexiones salientes a través de tu máquina local. Maneja tanto TCP (CONNECT) como UDP SOCKS5 (ASSOCIATE); sin autenticación.

  • Usa --http-proxy para un proxy HTTP. Por ejemplo: --http-proxy 8080 inicia un proxy HTTP CONNECT en el puerto 8080, estableciendo las conexiones desde el lado remoto (apunta hacia él un navegador o curl -x http://127.0.0.1:8080 https://example.com). Usa --remote-http-proxy 8080 para alojar el proxy en el lado remoto, estableciendo las conexiones salientes a través de tu máquina local. Solo método CONNECT (HTTPS y cualquier túnel TCP); sin autenticación.

  • Puedes usar la conexión a internet de otro equipo siguiendo estas instrucciones.




¿Cómo funciona?

El programa inicia un listener TCP y, cuando recibe una conexión, escribe los datos TCP en un archivo. Ese mismo archivo es leído por el programa homólogo, que establece una conexión TCP y reenvía los datos TCP. Para evitar que el archivo compartido crezca indefinidamente, se purga cada vez que supera los 10 MB.

Categorías