Correo electrónico y TOR

Introducción

¿Qué es el correo electrónico?

¿Webmail o cliente de correo?

 Configuración de una cuenta de correo anónima con TOR

Instalación de TOR

Configuración del cliente de correo

Folleto de TOR

Actualización para systemd

Introducción

Ahora mismo la preocupación por la privacidad en los movimientos sociales es bastante baja, más de lo que debería.
Utilizamos indiscriminadamente aplicaciones de mensajería instantánea, correos y listas alojados en servidores ajenos que hacen negocio con nuestros datos y comunicaciones, y que proporcionan acceso a estos a los gobiernos.

Esto es así porque tendemos a pensar varias cosas erróneas:

  • «No estoy haciendo nada ilegal» I: ahora no, pero puede que en un futuro sí. Y si llega a ser ilegal van a utilizar los históricos, no solo los datos que recojan desde que sea ilegal. No es plan de decir «ya me preocuparé cuando me tenga que preocupar», hay que preocuparse ya.
  • «No estoy haciendo nada ilegal» II: el problema es que si alguien quiere hacer daño puede conseguir todos los datos por un precio bastante asequible. Las empresas de recolección de datos para publicidad que tenemos instaladas en el móvil (llamadas librerías de monetización) consiguen hacer un perfil muy preciso de nuestra situación  y nuestras costumbres (ver página 24 del siguiente informe: Situación del malware para Android) y su negocio es vender esta información a quién pague por ella.
  • «No pueden espiar a todo el mundo»: sí pueden. El estado actual de la tecnología lo permite. Y permite realizar análisis automáticos de las comunicaciones interceptadas. Hay que olvidar la imagen de alguien que está escuchando y decide si eres objetivo o no, ahora mismo es una máquina que analiza continuamente las comunicaciones y da nombres.

Esto es solo una muestra de las cosas que tendemos a pensar para no hacerlo, que sumado al hecho de que la privacidad requiere un esfuerzo, hacen que no nos molestemos mucho en el tema.

Como es evidente, en esta entrada no voy a hablar de todos los mecanismos que deberíamos tener instalados para procurarnos la mayor privacidad posible (y digo mayor porque el total no existe ni existirá) sino solamente para uno de los más utilizados para transmitir cantidades de información importantes, que es el correo electrónico. En lo referente a la mensajería instantánea se está ocupando el grupo de Autodefensa Digital, que está haciendo un trabajo extraordinario.

¿Qué es el correo electrónico?

El correo electrónico es un sistema de mensajería digital que se realiza a través de servidores concretos. En estos servidores es donde tenemos nuestras cuentas de correo que hemos creado dando nuestros datos. La cantidad de datos que hemos dado dependerá del servidor de correo, aunque los únicos realmente necesarios deberían ser el nombre de la cuenta y la contraseña para acceder a ella. En el caso de gmail hay que dar más datos de los que serían necesarios y además se ocupa de recolectar más datos de los que creemos: desde donde nos conectamos, etc.

Existen servidores de correo que no nos piden ningún dato personal (aunque no ofrecen todas las prestaciones nos da por ejemplo google) y dejan acceder a través de TOR, entre otras opciones de privacidad
Las principales opciones a las que debemos prestar atención son:

  • Permiten cuentas anónimas, sin necesitar más datos que el nombre de usuario y la contraseña.
  • Permiten acceder a través de TOR.
  • Permiten acceso pop3.
    No guardan rastro en las cabeceras del mensaje.
  • Permiten eliminar la cuenta de manera sencilla.

Y siempre conviene prestar atención al país en el que se encuentran los servidores.

Los más usados que tienen estas características son Autistici (servidores repartidos en Noruega, Holanda y Francia), Openmailbox (servidores en Francia), Riseup (servidores en EEUU), RuggedinBox (servidores en Bulgaria), Unseen (servidores en Islandia) Algunos de estos servidores ofrecen además encriptación.

(Una lista más detallada puede verse en http://thesimplecomputer.info/free-webmail-for-better-privacy)
Recuerda que la mayoría de estos servidores sobreviven gracias a donaciones, así que no estaría de más que sí creamos una cuenta en uno de ellos les donásemos algo de vez en cuando.
Aparte de los servidores de correo tradicionales también pueden usarse servidores de correo como Mail2tor o Privat De Mail, que están en un servicio oculto de TOR (algunos de los anteriores también permiten el acceso a través de servicio oculto) aunque presentan algunos inconvenientes que no los hacen recomendables:

  • Mail2tor no permite pop3 (a pesar de que dice que sí)
  • Privat De Mail necesita otra cuenta externa para comunicarnos la configuración de la cuenta que creemos.

También existen proyectos de correo electrónico sin servidores como i2p-Bote, que corre sobre i2p, o ePost. Pero estos proyectos aún son bastante lentos, debido fundamentalmente a que al ser P2P necesitan que haya mucha gente utilizándolos para tener un ancho de banda razonable.
Y el gran problema de estas soluciones es que necesitan tener unos conocimientos algo avanzados para poder utilizarlas

¿Webmail o cliente de correo?

Las etapas básicas de un mensaje de correo electrónico son las siguientes:

  1. El remitente lo escribe y lo envía a su servidor.
  2. El servidor del remitente lo envía al servidor del destinatario, y a veces guarda una copia (gmail lo hace)
  3. El mensaje se queda en el servidor del destinatario esperando a que éste lo lea.

Ahora el destinatario puede acceder al mensaje de dos maneras: con un cliente local o a través del webmail proporcionado por el servidor de correo.

Si accedemos a través de un cliente local podemos configurarlo de tal manera que descargue el mensaje al disco local y lo elimine del servidor, lo cual hace que el mensaje esté fuera de nuestro control el menor tiempo posible.

Si accedemos a través de un webmail el mensaje permanece en el servidor hasta que lo borremos. Es decir, cualquiera que tenga o consiga acceso al servidor puede leer nuestros correos electrónicos.

Creo que no hay que decir que la manera recomendada es la primera.

Uno de los clientes de correo más versátiles que hay actualmente es Thunderbird, que frente a otros clientes ofrece las siguientes ventajas:

  • Es software libre (licencia MPL compatible con GPL)
  • Es multiplataforma.
  • Permite el uso de varias cuentas de correo.

Evidentemente hay otros y cualquier otro puede ser lo que necesitemos. En cualquier caso las instrucciones que vienen a continuación son fácilmente traducibles a otros clientes de correo.

Configuración de una cuenta de correo anónima con TOR

Instalación de TOR

Instalar TOR es bastante sencillo, basta con ir a la página de TOR y seguir las instrucciones (https://www.torproject.org/docs/tor-doc-unix.html.en)
(Al parecer no existe una manera sencilla de utilizar TOR en Windows e iOS para otra cosa que no sea navegar, o no he encontrado la manera. Si alguien la encuentra y lo cuenta en un comentario se lo agradecería)

La única parte de la anonimización que no tratan estas instrucciones de instalación es la parte de la resolución de nombres, que puede ser un agujero de privacidad ya que por defecto no pasan por TOR.
Para que todas las peticiones de de resolución de nombres pasen por TOR hay que hacer los siguientes cambios:

Añadir a /etc/tor/torrc las siguientes líneas:

VirtualAddrNetworkIPv4 10.192.0.0/10
AutomapHostsOnResolve 1
TransPort 9040
DNSPort 53

Estas líneas lo que hacen es que TOR resuelva nombres a través de nuestra máquina (127.0.0.1) Si es una dirección *.onion (servicio oculto) nos da una dirección virtual en el rango 10.192.0.0/10 (hay que cambiar este rango si nuestra red interna tiene direcciones en él) y habilita el puerto 9040 para escuchar las peticiones a ese rango y redirigirlas a la máquina que presta ese servicio.
Tras esto hay que configurar el servidor de nombres del sistema, esto dependerá de como tengamos configurada nuestra red, si por sistema o mediante el gestor de red del escritorio, si es dhcp o es dirección estática.
Si es por sistema tendremos que editar el archivo /etc/network/interfaces y asegurarnos de que en solo existe un servidor de nombres:

dns-nameservers 127.0.0.1

Si es con el gestor de red del escritorio tendremos que arrancarlo y decirle que el servidor de nombres es el 127.0.0.1

Y por último hay que decirle que las peticiones a las direcciones del rango indicado tienen que pasar por el puerto que le hemos indicado a TOR para que las trate:

sudo iptables -t nat -A OUTPUT -p tcp -d 10.192.0.0/10 -j REDIRECT –to-ports 9040

Con esto ya tendríamos instalado el cliente de TOR en nuestro equipo. Se puede configurar el navegador que usamos para que utilice este cliente de TOR para navegar, pero es recomendable descargarse el navegador de TOR (no requiere instalación), ya que está mejor integrado y proporciona mayor seguridad.

El buen funcionamiento de TOR depende también de la cantidad de equipos que estén actuando como nodos de la red. Por defecto TOR se instala solo como cliente, pero si queremos contribuir podemos configurarlo además como nodo (https://www.torproject.org/docs/tor-relay-debian.html.en)

Y como casi todos estos proyectos, TOR sobrevive gracias a donaciones. No estaría de más donar algo de vez en cuando.

Configuración del cliente de correo

Una vez configurado TOR y descargado el navegador utilizamos este para crear la cuenta de correo en el proveedor que hayamos elegido. En las especificaciones del servicio que aparecen en la página del proveedor nos dará los datos para configurar pop3 y smtp (que son los canales de recepción y envío de correo respectivamente)

Entonces abrimos el cliente de correo y en la configuración de la red (en thunderbird esta en Editar->Preferencias->Avanzado->Red y espacio en disco) le indicamos que vamos a utilizar un proxy o servidor socks, del tipo socks5, con la dirección 127.0.0.1 y el puerto 9050.

Si tenemos otras cuentas de correo en gmail o hotmail o yahoo (que es lo normal) hay problemas para acceder a ellas a través de TOR, ya que no lo permiten. Para poder hacerlo hay que indicar que las direcciones de esos servidores se alcanzan sin utilizar el proxy, introduciendo en el campo «No usar proxy para» las URLs .googlemail.com (si tenemos cuenta en gmail), .outlook.com (si tenemos hotmail), .mail.yahoo.com (si tenemos yahoo), etc. (IMPORTANTE: todas empiezan con un punto)

Una vez hecho esto ya podemos configurar nuestra cuenta anónima, proporcionando la información que nos han dado al crearla (en Thunderbird Archivo->Nuevo->Cuenta de correo existente)

Existe una manera más elegante de solucionar el tema de redireccionar algunas URLs a través de TOR y otras no: mediante un archivo .pac (configuración automática de proxy) pero Thunderbird no funciona bien con este tipo de configuración. Si alguien utiliza un cliente de correo que funcione bien con este tipo de configuración puede investigar sobre el tema o preguntar directamente en los comentarios.

Para terminar dejo un enlace a un folleto de TOR que creo que puede resultar aclaratorio.
https://media.torproject.org/misc/2015-03-tor-brochure/tor-brochure-es.pdf

Actualización para systemd

En diversas distribuciones basadas en systemd con las que estoy trabajando la configuración anterior tiene problemas al iniciar el servicio DNS de TOR, ya que algunos kernels (casi todos) no permiten que un proceso escuche en puertos menores de 1024.

La solución consiste en hacer escuchar al DNS de TOR en otro puerto, por ejemplo en el 5333, con lo que a torrc habría que añadirle:

VirtualAddrNetworkIPv4 10.192.0.0/10
AutomapHostsOnResolve 1
TransPort 9040
DNSPort 53

Y cambiar el script de arranque de tor en systemd (/usr/lib/systemd/system/tor.service) dejandolo de esta manera:

[Unit]
Description=Anonymizing Overlay Network
After=network.target

[Service]
User=tor
Type=simple
ExecStart=/usr/bin/tor -f /etc/tor/torrc
ExecReload=/usr/bin/kill -HUP $MAINPID
KillSignal=SIGINT
LimitNOFILE=8192
PrivateDevices=yes
PermissionsStartOnly=true
ExecStartPre=/sbin/iptables -t nat -D OUTPUT -o lo -p udp –dport 53 -j REDIRECT –to-ports 5333
ExecStartPre=/sbin/iptables -t nat -D OUTPUT -p tcp -d 10.192.0.0/10 -j REDIRECT –to-ports 9040
ExecStartPre=/sbin/iptables -t nat -I OUTPUT -o lo -p udp –dport 53 -j REDIRECT –to-ports 5333
ExecStartPre=/sbin/iptables -t nat -I OUTPUT -p tcp -d 10.192.0.0/10 -j REDIRECT –to-ports 9040
ExecStopPost=/sbin/iptables -t nat -D OUTPUT -o lo -p udp –dport 53 -j REDIRECT –to-ports 5333
[Install]
WantedBy=multi-user.target

 

Deja un comentario

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.