1. Habilita Actualizaciones Automáticas de Software
One of the most important things to keep your relay secure is to install security updates timely and ideally automatically so you can not forget about it. Sigue las instrucciones para habilitar actualizaciones automáticas de software para tu sistema operativo.
2. Instala epel-release
To install the tor
package on CentOS/RHEL, you need to enable the use of the EPEL Repository first. To do so, you must install the epel-release
package:
# yum install epel-release
Versiones recientes de CentOS/RHEL están usando dnf
en vez de yum
:
# dnf install epel-release
Si estás sobre una versión reciente que usa dnf
, por favor sigue usándola para los siguientes pasos, donde yum
sea llamado en esta guía de configuración.
3. Configura el Repositorio del Tor Project
Configuring the Tor Project's Repository for CentOS/RHEL consists basically on setting up /etc/yum.repos.d/Tor.repo
with the following content:
[tor]
name=Tor for Enterprise Linux $releasever - $basearch
baseurl=https://rpm.torproject.org/centos/$releasever/$basearch
enabled=1
gpgcheck=1
gpgkey=https://rpm.torproject.org/centos/public_gpg.key
cost=100
4. Instala Tor
Una vez que hayas configurado los repositorios de EPEL y de Tor, ya estás habilitado para instalar el paquete:
# yum install tor
Ten en cuenta que cuando instales el primer paquete desde el repositorio EPEL, se te solicitará verificar la clave de firma GPG de EPEL. Por favor asegúrate de que la clave coincida con la que está disponible en el sitio web del Fedora Project. This will also happens when installing packages from Tor's repository for the first time - again you must ensure the key matches.
5. Compila obfs4proxy y muévelo a su lugar.
Versiones muy desactualizadas de git pueden hacer que go get
falle, por lo que intenta actualizar a una versión más reciente de git si te estás encontrando con este problema.
Install the golang package and other dependencies:
# yum install git golang policycoreutils-python-utils
Now build the binary, and move it to a proper directory:
export GOPATH='mktemp -d'
go get gitlab.com/yawning/obfs4.git/obfs4proxy
sudo cp $GOPATH/bin/obfs4proxy /usr/local/bin/
# chcon --reference=/usr/bin/tor /usr/local/bin/obfs4proxy
6. Edita tu archivo de configuración Tor, usualmente ubicado en /etc/tor/torrc
, y reemplaza su contenido con:
RunAsDaemon 1
BridgeRelay 1
# Reemplaza "TODO1" con un puerto Tor de tu elección. Este puerto debe ser externamente
# alcanzable. Evita el puerto 9001, porque comúnmente está asociado con Tor, y
# los censores podrían estar escaneando Internet buscando este puerto.
ORPort TODO1
ServerTransportPlugin obfs4 exec /usr/local/bin/obfs4proxy
# Reemplaza "TODO2" con un puerto obfs4 de tu elección. Este puerto debe ser
# alcanzable desde el exterior, y diferente del especificado para ORPort.
# Evita el puerto 9001, porque comúnmente está asociado con
# Tor, y los censores podrían estar escaneando Internet por el mismo.
ServerTransportListenAddr obfs4 0.0.0.0:TODO2
# Puerto de comunicación local entre Tor y obfs4. Siempre ajústalo a "auto".
# "Ext" significa "extendido", no "externo". No intentes establecer un puerto específico
# número de puerto específico, ni escuches en 0.0.0.0.
ExtORPort auto
# Reemplaza "<address@email.com>" con tu dirección de correo electrónico, de manera que podamos contactarte si
# hay problemas con tu puente. Esto es opcional, pero te alentamos a que lo hagas.
ContactInfo <address@email.com>
# Elige un sobrenombre que te guste para tu puente. Esto es opcional.
Nickname PickANickname
No olvides cambiar las opciones ORPort
, ServerTransportListenAddr
, ContactInfo
, y Nickname
.
- Note that both Tor's OR port and its obfs4 port must be reachable. If your bridge is behind a firewall or NAT, make sure to open both ports. You can use our reachability test to see if your obfs4 port is reachable from the Internet.
7. Reinicia Tor
sudo semanage port -a -t tor_port_t -p tcp [puerto OR, establecido con anterioridad en TODO1]
sudo semanage port -a -t tor_port_t -p tcp [puerto obfs4, establecido con anterioridad en TODO2]
Versiones recientes de CentOS/RHEL que vienen con systemd:
# systemctl enable --now tor
... or restart it if it was running already, so configurations take effect
# systemctl restart tor
En caso que usaras una versión más vieja, como CentOS/RHEL 6, eso será:
# service tor enable
# service tor start
8. Monitorea tus registros
Para confirmar que tu puente está corriendo sin problemas, deberías ver algo como esto (usualmente en /var/log/tor/log
o /var/log/syslog
):
[notice] Your Tor server's identity key fingerprint is '<NICKNAME> <FINGERPRINT>'
[notice] Your Tor bridge's hashed identity key fingerprint is '<NICKNAME> <HASHED FINGERPRINT>'
[notice] Registered server transport 'obfs4' at '[::]:46396'
[notice] Tor has successfully opened a circuit. Looks like client functionality is working.
[notice] Bootstrapped 100%: Done
[notice] Now checking whether ORPort <redacted>:3818 is reachable... (this may take up to 20 minutes -- look for log messages indicating success)
[notice] Self-testing indicates your ORPort is reachable from the outside. Excellent. Publishing server descriptor.
9. Notas Finales
Si estás teniendo problemas para configurar tu puente, dale un vistazo a nuestra sección de ayuda. Si tu puente ahora se está ejecutando, comprueba las notas postinstalación.