1. 啟用軟體自動更新

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

2.引導pkg

本指南假設我們已經執行了 FreeBSD 的基本安裝,並且只有基本系統。 表示我們尚未安裝任何套件,甚至沒有 pkg 套件管理程式本身(沒有 sudo——我們以 root 執行指令)。

若要啟動並安裝 pkg,請執行以下指令:

# pkg bootstrap
# pkg update -f
2.1.設定 pkg 的建議步驟

為了以「更快的方式」追蹤上游更新,我們建議將 pkg 使用的「季度」分支更改為其「最新」分支。

另外一個步驟是更喜歡使用HTTPS來擷取我們的套件和更新,因此在這裡我們還需要一個額外的套件來幫助我們(ca_root_nss)。

正在安裝ca_root_nss組件:

# pkg install ca_root_nss

我們保留了 pkg 所用的原始設置,但另有一個將覆蓋它的新設置。 所以先建立一個新目錄,然後創建一個配置檔來覆蓋需要的東西。 此配置檔將是 /usr/local/etc/pkg/repos/FreeBSD.conf

建立新目錄:

# mkdir -p /usr/local/etc/pkg/repos

新設定檔 /usr/local/etc/pkg/repos/FreeBSD.conf 應如下所示:

FreeBSD: {
  url: pkg+https://pkg.freebsd.org/${ABI}/latest
}

在確認這些所有的變更後,我們再次更新軟體包列表,並嘗試檢查是否已經有新的更新要套用:

# pkg update -f
# pkg upgrade -y -f

3. 安裝 Tor

您可以選擇安裝穩定版本(建議):

# pkg install tor

或安裝測試發佈版:

# pkg install tor-devel

4. 安裝 obfs4proxy

# pkg install obfs4proxy-tor

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

RunAsDaemon 1
BridgeRelay 1

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

ServerTransportPlugin obfs4 exec /usr/local/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

Log notice file /var/log/tor/notices.log

不要忘記更改 ORPortServerTransportListenAddrContactInfoNickname 選項。

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

  • 您是否使用具有「預設拒絕」策略的 FreeBSD 防火牆?如果是這樣,請確保您的 obfs4proxy 可以透過環回介面與您的 Tor 進程通訊。不要忘記將 Tor 的 ExtORPort 列入白名單。

6. 確保啟用 random_id sysctl 設定

# echo "net.inet.ip.random_id=1" >> /etc/sysctl.conf
# sysctl net.inet.ip.random_id=1

7.啟動tor守護程式並確保它在引導時啟動

# sysrc tor_setuid=YES
# sysrc tor_enable=YES
# service tor start

8. 監看歷程記錄

若要確認橋接運作正常,您應在 /var/log/tor/notices.log 看到類似下列內容:

[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。 如果您的網橋現在正在運行,請查看安裝後註釋