1. Enable Automatic Software Updates
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. Follow the instructions to enable automatic software updates for your operating system.
2. Install 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
Recent versions of CentOS/RHEL are using dnf
instead of yum
:
# dnf install epel-release
If you are on a recent version that uses dnf
, please keep using it for the following steps where yum
is called on this setup guide.
3. Configure Tor Project's Repository
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. Install Tor
Once you are set with EPEL and the Tor repositories, you are now able to install the package:
# yum install tor
Please note that when you are installing the first package from the EPEL repository you will be asked about verifying the EPEL's GPG signing key. Please ensure the key matches with the one available on the Fedora Project website. This will also happens when installing packages from Tor's repository for the first time - again you must ensure the key matches.
5. Build obfs4proxy and move it into place.
Versiunile foarte depășite ale git-ului pot face ca go get
să eșueze, așa că, dacă vă confruntați cu această problemă, încercați să treceți la o versiune mai recentă de git.
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. Edit your Tor config file, usually located at /etc/tor/torrc
and replace its content with:
RunAsDaemon 1
BridgeRelay 1
# Înlocuiți "TODO1" cu un port Tor, la alegere. Acest port trebuie să fie extern
# accesibil. Evitați portul 9001, deoarece este asociat în mod obișnuit cu Tor și
este posibil ca # cenzorii să scaneze Internetul pentru acest port.
ORPort TODO1
ServerTransportPlugin obfs4 exec /usr/local/bin/obfs4proxy
# Înlocuiți "TODO2" cu portul obfs4, la alegere. Acest port trebuie să fie
# accesibil din exterior și trebuie să fie diferit de cel specificat pentru ORPort.
# Evitați portul 9001 pentru că este asociat în mod obișnuit cu
# Tor și cenzorii pot scana Internetul pentru acest port.
ServerTransportListenAddr obfs4 0.0.0.0:TODO2
# Portul de comunicare locală între Tor și obfs4. Configurați întotdeauna acest lucru pe „auto”.
# "Ext" înseamnă "extins", nu "extern". Nu încercați să setați
# un număr de port specific și nici să ascultați la 0.0.0.0.
ExtORPort auto
# Înlocuiți "<address@email.com>" cu adresa dvs. de e-mail, astfel încât să vă putem contacta dacă
# există probleme cu puntea dvs. Această înlocuire este opțională, dar încurajată.
ContactInfo <address@email.com>
# Alegeți o poreclă care vă place pentru puntea dvs. Aceasta este opțională.
Nickname PickANickname
Nu uitați să schimbați opțiunile ORPort
,ServerTransportListenAddr
, ContactInfo
șiNickname
.
- 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. Restart Tor
sudo semanage port -a -t tor_port_t -p tcp [OR port set earlier, in TODO1]
sudo semanage port -a -t tor_port_t -p tcp [obfs4 port set earlier, in TODO2]
Recent versions os CentOS/RHEL which ship with systemd:
# systemctl enable --now tor
... or restart it if it was running already, so configurations take effect
# systemctl restart tor
Should you use an older release like CentOS/RHEL 6, that will be:
# service tor enable
# service tor start
8. Monitor your logs
Pentru a confirma că puntea dvs. funcționează fără probleme, ar trebui să vedeți ceva de genul (de obicei în /var/log/tor/log
sau /var/log/syslog
):
[notificare] Amprenta cheie - fingerprint - a identității serverului dvs. Tor este '<NICKNAME> <FINGERPRINT>'
[notificare] Amprenta cheie a identității hash a punții dvs. Tor este '<NICKNAME> <HASHED FINGERPRINT>'
[notificare] Transport înregistrat pe server 'obfs4' la '[::]:46396'
[notificare] Tor a deschis un circuit cu succes. Se pare că funcționalitatea clientului este în regulă.
[notificare] Bootstrapped 100%: Done
[notificare] Verificați dacă ORPort <redacted>:3818 este accesibil ... (poate dura până la 20 de minute - căutați mesaje de jurnal care indică succesul)
[notificare] Auto-testarea indică faptul că ORPort-ul dvs. este accesibil din exterior. Excelent. Se publică descriptorul serverului.
9 Final Notes
If you are having trouble setting up your bridge, have a look at our help section. If your bridge is now running, check out the post-install notes.