Full-Node

無法創建私有 V3 洋蔥服務

  • January 4, 2022

我正在嘗試保護在我的 VPS 節點上執行的洋蔥服務。我按照官方指南本指南的步驟進行操作。一切正常,直到我必須修改本地機器上的 torrc 文件。

在 tor 指南中它說:

在客戶端:要以客戶端身份訪問具有客戶端授權的版本 3 洋蔥服務,請確保您已ClientOnionAuthDirtorrc. 例如,將此行添加到/etc/tor/torrc

ClientOnionAuthDir /var/lib/tor/onion_auth

然後,在目錄中,.auth_private為這個key對應的洋蔥服務創建一個文件。[…]然後重新啟動tor,您應該能夠連接到洋蔥服務地址。

但是,我無法重新啟動 tor… 我將這一行添加ClientOnionAuthDir /var/lib/tor/onion_auth到 torrc 文件的末尾(是對的還是我必須把它放在其他地方?)。

當我嘗試重新啟動 tor 時,出現以下錯誤:

Job for tor.service failed because the control process exited with error code.
See "systemctl status tor.service" and "journalctl -xeu tor.service" for details.

當我查看時,systemctl status tor.service我得到以下資訊:

× tor.service - Anonymizing overlay network for TCP
    Loaded: loaded (/usr/lib/systemd/system/tor.service; enabled; vendor pres>
    Active: failed (Result: exit-code) since XXX XXXX-XX-XX XX:XX:XX XXX; 2mi>
   Process: 67134 ExecStartPre=/usr/bin/tor -f /etc/tor/torrc --verify-config>
       CPU: 21ms

XXXXXXXXXXXXXXXX systemd[1]: tor.service: Scheduled restart job, restart>
XXXXXXXXXXXXXXXX systemd[1]: Stopped Anonymizing overlay network for TCP.
XXXXXXXXXXXXXXXX systemd[1]: tor.service: Start request repeated too qui>
XXXXXXXXXXXXXXXX systemd[1]: tor.service: Failed with result 'exit-code'.
XXXXXXXXXXXXXXXX systemd[1]: Failed to start Anonymizing overlay network>

當我重新修改 torrc 並刪除ClientOnionAuthDir選項並重新啟動 tor 時,它執行良好。

有人可以幫我嗎?我有什麼不同的做法ClientOnionAuthDir

***附加資訊:*我意識到我有兩個 .onion 地址:一個在/var/lib/tor/USER/hostname文件中,當我執行getnetworkinfo命令時顯示另一個。這是應該的嗎?

提前致謝!

如果您/var/lib/tor/onion_auth/zerotobtc.auth_private確定客戶端上的文件是正確的(單行,包含:),{replace-with-your-onion-url-without-the-extension}:descriptor:x25519:{replace-with-your-base32-encoded-private-key}那麼它無法正常工作的最可能原因是您的文件權限不允許 Tor 讀取文件。再試sudo chmod 700 -R /var/lib/tor/onion_auth一次;如果可行,那麼您只需要更仔細地調整您的權限以允許 Tor 訪問該文件。

至於使用哪個 .onion 地址是正確的:是的,您將有 2 個地址,但您只需要注意一個。我認為getnetworkinfo適用於比特幣 P2P 協議(埠 8333) - P2P 隱藏服務必須是公共的(沒有客戶端身份驗證),我建議你讓比特幣自動配置自己的臨時隱藏服務(這是地址getnetworkinfo給你)。你可以忽略這個地址,我認為它會定期更改,因此無需查找它,它只是你的節點用於與比特幣網路通信的地址,沒有太多值得更改的地方。

您的節點的 RPC 介面(通常是埠 8332)是您應該使用 Tor 客戶端身份驗證來保護的。使用/var/lib/tor/USER/hostnameRPC 介面的地址;保存在/var/lib/tor文件夾中的這些地址是永久性的,除非您明確更改它們,否則它們不會更改。確保您將客戶端身份驗證公鑰保存為/var/lib/tor/USER/authorized_clients/zerotobtc.auth, 格式descriptor:x25519:{replace-with-your-base32-encoded-public-key},並再次確保您的權限正確。

引用自:https://bitcoin.stackexchange.com/questions/111276