0

在通过 tor 设置 ssh 时,我确定 ssh 仅适用于我尝试访问的设备 ( deviceA),而不适用于其他设备 ( deviceB)。

我全新安装了 Ubuntu Server 20.04 LTS,验证它已通过 wifi 连接到互联网,成功完成 sudo apt update 和 upgrade 命令,成功重启,然后运行:sudo apt install tor. 接下来,我跑了

sudo nano /etc/tor/torrc

并包括:

HiddenServiceDir /var/lib/tor/other_hidden_service/
HiddenServicePort 22

(所以不是HiddenServicePort 22 127.0.0.1:22

接下来,我使用以下命令重新启动了 tor 服务:

sudo systemctl restart tor

接下来是获取 ssh 服务器的洋葱域:

sudo cat /var/lib/tor/other_hidden_service/hostname

哪个返回someoniondomain.onion

下一步是 ssh 进入deviceAfrom deviceB,所以我使用 USB 驱动器将 ssh 服务的洋葱地址复制到deviceB. 在这deviceB我跑:

sudo apt install tor
sudo apt install torify
torify ssh ubuntu@someoniondomain.onion

ubuntu的用户名在哪里deviceA。该torify命令返回:

333333333 PERROR torsocks[28775]:socks5 libc 连接:连接被拒绝(在 socks5.c:202 的 socks5_connect() 中) ssh:连接到主机 someoniondomaion.onion 端口 22:连接被拒绝

所以我也继续运行sudo systemctl restart tordeviceB以防torify没有设置,但输出相同。

但是,当我从自身运行相同的命令时deviceA,它成功地 ssh 进入自身,如输出所示:

无法建立主机“someoniondomain.onion (127.42.42.0)”的真实性。

ECDSA 密钥指纹为 SHA256:。

您确定要继续连接(是/否/[指纹])?

笔记

我没有更改/etc/tor/torrsocks.conf文件,这意味着它包含:

TorAddress 127.0.0.1
TorPort 9050

OnionAddrRange 127.42.42.0

我目前的猜测是,该问题可能与同一网络上的线路有关,这可能会以某种方式导致问题OnionAddrRange 127.42.42.0deviceAdeviceB

问题

我如何确保我也能够从 ssh 进入deviceAover tor deviceB

4

1 回答 1

0

问题的本质是假设 torify 建立了一个 tor 连接,它本身并没有。此外,运行:

sudo systemctl restart tor

不足以deviceB通过tor ssh。似乎还必须明确启动 tor,因为在运行以下命令后deviceB,它起作用了:

sudo tor

必须在此答案中验证命令的输出:

curl --socks5 localhost:9050 --socks5-hostname localhost:9050 -s https://check.torproject.org/ | cat | grep -m 1 Congratulations | xargs

Congratulations两个设备上,以验证它们都连接到 tor。

于 2021-06-11T18:28:24.683 回答