跳至内容

Tor 洋葱服务

介绍

Tor 是一种匿名服务和软件,它通过称为中继的三台志愿者运行的服务器路由流量。三跳设计是为了通过抵御监视尝试来确保隐私。

Tor 的一项功能是,您可以运行称为洋葱服务的隐藏的、Tor 独有的网站。因此,所有到洋葱服务的流量都是私密的,并且是加密的。

先决条件和假设

以下是使用此过程的最低要求

  • 能够以 root 用户身份运行命令或使用 sudo 提升权限
  • 熟悉命令行编辑器。作者在这里使用 vivim,但请替换您喜欢的编辑器
  • 在 localhost 或另一个 TCP/IP 端口上运行的 Web 服务器

安装 Tor

要安装 Tor,您需要先安装 EPEL(Enterprise Linux 的额外软件包)并运行更新

dnf -y install epel-release && dnf -y update

然后安装 Tor

dnf -y install tor

配置 Tor

安装完软件包后,您需要配置 Tor。作者为此使用 vi,但如果您更喜欢 nano 或其他东西,请继续替换。

vi /etc/tor/torrc

默认的 torrc 文件非常描述性,但如果您只想使用洋葱服务,则会变得很长。最小的洋葱服务配置类似于此

HiddenServiceDir /var/lib/tor/onion-site/
HiddenServicePort 80 127.0.0.1:80

仔细看看

  • “HiddenServiceDir” 是洋葱服务的主机名和加密密钥的存储位置。您将这些密钥存储在 /var/lib/tor/onion-site/
  • “HiddenServicePort” 是从您的本地服务器到洋葱服务的端口转发。您将 127.0.0.1:80 转发到 Tor 面向服务的端口 80

警告

如果您计划将用于洋葱服务签名密钥的目录放在 /var/lib/tor/ 之外,您需要确保权限为 0700,所有者为 toranon:toranon

配置 Web 服务器

您还需要在我们的机器上使用 Web 服务器来为您的洋葱服务的客户端提供服务。任何 Web 服务器(Caddy、Apache 或 Nginx)都可以使用。作者更喜欢 Caddy。为简单起见,安装 Caddy

dnf -y install caddy

接下来,您将以下内容插入 /etc/caddy/Caddyfile

http:// {
    root * /usr/share/caddy
    file_server
}

测试和开启

设置完 Tor 中继配置后,下一步是启动 Tor 和 Caddy 守护进程

systemctl enable --now tor caddy

您可以使用以下命令获取洋葱服务的主机名

cat /var/lib/tor/onion-site/hostname

在几分钟内,您的洋葱服务将通过 Tor 网络传播,您可以在 Tor 浏览器中查看您的新洋葱服务

Tor Browser showing our Onion Service

结论

如果您要私下托管网站或需要使用仅开源软件绕过 ISP 的运营商级 NAT,那么洋葱服务是一个宝贵的工具。

虽然洋葱服务不像直接托管网站那样快(由于 Tor 的隐私优先设计,这是可以理解的),但它比公共互联网安全和私密得多。

作者:Neel Chauhan

贡献者:Ganna Zhrynova