如何设置 SSH 隧道连接以从本地 PC 运行 http 请求

如何设置 SSH 隧道连接以从本地 PC 运行 http 请求

我的远程服务器可以访问特定的第三方 API。但我的本地 PC 却不能。我可以从服务器 nodejs 后端执行第三方 http 请求:

await axios.post("http://111.111.111.111:8810")

我如何设置带隧道的 SSH 连接以便从我的本地电脑执行类似的请求?

答案1

SOCKS 是最常用且最灵活的方法——您的 SSH 客户端可以假装是 SOCKS 代理,并且 Axios 似乎在单独模块的帮助下支持使用 SOCKS 代理。

通过在 PuTTY 的 SSH>Tunnel 设置中添加“动态”隧道来启用“SOCKS 代理”。(或者,对于 和ssh.exeplink.exe使用-D选项。)首先使用 进行测试curl -x- 某些 SSH 服务器可能配置为禁用隧道。

这是一个随机文章我找到了有关配置 Axios 的信息 - 虽然它谈论的是 Tor,但所有内容都适用于任何其他类型的 SOCKS 服务器:

import { SocksProxyAgent } from "socks-proxy-agent";

const agent = new SocksProxyAgent("socks://127.0.0.1:9050");

相关内容