1. 啟用軟體自動更新
保持中繼安全最重要的事情之一是及時安裝安全更新,最好是自動安裝,這樣您就不會忘記它。
依照說明為您的作業系統啟用 automatic software updates。
2. 設置 Tor Project 代碼存放庫
為 Fedora 配置 Tor 專案的儲存庫基本上包括使用以下內容設定 /etc/yum.repos.d/Tor.repo :
[tor]
name=Tor for Fedora $releasever - $basearch
baseurl=https://rpm.torproject.org/fedora/$releasever/$basearch
enabled=1
gpgcheck=1
gpgkey=https://rpm.torproject.org/fedora/public_gpg.key
cost=100
有關它的更多資訊可以找到here。
3. 安裝 tor
一旦您配置了 Tor 儲存庫,您現在就可以安裝該軟體包了:
# dnf install tor
4. 安裝 obfs4proxy
我們在這裡選擇安裝並使用 obfs4 作為可插拔傳輸,因此我們將安裝 obfs4proxy。
與其他Linux發行版不同的是,Fedora提供了一個我們可以使用的binary package。它從 Fedora 33 開始可用。
套件名稱為 obfs4,以下是安裝所需的全部指令:
# dnf install obfs4
有關從來源安裝或建置 lyrebird 的更多信息,請參閱其 official documentation。
5. 編輯 Tor 設定檔(通常位於 /etc/tor/torrc)並將其內容替換為:
RunAsDaemon 1
BridgeRelay 1
# 將“TODO1”替換為您選擇的 Tor 連接埠。 此連接埠必須是外部連接埠
# 可達。 避免使用連接埠 9001,因為它通常與 Tor 和
# 審查員可能正在互聯網上掃描此連接埠。
ORPort TODO1
ServerTransportPlugin obfs4 exec /usr/bin/obfs4proxy
# 將“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
不要忘記更改 ORPort、ServerTransportListenAddr、ContactInfo 和 Nickname 選項。
- 請注意,Tor 的 OR 端口及其 obfs4 端口都必須可通。 如果您的橋接位於防火牆或 NAT 之後,請確保打開這兩個端口。可利用可達性測試 來查看從網際網路可否訪問您的 obfs4 端口。
6. 停用 SeLinux
請檢查 SeLinux 是否設為「Enforcing」:
# getenforce
若設為 Enforcing,請將 Status 改為 Permissive:
# setenforce 0
若要使變更永久生效:
# nano /etc/selinux/config
並將 SELINUX=enforcing 變更為 SELINUX=permissive。
7. 在Fedora防火牆中開啟端口
針對您在 torrc 檔案中選擇的 obfs4 和 ORPort:
# firewall-cmd --add-port XXX/tcp --permanent
對兩個連接埠執行此操作後,請執行:
# firewall-cmd --reload
(可選)配置 systemd 以允許在特權連接埠上綁定 obfs4
若您決定使用小於 1024 的固定 obfs4 埠(例如 80 或 443),需設定 systemd 並賦予 obfs4 CAP_NET_BIND_SERVICE 能力,讓非 root 使用者也能綁定該埠:
# setcap cap_net_bind_service=+ep /usr/bin/obfs4proxy
8. 重新啟動 Tor
# systemctl enable --now tor
9.監控你的日誌
要確認您的網橋運行沒有問題,您應該會看到類似這樣的內容(通常在 /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.
10. 最後的註釋
如果您在設定橋接時遇到問題,請查看 our help section。
如果您的網橋現在正在運行,請查看安裝後註釋。