1. 啟用軟體自動更新

保持中繼安全最重要的事情之一是及時安裝安全更新,最好是自動安裝,這樣您就不會忘記它。 按照說明為您的作業系統啟用自動軟體更新

2. 安裝Tor

# pkg_add tor

3.安裝混淆器

# pkg_add obfs4proxy

3.1 琴鳥

由於 obfs4proxy 未維護,您可能需要從原始程式碼建置 lyrebird,這是由 Tor 專案維護的分支。

go 套件是建構依賴項。

# pkg_add go

將儲存庫和 cd 克隆到其中。

$ git clone https://gitlab.torproject.org/tpo/anti-censorship/pluggable-transports/lyrebird.git
$ cd ./lyrebird

(可選)檢查最新版本標籤(例如 lyrebird-X.X.X)。

$ git checkout VERSION_TAG

建立可執行檔並將其安裝在 PATH 上的某個位置。

$ make build
# cp ./lyrebird /usr/local/bin/lyrebird

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

RunAsDaemon 1
BridgeRelay 1

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

ServerTransportPlugin obfs4 exec /usr/local/bin/obfs4proxy
# 或如果使用 Lyrebird:
#  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
DataDirectory /var/tor
User          _tor

不要忘記更改 ORPortServerTransportListenAddrContactInfoNickname 選項。

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

5. 改變 openfiles-maxmaxfiles

預設下,OpenBSD 對程序可開啟檔案數設有較低上限。對 Tor 這類需與每個其他中繼(目前約 7000 個)建立連線的常駐程式,應提高此上限。

將以下部分附加到/etc/login.conf

tor:\
    :openfiles-max=13500:\
    :tc=daemon:

現在相應地更改 _tor 用戶的登入類別:

# usermod -L tor _tor

OpenBSD 也會在 sysctl 變數 kern.maxfiles 中儲存核心層級的檔案描述符限制。

將預設值 7030 提高到 16000:

# echo "kern.maxfiles=16000" >> /etc/sysctl.conf
# sysctl kern.maxfiles=16000

6. 啟用 Tor

# rcctl enable tor
# rcctl start tor

7. 監控日誌(通常在系統日誌中)

要確認您的網橋正在正常運行,您應該看到以下內容:

[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.

8. 最後備註

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