User:Giteeajake/Tor
Tor Project ,即 Tor 项目,是 洋葱路由 的开源实现,提供免费的匿名代理服务,它的主要目标是尽可能地阻止 流量分析 来实现网络匿名。
Tor 网络的用户在他们的机器上运行洋葱代理软件,该软件向其客户端提供 SOCKS 接口。该软件连接到 Tor,定期通过 Tor 网络协商虚拟线路 (Tor circuits) 。Tor 以分层的方式使用加密技术(正如层层洋葱),确保路由器之间的正向保密性。
通过以上过程以确保洋葱代理管理网络流量来实现用户的匿名性, Tor 通过对流量的加密,由 Tor 网络中的其他节点发送,最终在最后一个节点(出口节点)解密流量后转发给指定的服务器。一个权衡是,由于大量的流量重新路由,使用 Tor 可能比常规的直接连接慢得多。尽管 Tor 最大化阻止流量分析,但它无法对抗网络边界的流量确认(即进出网络的流量)。
安装 torbrowser-launcher包 用于安装 Tor Browser ,这是使用 Tor 来匿名访问网站的唯一且最安全的方式。
如果需要手动与其他应用结合,或运行中继,托管洋葱服务等,则安装 tor包 包, nyx包 包是 Tor Project 官方开发的监视器,可以查看资源占用,连接状况和动态配置修改等功能。如果不习惯,可以使用 基于 QT 框架的 vidaliaAUR,但不再推荐,官方放弃了维护。
如果希望使用基于内核功能的快捷 Tor 方案,可以考虑 oniuxAUR 。
启用/启动 tor.service 或以 tor 用户身份启动 切换用户
如果需要程序与 Tor 搭配运行,就需要设置配置 SOCKS5 代理为 127.0.0.1 或 localhost ,并设置端口为 9050。
代理允许通过 socks5h://localhost:9050 从出口节点而非本地来进行 DNS 解析 (socks5) 。
可以通过 check 或以下命令来判断 Tor 是否在运行。
curl -x socks5h://localhost:9050 -s https://check.torproject.org
默认情况下, Tor 会自动读取 /etc/tor/torrc 配置文件,如果不存在这个文件,则会尝试使用 $HOME/.torrc 配置文件。tor(1)
现在可以使用在 /etc/torrc.d/ 存放的配置文件 *.conf 来加载配置:
/etc/tor/torrc
%include /etc/torrc.d/*.conf
然后重新加载 tor.service (可能需要开启 <1024 的端口),需要重新设置权限,需要以 Tor 用户的权限运行。信息、统计数据和错误信息将写进默认配置的 Journal 。
通常 Tor 虚拟线路包括:
Tor 用户 -> 守卫中继 -> 中间中继 -> 出口中继 -> 目标服务器
在非出口中继中:守卫中继作为 Tor 虚拟线路中第一中继,中间中继作为 Tor 虚拟线路的第二中继。
若需要运行中继,请将以下选项添加到 torrc :
ORPort 443 # You might use a different port, should you want to ExitRelay 0
这些选项意味着你的设备将以入口中继和转发中继运行,与桥接不同,设备会被列入公共 Tor 目录,你的 IP 地址也会随之公开在 Tor 目录,但只能转发到出口中继或其他中继,而不是连接互联网。拓展:Tor 连接目录服务器逻辑
你可以设置你在 Tor 目录的昵称和联系邮箱(但强烈建议不要设置为自己的重要邮箱),也可以设置宽带限制:
Nickname myNiceRelay # Change "myNiceRelay" to something you like ContactInfo your@e-mail # Write your e-mail and be aware it will be published BandwidthRate 20 KB # Throttle traffic to 20KB/s BandwidthBurst 50 KB # But allow bursts up to 50KB/s
宽带有2个设置参数: BandwidthRate (带宽率) 和 BandwidthBurst (突发流量)。
BandwidthRate 是指平常情况的传输速率,例如:设置速率为 50MB,那么每秒传输速率就是 50MB/s ;而 BandwidthBurst 可以看作一个缓冲,可以满足短时间高于 BandwidthRate 但长期流量低于BandwidthBurst 的需求。
BandwidthRate 和 BandwidthBurst 的单位是字节而不是比特如果你的计算机没有运行任何 Web 服务,且没有在 Tor 的配置文件中设置 AccountingMax ,请设置 ORPort 为 443,许多 Tor 用户会被困在防火墙之后,只能浏览网页,如果想绕过防火墙,就需要你的 Tor 中继。
{{注意|如果 443 端口被占用,可以使用 22 、 110 、 143 、 9001
验证 Tor 中继是否正常运行:检查 tor.service 是否正常启动、无论是 Journal 还是 Unit 状态,如果没有问题,请运行 nyx 来确保你的中继正在建立连接,新中继的运行速度最开始比较慢,这点不需要担心的,至少需要三个小时来初始化,初始化完毕后可以在 tor 日志上或 nyx 状态 (status) 看见昵称或身份密钥指纹,可以在 Relay Search 来搜索你的中继。拓展: 关于新中继
Tor 网桥是未公开在 Tor 公共目录的特殊中继,以确保当政府或 ISP 阻止人们访问 Tor 公共目录时,可以访问 Tor 网络,可通过 Tor Bridge 来获取网桥和了解网桥原理。
运行 Tor 网桥,需要添加以下配置(参考 Running a Bridge)
SocksPort 0 ORPort auto BridgeRelay 1 ExitRelay 0 Exitpolicy reject *:*
可以用特定端口来代替 auto 。
大多数情况下是不需要的,但有些应用需要使用 ControlPort 来实现对 Tor 节点的低级访问