¿Quieres crear un sitio web usando un servidor Nginx y quieres tener también ese sitio web como servicio oculto para usuarios de Tor? Aquí te explico cómo hacerlo en Debian GNU/Linux.
Primero instalamos los siguientes paquetes:
sudo apt install nginx tor
Luego hay que descomentar las siguientes líneas del archivo
/etc/tor/torrc
:
#HiddenServiceDir /var/lib/tor/hidden_service/
#HiddenServicePort 80 127.0.0.1:80
Yo he cambiado el nombre del directorio del servicio oculto a
servicio_oculto
, quedando así:
HiddenServiceDir /var/lib/tor/servicio_oculto/
HiddenServicePort 80 127.0.0.1:80
A continuación, reiniciamos el servicio de Tor:
sudo systemctl restart tor
Al reiniciarse Tor crea el directorio servicio_oculto/
y lo llena con
la URL del servicio oculto (archivo hostname
) y las claves pública y
privada.
Si tenemos tanto Nginx y Tor ejecutándose como servicios y nos metemos
en la dirección que hay en /var/lib/tor/servicio_oculto/hostname
,
podremos ver la página de bienvenida de Nginx.
Por defecto, el sitio web para Nginx se ha de ubicar en la ruta
/var/www/html/
. Así pues, solo tenemos que desarrollar el sitio web en
esa ubicación. No importa que se use la URL de Tor o una URL
convencional, el sitio web es el mismo. Ten en cuenta de que para que
los enlaces a otras páginas de tu sitio web funcionen usando URLs
.onion
es necesario usar URLs relativas.
Extra: añadir cabecera de .onion disponible
Simplemente hay que añadir la siguiente línea add_header
a la parte
del archivo de configuración de Nginx1 que pone location /
:
location / {
# Otras cosas que hay en location /
add_header Onion-Location http://[el_nombre_de_tu_servicio_oculto]/$request_uri;
}
Deberás reemplazar [el_nombre_de_tu_servicio_oculto]
por el nombre que
se encuentra en el archivo /var/lib/tor/servicio_oculto/hostname
,
quedando algo así2:
location / {
add_header Onion-Location http://63xpbju6u6kzge3k5mobwivob2seui4ka26l2iboraw5lxz262brgjad.onion/$request_uri;
}
Comentarios