本指南將協助您設定 WebTunnel 橋接器,以協助受審查的使用者連線至 Tor 網路。
WebTunnel 是一種可插入傳輸,嘗試模仿基於 HTTPT 的 Web 瀏覽活動。
部署 WebTunnel 橋接節點的要求如下:
1.一組靜態 IPV4(推薦);
- 能夠向網際網路開放 TCP 連接埠(確保 NAT 不造成阻礙);
- 一個自行託管的網站,包含可設定的網頁伺服器(如 NGINX 或 Apache)以及由您管理的網域;
- 一個有效的 TLS 憑證;
- 至少 1 GB 記憶體 RAM(建議 4 GB)以支援 Tor 進程和 WebTunnel 傳輸。
有關係統要求的更多詳細信息,我們建議閱讀 Tor relay requirements 頁面。
部署 WebTunnel 橋接節點須同時設定網頁伺服器與使用此可插拔傳輸的 Tor 橋接。
本指南的第一部分提供了有關配置 Web 伺服器以支援 WebTunnel 的詳細說明。
第二部分中,你將在兩種執行 WebTunnel 橋接的方法之間擇一:使用 Docker,或從原始碼編譯。
請注意,如果您不符合執行 WebTunnel 或 obfs4 橋接器的要求,執行 Snowflake proxy 是捐贈頻寬以協助使用者規避審查的好方法。
網路伺服器配置
步驟1 配置你的網域
如果你已擁有網站網域,可以使用主網域或建立子網域。
在本指南中,WebTunnel 橋接器託管在與您的網站相同的伺服器上,但也可以將其託管在不同的伺服器上。
步驟2.取得有效憑證
如果您的網站沒有 TLS 憑證,您可以使用 acme.sh 來取得,它是一個以 Shell 語言撰寫的 ACME 協定用戶端。
2.1. 安裝 ACME
將 my@example.com 替換為您的電子郵件地址:
$ curl https://get.acme.sh | sh -s email=my@example.com
或
$ wget -O - https://get.acme.sh | sh -s email=my@example.com
2.2. 簽發憑證
將 example.com 換成您的網站網域。
$ ~/.acme.sh/acme.sh --issue --standalone --domain example.com
步驟 3. 安裝 NGINX
若要在單一埠號上與其他內容共存,您應安裝反向代理,例如 NGINX。
安裝 NGINX:
$ sudo apt install nginx
步驟 4. 配置 NGINX
4.1. 產生隨機字串
當客戶端連接到您的 Web 伺服器時,如果使用秘密路徑,它們將被重新導向到您的 WebTunnel 代理程式。
您可以執行以下指令來產生隨機字串:
$ echo $(cat /dev/urandom | tr -cd "qwertyuiopasdfghjklzxcvbnmMNBVCXZLKJHGFDSAQWERTUIOP0987654321"|head -c 24)
4.2. 建立或編輯 NGINX 虛擬主機
建立一個新的虛擬主機文件,例如 /etc/nginx/sites-available/webtunnel-vhost,將流量轉送到 WebTunnel 橋接器。
這是完整的 NGINX vhost with WebTunnel example。
或者,如果您想使用現有的虛擬主機,您只需編輯並向其添加 location {} 區塊即可。
將 $PATH 換成隨機字串。
# NGINX 虛擬主機區塊範例
location = /$PATH {
proxy_pass http://127.0.0.1:15000;
proxy_http_version 1.1;
### 設定 WebSocket 標頭 ###
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
### 設定代理標頭 ###
proxy_set_header Accept-Encoding "";
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
add_header Front-End-Https on;
proxy_redirect off;
access_log off;
error_log /dev/null;
}
4.3. 測試虛擬主機設定並重新載入 NGINX
sudo ln -s /etc/nginx/sites-available/webtunnel-vhost /etc/nginx/sites-enabled/
sudo nginx -t
sudo systemctl reload nginx
第五步 配置TorWebTunnel網橋
恭喜!你已成功設定好網頁伺服器,可將請求代理到你的 Tor 橋接。
現在您必須安裝並設定橋接,以從網頁伺服器接收這些請求。
請遵循本指示的第二部分。
您有兩個可用選項:從 source 編譯 Go 二進位檔案或使用 Docker。