如何从node.js连接到Tor网桥?

问题描述 投票:0回答:3

我是 Tor 新手。我最近在我的 PC 上运行 Tor 服务器实例时成功地从 node.js 执行查询。

我使用了以下代码:

var Agent = require('socks5-https-client/lib/Agent');
var request = require("request");

var q = "https://www.example.com/";

request({
    url: q,
    agentClass: Agent,
    agentOptions: {
        socksHost: 'localhost',
        socksPort: 9050 // Defaults to 1080.
    }
}, function(err, res) {
    console.log(err || res.body);
});

我想连接到 Tor 而无需在我的 PC 上运行 Tor 服务器。我相信使用 Tor 桥可以实现这一点。我已从 https://bridges.torproject.org/bridges:

检索到 IP 地址
2.91.117.71:443 3C2AAD50197ACE1A43C822BBE282E0534603A31F

我不太确定如何使用这些信息。我尝试过设置:

    agentOptions: {
        socksHost: '2.91.117.71',
        socksPort: 443
    }

但是我超时了:

{ [Error: connect ETIMEDOUT] code: 'ETIMEDOUT', errno: 'ETIMEDOUT', syscall: 'connect' }

我的问题是:

  1. 是否可以使用来自node.js的https连接到公共Tor服务器?
  2. 如果是的话怎么办?
node.js https tor
3个回答
4
投票

Tor-Bridge 用于那些无法连接到正常 Tor 网络的人,因为他们的 ISP 阻止了众所周知的 Tor-服务器。 如果第一次连接是通过网桥完成的,那么之后就不会出现问题,因为通常这些网桥并不为所有人所知,因此它们通常不会被 ISP 阻止,因为它们看起来像普通服务器。

您仍然需要 Tor 客户端才能连接到它们。

如果没有 Tor 客户端,就无法连接到 Tor 网络。

在你的第一个代码中,你的 Tor 客户端就像一个袜子代理,只是通过 Tor 网络代理你的请求。

你可以尝试一下这个库是否有效。


1
投票

Tor 网桥不是您想要使用的。对我有用的是使用 Debian(我更喜欢 Ubuntu 14.04)设置一个 VPS(看看 SSD 上的digitalocean 每月 5 美元)并安装 tor 和 nodejs,除非你想尝试一种已经有的语言连接和操作 Tor 的成熟文档体系,如 Python(我的 Tor 首选语言)。

然后,您可以从该 VPS 运行相同的代码,它将起作用,这样您就不会在本地计算机上执行代码,并且您可以在适合您的时候更改 VPS 上的 IP 地址,并使用诸如代理链之类的东西除了 TOR 之外,您还通过其他代理查找的反弹流量。

希望有帮助。


0
投票
var request = require("request");

var url = "https://bridges.torproject.org/bridges";

request({
    url: url,
  agentOptions: {
      socksHost: '2.91.117.71',
      socksPort: 443
  }
}, function(err, res) {
    console.log(err || res.body);
});
© www.soinside.com 2019 - 2024. All rights reserved.