1. 啟用軟體自動更新

保持中繼安全最重要的事情之一是及時安裝安全更新,最好是自動安裝,這樣您就不會忘記它。 請依指示為您的作業系統啟用 automatic software updates

2. 安裝 epel-release

要在 CentOS/RHEL 上安裝 tor 軟體包,您需要先啟用 EPEL 儲存庫的使用。為此,您必須安裝 epel-release 軟體包:

# yum install epel-release

較新版的 CentOS/RHEL 使用 dnf 而非 yum

# dnf install epel-release

若您使用的是較新版本且使用 dnf,請在本設定指南中呼叫 yum 的步驟時,繼續沿用它。

3.配置Tor專案的儲存庫

設定 Tor Project 的 Repository for CentOS/RHEL 基本上是在 /etc/yum.repos.d/Tor.repo 寫入下列內容:

[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. 安裝 Tor

設定好 EPEL 和 Tor 軟體倉庫後,您現在可以安裝套件:

# yum install tor

請注意,當您首次從 EPEL 軟體倉庫安裝套件時,系統會要求您驗證 EPEL 的 GPG 簽署金鑰。 請確保密鑰與 Fedora Project website 上提供的密鑰相符。 這種情況也會在首次從 Tor 的軟體倉庫安裝套件時發生——您必須再次確認金鑰相符。

5. 建置 lyrebird (obfs4proxy) 並將其移至。

嚴重過時的 git 版本可能會使 go get 失敗,因此如果遇到此問題,請嘗試升級到更新的 git 版本。

安裝 golang 套件及其他相依套件:

# yum install git golang policycoreutils-python-utils

現在建立二進位文件,並將其移至正確的目錄:

git clone https://gitlab.torproject.org/tpo/anti-censorship/pluggable-transports/lyrebird
cd lyrebird
make build
sudo cp .//lyrebird /usr/local/bin/
# chcon --reference=/usr/bin/tor /usr/local/bin/lyrebird

6. 編輯 Tor 設定檔(通常位於 /etc/tor/torrc)並將其內容替換為:

RunAsDaemon 1
BridgeRelay 1

# 將“TODO1”替換為您選擇的 Tor 連接埠。  此連接埠必須是外部連接埠
# 可達。  避免使用連接埠 9001,因為它通常與 Tor 和
# 審查員可能正在互聯網上掃描此連接埠。
ORPort TODO1

ServerTransportPlugin obfs4 exec /usr/local/bin/lyrebird

# 將“TODO2”替換為您選擇的 obfs4 連接埠。  該連接埠必須是
# 外部可訪問,且必須與為 ORPort 指定的不同。
# 避免使用連接埠 9001,因為它通常與
# Tor 和審查員可能正在互聯網上掃描此連接埠。
ServerTransportListenAddr obfs4 0.0.0.0:TODO2

# Tor 和 obfs4 之間的本機通訊連接埠。  始終將其設為“自動”。
# “Ext”的意思是“擴展”,而不是“外部”。  不要嘗試設定特定端口
# 號,也不監聽 0.0.0.0。
ExtORPort auto

# 將「<address@email.com>」替換為您的電子郵件地址,以便我們在以下情況下可以與您聯繫
# 你的網橋有問題。  這是可選的,但受到鼓勵。
ContactInfo <address@email.com>

# 為您的橋樑選擇您喜歡的暱稱。  這是可選的。
Nickname PickANickname

不要忘記更改 ORPortServerTransportListenAddrContactInfoNickname 選項。

  • 請注意,Tor 的 OR 端口及其 obfs4 端口都必須可通。 如果您的橋接位於防火牆或 NAT 之後,請確保打開這兩個端口。可利用可達性測試 來查看從網際網路可否訪問您的 obfs4 端口。

7. 重啟 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]

最新版本的 CentOS/RHEL 作業系統附帶了 systemd:

# systemctl enable --now tor
... or restart it if it was running already, so configurations take effect
# systemctl restart tor

如果您使用 CentOS/RHEL 6 等舊版本,則將是:

# service tor enable
# service tor start

8. 監看歷程記錄

要確認您的網橋運行沒有問題,您應該會看到類似這樣的內容(通常在 /var/log/tor/log/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. 最後備註

如果您在設定橋接時遇到問題,請查看 our help section。 如果您的網橋現在正在運行,請查看安裝後註釋