Asumimos que ya has leído la guía de repetidores completa. Esta subpágina es para operadores que quieren activar la salida en sus repetidores.

Es recomendado que configures repetidores de salida en servidores dedicados a este propósito. No es recomendado instalar repetidores de salida Tor en servidores que también necesitas para otros servicios. No mezcles tu propio tráfico con el de tu repetidor de salida.

DNS Inverso y registro WHOIS

Antes de convertir tu repetidor sin salida en uno que sí la tiene, asegúrate de haber configurado un registro de DNS inverso (PTR) para hacer más obvio que este es un repetidor de salida tor. Algo como "tor-exit" por nombre es un buen comienzo.

Si tu proveedor lo ofrece, asegúrate que tu registro WHOIS contiene indicaciones claras que este es un repetidor de salida Tor.

Usa un nombre de dominio que te pertenezca. Definitivamente, no uses 'torproject.org' como nombre de dominio para tu DNS inverso.

Página HTML de Aviso de Nodo de Salida

Para hacer aún más obvio que este es un repetidor de salida Tor, deberías servir una página HTML de aviso de salida Tor. Tor puede hacer eso por vos: si tu DirPort está en el puerto TCP 80, puedes hacer uso de la característica de tor DirPortFrontPage para mostrar un archivo HTML en ese puerto. Este archivo va a ser mostrado a cualquiera que dirija su navegador hacia la dirección IP de tu repetidor de salida Tor.

DirPort 80
DirPortFrontPage /path/to/html/file

Ofrecemos una muestra de archivo HTML de aviso de salida Tor, pero puede que quieras ajustarla a tus necesidades: https://gitweb.torproject.org/tor.git/plain/contrib/operator-tools/tor-exit-notice.html

He aquí algunos consejos más para correr un repetidor de salida confiable: https://blog.torproject.org/tips-running-exit-node

Política de Salida

Definir la política de salida es una de las partes más importantes de la configuración de un repetidor de salida. La política de salida define qué puertos de destino estás dispuesto a redirigir. Esto tiene un impacto en la cantidad de correos electrónicos de abuso que recibirás (menos puertos significan menos correos electrónicos de abuso, pero un repetidor de salida permitiendo solo uno pocos puertos también es menos útil). Si quieres ser un repetidor de salida útil debes permitir al menos los puertos de destino 80 y 443.

Como nuevo repetidor de salida - especialmente si eres nuevo para quien te aloja -, es bueno comenzar con una política de salida reducida (para disminuir la cantidad de correos electrónicos de abuso) y luego expandirla en la medida en que ganas más experiencia. La polítitca de salida reducida puede ser encontrada en la página wiki PolíticadeSalidaReducida.

Para tornarse en un repetidor se salida, cambia ExitRelay de 0 a 1 en tu archivo de configuración torrc, y vuelve a arrancar al demonio tor.

ExitRelay 1

DNS en Repetidores de Salida

A diferencia de otros tipos de repetidores, los de salida también hacen resolución DNS para clientes Tor. La resolución DNS en los repetidores de salida es crucial para los clientes Tor, y debiera ser confiable y rápida mediante el uso de cacheo.

  • La resolución DNS puede tener un significativo impacto sobre el desempeño y confiabilidad provistos por tu repetidor de salida.
  • No uses ninguno de los grandes proveedores de resolucióin DNS (Google, OpenDNS, Quad9, Cloudflare, 4.2.2.1-6) como tu primario o para contingencias, para evitar centralización.
  • Recomendamos correr un software de resolución DNS con cacheo local y validación DNSSEC, sin usar ningún redirigidor (instrucciones específicas siguen abajo, para varios sistemas operativos).
    • Si quieres añadir una segunda instancia de resolución DNS como contingencia para tu configuración /etc/resolv.conf, elige una dentro de tu Sistema Autónomo, y asegúrate de que no sea tu primera entrada en ese archivo (la primera entrada debiera ser tu instancia de resolución local).
    • Si una instancia de resolución local, como por ejemplo Unbound, no es una opción para ti, usa una que tu proveedor corra en el mismo Sistema Autónomo (para averiguar si una dirección IP está en el mismo AS que tu repetidor, puedes encontrarlo usando bgp.he.net).
  • Evita agregar más de dos instancias de resolución a tu archivo /etc/resolv.conf, para limitar la exposición a nivel AS de solicitudes DNS.

Hay múltiples opciones para software de servidores DNS. Unbound se ha tornado popular, pero siéntete libre de usar cualquier otro con el que estés confortable. Al elegir tu software de resolución DNS, asegúrate que soporta validación DNSSEC y minimización QNAME (RFC7816). Instálalo con el gestor de paquetes de tu sistema operativo, para asegurarte que se actualiza automáticamente.

Al usar tu propia instancia de resolución DNS, eres menos vulnerable a la censura basada en el mismo, la cual puede ser impuesta por la instancia de resolución un nivel por encima tuyo.

Debajo están las instrucciones sobre cómo instalar y configurar Unbound – un software de resolución con validación DNSSEC y cacheo – en tu repetidor de salida. Unbound tiene muchas perillas de configuración y sintonizado, pero mantenemos a estas instrucciones simples y cortas; la configuración básica será adecuada para la mayoría de los operadores.

Después de conmutar a unbound, verifica que funcione como es esperado resolviendo un nombre de equipo válido. Si no funciona, puedes restaurar tu viejo archivo resolv.conf.

Debian/Ubuntu

Los siguientes tres comandos instalan unbound, hacen copia de respaldo de tu configuración DNS, y le dicen al sistema que use el unbound local:

apt install unbound
cp /etc/resolv.conf /etc/resolv.conf.backup
echo nameserver 127.0.0.1 > /etc/resolv.conf

Para evitar cambios no deseados en la configuración (por ejemplo por el cliente DHCP):

chattr +i /etc/resolv.conf

La configuración de Debian ciene con minimización QNAME (RFC7816) habilitada por defecto, por lo que no necesitas hacerlo explícitamente. La instancia de resolución unbound que recién instalaste también hace validación DNSSEC.

CentOS/RHEL

Instala el paquete unbound:

yum install unbound

en /etc/unbound/unbound.conf reeplaza la línea

# qname-minimisation: no

con:

qname-minimisation: yes

habilita y arranca unbound:

systemctl enable unbound
systemctl start unbound

Dile al sistema que use el servidor local unbound:

cp /etc/resolv.conf /etc/resolv.conf.backup
echo nameserver 127.0.0.1 > /etc/resolv.conf

Para evitar cambios no deseados en la configuración (por ejemplo por el cliente DHCP):

chattr +i /etc/resolv.conf

FreeBSD

FreeBSD viene con unbound en el sistema base, pero esta instancia sigue al primer nivel de resolución por encima tuyo más cercanamente, por lo que instalamos el paquete unbound:

pkg install unbound

Reeplaza el contenido en /usr/local/etc/unbound/unbound.conf con las siguientes líneas:

servidor:
    verbosity: 1
    qname-minimisation: yes

habilita y arranca el servicio unbound:

sysrc unbound_enable=YES
service unbound start

Dile al sistema que use el servidor local unbound:

cp /etc/resolv.conf /etc/resolv.conf.backup
echo nameserver 127.0.0.1 > /etc/resolv.conf

Para evitar cambios no deseados en la configuración (por ejemplo por el cliente DHCP):

chflags schg /etc/resolv.conf