La red Tor es una pieza de software revolucionaria. Con un solo programa, ahora es posible navegar y ver la Web de forma anónima. Esto convierte a Tor en una herramienta esencial para los usuarios que desean preservar su privacidad cuando navegan por un sitio web. También es posible usar Tor para alojar un servidor web local en línea para que sea increíblemente útil para los usuarios conscientes de la privacidad que desean compartir información públicamente sin revelarse.
Nota: descubra primero qué son Tor y enrutamiento cebolla antes de continuar.
¿Por qué alojar su sitio web sobre Tor?
Una de las mayores ventajas del alojamiento sobre Tor es que su conexión también pasa por nodos intermediarios similares al Navegador Tor. Un visitante que visite su sitio web no podrá saber desde dónde lo está alojando.
Aparte de eso, tampoco necesita reenviar ningún puerto para que su sitio web exclusivo de Tor funcione. Esto hace que el alojamiento sea simple y accesible incluso en redes muy restringidas. Por ejemplo, una máquina con una red NAT de nivel de operador aún puede publicar un sitio web directamente a través de Tor.
Requisitos
Antes de poder instalar tanto Nginx como Tor, primero debe asegurarse de tener listos los siguientes recursos:
- Una conexión a Internet que no restringe Tor para las solicitudes entrantes y salientes. Esto le permite transmitir su sitio web a través de la red Tor.
- Una máquina que puede manejar el sitio web que está alojando. En la mayoría de los casos, una computadora de escritorio de doble núcleo con 4 GB de RAM debería ser suficiente para un sitio web básico.
- Acceso raíz a su máquina de alojamiento, ya que la configuración de Tor requiere que acceda a los archivos del sistema.
La siguiente imagen muestra cómo alojar un sitio web exclusivo de Nginx Tor en una máquina con Ubuntu 22.04 LTS.
Instalación de Nginx y Tor
Abre una terminal. Escriba el siguiente comando para instalar Nginx y Tor:
sudo apt install nginx tor wget
Configuración del cortafuegos
Una vez que haya instalado ambos paquetes en su sistema, puede proteger su servidor configurando su firewall para que solo acepte conexiones entrantes de la red Tor escribiendo los siguientes comandos en la terminal:
sudo iptables -I INPUT -m state --state NEW -p tcp --dport 80 -j ACCEPT sudo iptables -I INPUT -m state --state NEW -p tcp --dport 443 -j ACCEPT sudo iptables -I INPUT -m state --state NEW -p tcp --dport 9050 -j ACCEPT
Los dos primeros comandos abren los puertos HTTP y HTTPS en su sistema, mientras que el último comando abre explícitamente el puerto SOCKS para la red Tor. Este enfoque garantiza que Tor podrá redirigir correctamente cualquier tráfico que vaya a su máquina.
Crear un servicio Tor para su sitio web
A continuación, debe crear una entrada de servicio oculta para su servidor web. Esta es una configuración específica del servicio que le permitirá transmitir en la red Tor.
Primero, cambie a su cuenta raíz. Puede hacerlo ejecutando el siguiente comando:
sudo -i
Una vez que esté dentro de la raíz, cree su servicio oculto editando el archivo «/etc/tor/torrc». En mi caso, estoy abriendo este archivo a través de GNU Nano.
nano /etc/tor/torrc
Busque la sección «servicios de ubicación oculta» presionando Ctrl + W, luego escriba «ubicación oculta».
Verá un par de ejemplos que demuestran cómo crear su propio servicio oculto Tor. Sin embargo, en su mayor parte, solo necesita configurar dos opciones: HiddenServiceDir
y HiddenServicePort
.
Él HiddenServiceDir
La opción le dice a Tor dónde debe guardar los archivos de configuración para su servicio oculto. Él HiddenServicePort
La opción le dice a Tor cómo debe redirigir cualquier solicitud a su servicio oculto.
Las siguientes líneas de código crearán un nuevo servicio oculto para su servidor web:
HiddenServiceDir /var/lib/tor/nginx-tor-service/ HiddenServicePort 80 127.0.0.1:80 HiddenServicePort 443 127.0.0.1:443
Vuelva a cargar el demonio Tor para aplicar su nueva configuración ejecutando los siguientes comandos:
systemctl enable tor systemctl restart tor
Propina: aprende a usar Tor con tu conexión VPN.
Crear un sitio web simple usando Nginx
Una vez que un servicio oculto de Tor esté en funcionamiento, comience a configurar su servidor web. Cree un nuevo archivo de configuración a través de la touch
dominio:
sudo touch /etc/nginx/sites-available/nginx-tor-service
Edite su nuevo archivo de configuración de Nginx como un servidor web básico. Por ejemplo, el siguiente bloque de código implementará un servidor web simple en el puerto 80:
server { listen 80 default_server; listen [::]:80 default_server; root /var/www/html; server_name 4tth4kzmipldb5elklravakdwlnte3ck6m5ahl73nfbe6ni67zmyvxyd.onion; location / { try_files $uri $uri/ =404; } }
- Los dos
listen
Las variables establecen tanto los puertos como el host que debe escuchar esta configuración de servidor. En este caso, Nginx escucha en el puerto 80 tanto en IPv4 como en IPv6. - Él
root
La variable establece la ubicación donde Nginx buscará los archivos en su servidor web. - Él
server_name
La variable contiene el nombre de dominio de su servidor. Encuéntralo corriendosudo less /var/lib/tor/nginx-tor-service/hostname
. - Él
location
La variable contiene funciones sobre cómo Nginx trata los archivos en la raíz de su sitio web. En este ejemplo, solo establece el error 404 para los archivos faltantes.
Cree un enlace simbólico para su nuevo archivo de configuración a «/etc/nginx/sites-enabled».
sudo ln -s /etc/nginx/sites-available/nginx-tor-service /etc/nginx/sites-enabled/
Por último, habilite su nuevo sitio web reiniciando Nginx:
sudo systemctl enable nginx sudo systemctl restart nginx
Accediendo a su sitio web a través de Tor
Con Tor y Nginx en funcionamiento, verifique si se puede acceder a su sitio web desde la red Tor. (¿Necesita encontrar más sitios web en la web oscura? Consulte estos motores de búsqueda). Primero, descargue el último binario del navegador Tor:
wget
Extraiga los archivos del navegador en el directorio actual ejecutando el siguiente comando:
tar xvf ./tor-browser-linux64-11.5.7_en-US.tar.xz cd ./tor-browser_en-US
Además, asegúrese de que el binario del navegador Tor tenga los bits de ejecución correctos:
sudo chmod +x ./start-tor-browser.desktop
Ejecute e instale Tor Browser en su máquina ejecutando el siguiente comando:
./start-tor-browser.desktop --register-app
Por último, navegue hasta su nuevo sitio web Tor escribiendo su nombre de dominio en la barra de direcciones.
Preguntas frecuentes
¿Es posible alojar un servidor de juegos usando Tor?
Sí, pero ejecutar un servidor de juegos Tor dará como resultado una experiencia de juego muy pobre. Por ejemplo, ejecutar un servidor Minetest sobre Tor tendrá una latencia entre 1000 y 5000 milisegundos.
Si bien hay formas de acelerar sus conexiones Tor, los desarrolladores de Tor no diseñaron la red para que funcione en aplicaciones de baja latencia. Por eso, Tor es principalmente útil para publicar páginas web y aplicaciones que no dependen de una baja latencia.
Estoy tratando de alojar un sitio web FTP pero no puedo acceder a él a través de Tor.
Lo más probable es que este problema se deba a una configuración faltante en el archivo «/etc/tor/torrc». Para alojar correctamente un nuevo servicio en Tor, asegúrese de que los puertos adecuados estén abiertos tanto en su firewall como en torrc.
Por ejemplo, agregue HiddenServicePort 21 127.0.0.1:21
y HiddenServicePort 22 127.0.0.1:22
para crear un puerto FTP y SFTP abierto en su máquina.
¿Es posible alojar mi sitio web sobre SSL en Tor?
Es importante tener en cuenta que SSL no es un requisito estricto al proteger su sitio web Tor. De forma predeterminada, Tor ya cifra sus conexiones tan pronto como carga el navegador Tor, por lo que cualquier sitio web que visite en Tor está cifrado de extremo a extremo.
Si lo desea, obtenga un certificado SSL para su sitio web Tor, aunque el proceso puede ser complicado, ya que solo hay un puñado de autoridades de certificación que emiten activamente TLS para dominios .onion.
Credito de imagen: Unsplash. Todas las alteraciones y capturas de pantalla por Ramces Red.
Danos tu opinión