Crear servicio oculto para sitio web en Nginx (clearnet y darknet)

¿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

Continúa leyendo Crear servicio oculto para sitio web en Nginx (clearnet y darknet)

No más celulares a partir de ahora

Este artículo es una traducción del inglés del artículo «No Cellphones Beyond This Point» publicado por Alyssa Rosenzweig bajo la licencia CC BY-SA 4.0.

Me niego a llevar un celular —para mis confusos amigos en nuestra sociedad obsesionada con la tecnología—, aquí explico por qué. Algunos de vosotros ya me habéis preguntado cuál es mi número para enviarme mensajes. Quizá eras un profesor en una de mis clases pidiéndome que ejecutara algún software privativo en clase. Puede que fueras un familiar, preocupado de que en una situación insegura no fuera capaz de llamar para pedir ayuda.

Hay cuatro capas de razonamiento detrás de mi negativa a tener un celular, a pesar de ser una usuaria activa de Internet. En orden de menor a mayor importancia:

Primero, la electrónica de los celulares es incómoda para mí. Gran parte de mi tiempo frente al ordenador lo empleo en la escritura, la programación y el arte; para mí estas tareas requieren teclados de tamaño completo o tabletas de dibujo. Esta no es una razón ética para evitar teléfonos y tabletas, por supuesto, y reconozco que muchas personas tienen usos más adecuados para los factores de forma pequeños.

Segundo, los usuarios de celulares crean una cultura del celular. En una fracción de la vida de un adulto, los celulares han cambiado desde la inexistencia hasta usarse de forma socialmente aceptable mientras se habla con alguien en la vida real. Esta cultura no es inevitable para la electrónica digital —mucha gente usa la tecnología responsablemente, por lo que les aplaudo—, pero permanece depresivamente usual. Si tuviera que tener un teléfono frente a mi nariz mientras finjo hablar con mis propios amigos, solo seguiría perpetuando la noción de que es un comportamiento correcto. Como temo que pueda convertirme en alguien que usa inadecuadamente la tecnología de esta manera, evito llevar un celular completamente para evitar el riesgo ético.

Tercero, los celulares suponen riesgos graves para la libertad y la privacidad. La amplia mayoría de los teléfonos del mercado ejecutan sistemas operativos privativos, como iOS, y están repletos de software privativo. Asimismo, a diferencia de la mayoría de ordenadores portátiles y de escritorio, muchos de estos sistemas operativos ejecutan comprobaciones de firma. Es decir, es criptográficamente imposible y en muchos casos ilegal reemplazar el sistema por software libre. Esto por sí solo es una razón para evitar tocar estos aparatos.

La situación real es desafortunadamente peor. En la electrónica convencional hay un único chip principal dentro, la UCP [Unidad Central de Procesamiento]. La UCP ejecuta el sistema operativo, como GNU/Linux, y tiene el control total de la máquina. No es de esta forma para celulares; estos aparatos tienen dos chips principales —la UCP y la banda base—. La primera tiene el conjunto habitual de problemas de libertad; la última es una caja negra conectada a través de Internet con un conjunto de capacidades espeluznante. Como mínimo, debido al diseño de las redes telefónicas, en cualquier momento en que el teléfono está conectado a la red (es decir, la banda base está en línea), la ubicación del usuario puede ser rastreada triangulando la señal de las torres telefónicas. El riesgo es ya inaceptable para muchas personas. Las operaciones de telefonía tradicionales son vulnerables a la vigilancia y a la manipulación, al no estar cifrados ni los mensajes ni las llamadas. Y, para colmo, pocos teléfonos proporcionan un aislamiento aceptable de la banda base. Es decir, la UCP, que podría ejecutar software libre, no controla la banda base, lo cual a efectos prácticos hace ilegal ejecutar software libre en los Estados Unidos. Más bien, en muchos casos, la banda base controla la UCP. No importa si se usa mensajería encriptada sobre XMPP si la banda base puede simplemente tomar una captura sin el conocimiento ni el consentimiento del sistema operativo del lado de la UCP. Alternativamente, de nuevo dependiendo de cómo esté la banda base conectada al resto del sistema, puede tener la capacidad de activar remotamente el micrófono y la cámara. 33 años después, un mundo en el que cada persona lleva un celular supera las pesadillas de George Orwell. Puede que no tengas «nada que esconder», pero yo al menos todavía me preocupo por mi privacidad. Los celulares son espeluznantes. No contéis conmigo.

Finalmente, ante las graves implicaciones para la sociedad y la libertad, me niego a perpetuar este sistema. Podría decidir llevar un celular de todas formas, decidiendo que como una persona aburrida puedo sacrificar la libertad en nombre de la instantáneamente gratificante conveniencia. Pero al ser complaciente, solamente aumentaría el tamaño del problema, una pesada carga ética al usar el celular contribuye al efecto de red, como el nombre sugiere.

Si tuviera mi teléfono en frente de otros, estaría mostrando que «los celulares están bien». Si alguien me tiene como ejemplo ético, puede que ese alguien siguiera usando un celular.

Si dejara que mis amigos me enviaran mensajes de texto en vez de usar medios más éticos, estaría señalando que «enviar mensajes de texto está bien» y «es razonable esperar que las personas se envíen mensajes de texto». Si permanecieran pasivos ante la ética y necesitaran llevar un teléfono, esto podría empujarles a preservarlo.

Si usara un teléfono para actividades en clase, estaría indicando que «los estudiantes del siglo 21 deberían tener un teléfono». Preferiría ser la última resistencia en la clase para recordarles que esta no es una asunción ética.

Si recibo una mirada desconcertada de mis conocidos, confidentes y profesores, ahora tengo la oportunidad de educarles acerca del software libre y la privacidad. Pocas personas son conscientes de los peligros de estos «aparatos de vigilancia portables» como escribiría Richard Stallman. Estos «momentos extraños» son oportunidades perfectas para ayudarles a tomar una decisión más informada.

Al llevar un celular estaría perpetuando algo malvado. Al negarme a llevar uno, opongo resistencia y hago algo bueno activamente.

Bueno, ¿en vez de usar un celular, cuáles son mis alternativas?

Para la mayoría de tareas digitales, incluida la escritura de esta publicación, uso un portátil que ejecuta software libre. Además, ¡para conectarme a Internet, uso una tarjeta de Wi-Fi que ejecuta firmware libre!

Para hablar con mis amigos, uso protocolos descentralizados y de especificaciones libres cuando es posible. En concreto, estoy disponible en correo electrónico, XMPP y Mastodon. En algunos casos en los que esto no es posible debido al efecto de red, uso sistemas centralizados libres como IRC. En ocasiones, uso sistemas privativos a los que se les ha aplicado la ingeniería inversa para su uso con software libre, como Discord [el proyecto de ingeniería inversa al que enlazaba ya no existe]. De ser posible, me cubro de capas de encriptación implementadas con software libre, como GPG y OTR, para una protección extra contra amenazas de privacidad. Si la privacidad de la ubicación es un problema, me conectaré a través de Tor. Cualquiera de estas medidas es un paso importante más allá de las llamadas de teléfono, mensajería de texto, WhatsApp o Snapchat. Todas ellas juntas te protegeran de la mayoría de adversarios.

Para conectarme cuando estoy lejos de casa, busco redes Wi-Fi públicas, que pueden hacerse seguras con cifrado y con Tor. Si esto no es una opción, puede que necesite preguntar alguien para que me preste sus electrónicos —esto es desgraciado, pero mientras que el efecto de red está en juego, es éticamente aceptable explotarlo—. La mayoría del tiempo evitaré conectarme a Internet fuera de casa de todas formas; ¡soy más productiva desconectada!

Así que, sí, puedo vivir sin un celular. No es siempre conveniente, pero la productividad, la libertad y el comportamiento ético siempre prevalecen sobre la conveniencia.

Os animo a hacer lo mismo.

Recordar URLs .onion

Recordar servicios ocultos es complicado, ya que tienen muchos caracteres aleatorios y son largos, como http://duskgytldkxiuqc6.onion/. Pronto será aún más complicado, ya que las URLs se hacen más largas para evitar problemas de privacidad. ¿Cómo podemos recordar estas URLs tan extrañas?

Continúa leyendo Recordar URLs .onion

Instalar y actualizar Tor Browser de forma sencilla

Tor Browser es un navegador que contiene todo lo necesario para navegar por Internet de forma anónima.

Instalar Tor Browser es bastante sencillo: basta con descargarlo de la página oficial y ejecutar el lanzador Tor Browser (es el archivo que se encuentra dentro del directorio que obtienes tras descargar y descomprimir Tor Browser). Sin embargo, actualizarlo no lo es tanto, puesto que tienes que volver a descargarlo de nuevo cada vez que aparece una nueva versión.

Para solucionar este problema, Micah Lee creó Tor Browser Launcher. Gracias a este programa se puede instalar y actualizar Tor Browser con el gestor de paquetes de tu distribución de GNU/Linux. Existen paquetes para Ubuntu, Debian y Fedora, según dice el README del proyecto.

Si siempre quieres tener la última versión del paquete torbrowser-launcher antes de que tu distribución la tenga, puedes ejecutar las siguientes instrucciones:

sudo add-apt-repository ppa:micahflee/ppa
sudo apt-get update
sudo apt-get install torbrowser-launcher

Con estas instrucciones se añade el PPA necesario, se actualiza la lista de repositorios y se instala el paquete torbrowser-launcher.

Tras la instalación debe aparecer Tor Browser en el menú de inicio o lanzador de aplicaciones. Desde ahí podrás ejecutar Tor Browser cómodamente. Si lo prefieres, también puedes ejecutar torbrowser-launcher desde la terminal.