La privacidad y el anonimato es algo que preocupa a muchos. Muchas personas se ven obligadas a usar métodos contra la censura ya sea para acceder a sitios restringidos en su país o bien, para realizar algún otro tipo de actividad en internet.
· ¿Qué es un proxy transparente?
Un proxy transparente es un servidor que se ubica entre su computadora e Internet y redirige sus solicitudes y respuestas sin modificarlas. Un servidor proxy que modifica sus solicitudes y respuestas se define como un proxy no transparente. Un servidor proxy transparente también brinda mejoras en la velocidad de su red.
Un proxy transparente se puede usar por varias razones, cómo el filtrado de contenido en escuelas y bibliotecas, y cómo no necesita ninguna configuración en el lado del cliente, puede ser una alternativa fácil de mantener a otros tipos de proxy.
A diferencia de otros servicios proxy o VPN, no necesariamente es necesario descargar una aplicación o programa para usar un proxy transparente. En cambio, depende de cómo esté configurada su red.
· ¿Qué es TOR?
Tor (siglas de The Onion Router o también conocido como Cebolla) es un proyecto mantenido por The Tor Project. El objetivo de Tor es generar una “carretera” alternativa en las comunicaciones de Internet, protegiendo a los usuarios, proveyendo seguridad y anonimato. Para información más extendida puedes visitar el sitio web del proyecto: http://torproject.org/. Tor cuenta con Tor Browser: un navegador configurado para navegar de manera privada y segura sin dejar rastro alguno. También está TAILS que es un Sistema Operativo basado en Debian, el cual pasa todas las conexiones salientes por los proxies de Tor y sin dejar rastro en el Disco Duro (si se corre desde un medio extraíble). - Tomado de https://securityhacklabs.net/articulo/instalacion-y-configuracion-tor-en-arch-linux-debian-y-derivados
· ¿Qué debo hacer para configurar TOR cómo un proxy transparente?
Existen dos métodos, manualmente y automáticamente. Si usted tiene conocimiento sobre cómo funciona el servicio TOR, iptables, systemd, sus servicios de arranque y tu sistema operativo utiliza Systemd cómo demonio init, te recomendamos usar la opción automatizada, en el caso contrario, te recomendamos que investigues sobre estos temas para entender el funcionamiento de lo que se realiza para que TOR funcione cómo proxy transparente. Adicionalmente si tu sistema no utiliza Systemd, revisa la documentación del init sobre cómo crear un servicio que se pueda ejecutar mediante el init.
Automáticamente.
El desarrollador Edu4rdSHL ha creado un script que automatiza el proceso de convertir TOR en un proxy transparente, cómo también su instalación. Muchos se preguntarán: ¿Para qué crear más de lo mismo? La respuesta es simple: Todos los demás scripts existentes tienen demasiado código para realizar una tarea tan sencilla, normalmente requieren decenas de dependencias que no son necesarias para lograr que esto funcione, y adicionalmente no enrutan las peticiones DNS, lo que significa que aunque escondas tu dirección IP, los sitios pueden saber cual es tu ISP mediante los DNS, tor-router enruta las peticiones DNS también brindando una extra capa de privacidad/seguridad. Tor-Router es una herramienta escrita en bash, la cual solo requiere cómo dependencias tres cosas:
- Que su sistema utilice Systemd (si quieres usar el script de instalación automático).
- Que tengas instalado el TOR en su sistema.
- iptables
Los pasos para realizarlo automáticamente son los siguientes:
- Clonamos la herramienta desde el repositorio de Github
git clone https://github.com/edu4rdshl/tor-router
- Ingresamos al directorio donde lo clonamos y ejecutamos el script cómo usuario root o sudo
cd ./tor-router && sudo bash install.sh
Con eso ya estaría todo listo, puedes comprobar la URL https://check.torproject.org/ en tu navegador, allí te dirá que tu navegador está configurado para usar la red TOR.
Si usted desea usarlo en una distribución que no use systemd, siga las instrucciones en https://github.com/edu4rdshl/tor-router/blob/master/README.md
· Manualmente
Este método se muestra cómo una acción de aprendizaje, entendimiento de cómo funciona y que hace la herramienta Tor-Router. Una vez que tengamos instalado TOR en nuestro sistema, hacemos lo siguiente:
- Creamos una copia de seguridad de nuestro archivo /etc/tor/torrc por si se presenta algún problema
cp /etc/tor/torrc /etc/tor/torrc.backup
- Añadimos las siguientes líneas al final del archivo /etc/tor/torrc
# Seting up TOR for transparent proxy for tor-router VirtualAddrNetwork 10.192.0.0/10 AutomapHostsOnResolve 1 TransPort 9040 DNSPort 5353
man tor
-
Creamos un archivo ejecutable llamado tor-router dentro de /usr/bin con las siguientes líneas
#!/bin/bash # Executable file to create rules for transparent proxy # Destinations you do not want routed through Tor NON_TOR="192.168.1.0/24 192.168.0.0/24" # the UID Tor runs as, change this accordingly for your OS TOR_UID="43" # Tor's TransPort TRANS_PORT="9040" iptables -F iptables -t nat -F iptables -t nat -A OUTPUT -m owner --uid-owner $TOR_UID -j RETURN iptables -t nat -A OUTPUT -p udp --dport 53 -j REDIRECT --to-ports 5353 for NET in $NON_TOR 127.0.0.0/9 127.128.0.0/10; do iptables -t nat -A OUTPUT -d $NET -j RETURN done iptables -t nat -A OUTPUT -p tcp --syn -j REDIRECT --to-ports $TRANS_PORT iptables -A OUTPUT -m state --state ESTABLISHED,RELATED -j ACCEPT for NET in $NON_TOR 127.0.0.0/8; do iptables -A OUTPUT -d $NET -j ACCEPT done iptables -A OUTPUT -m owner --uid-owner $TOR_UID -j ACCEPT iptables -A OUTPUT -j ACCEPT
Damos permisos de ejecución al script creado:
chmod +x /usr/bin/tor-router
Te recomendamos leer el manual de iptables en tu distribución con el comando:man iptables
-
Creamos un servicio de arranque en el directorio /etc/systemd/system que ejecute el script creado anteriormente al inicio del sistema. Lo llamaremos tor-router.service
[Unit] Description=Start rules for transparent tor proxy After=network-online.target [Service] Type=simple ExecStart=/usr/bin/tor-router TimeoutStopSec=180 KillMode=process KillSignal=SIGINT [Install] WantedBy=multi-user.target
-
Habilitamos el inicio automático de TOR y del servicio creado anteriormente y los iniciamos.
systemctl enable tor && systemctl enable tor-router && systemctl start tor && systemctl start tor-router
-
Ahora comprobamos que todo esté funcionando de manera correcta, para revisar si todo nuestro sistema está bajo la red TOR, ejecutamos en nuestra terminal:
curl -s checkip.dyndns.org | sed -e 's/.*Current IP Address: //' -e 's/<.*$//'
La dirección IP obtenida anteriormente debe pertenecer a la red TOR
-
Para revisar desde nuestro navegador:
Basta con abrir la url https://check.torproject.org y debe aparecer esto:
Eso es todo lo que se necesita para realizar la tarea, una vez que todo termine, el tráfico completo de nuestro equipo estará bajo la red TOR brindando completo anonimato y privacidad.
Para comprobar que los DNS que usa su sistema no son los de su ISP, puede visitar https://dnsleaktest.com y realizar el test.
· Deshabilitando el tráfico bajo TOR y las reglas iptables
Para desactivar todo lo realizado anteriormente basta con ejecutar estos comandos desde una terminal cómo root:
iptables -F
systemctl stop tor-router.service
systemctl disable tor-router.service
reboot
Registrate en el foro, síguenos en Facebook, Twitter, unete a nuestro chat en Discord y no olvides compartirnos en las redes sociales. También puede hacernos una donación o comprar nuestros servicios.
Acerca del autor

Especialista en Seguridad Informática. Fundador de Security Hack Labs. Desarrollador de BlackArch Linux y creador de Findomain. Twitter: @edu4rdshl XMPP: edu4rdshl@conversations.im Threema ID: 736WU8VV
- Inicie sesión para enviar comentarios