2024年11月21日

HYEOS

随事而为

Linux中使用SSH代理

1 min read

要通过SSH为系统配置代理,你可以使用SSH的动态端口转发功能来创建一个SOCKS代理,然后将系统的网络流量通过该代理进行转发。以下是如何设置的步骤:

1. 启动SOCKS代理

首先,使用SSH命令启动一个动态端口转发会话,这将创建一个SOCKS代理。

ssh -D 1080 user@remote_server
  • -D 1080:指定本地的1080端口作为SOCKS代理端口。你可以更改1080为其他端口。
  • user@remote_server:替换为你的远程服务器的用户名和IP地址或主机名。

2. 配置系统代理

接下来,将你的系统配置为使用刚刚创建的SOCKS代理。

在Linux上使用环境变量(适用于终端应用)

你可以通过设置环境变量来告诉系统使用这个代理:

export http_proxy="socks5://127.0.0.1:1080"
export https_proxy="socks5://127.0.0.1:1080"

配置全局代理(适用于桌面应用)

对于需要代理所有流量的情况,你可能需要通过修改网络设置或使用代理工具(如ProxyChains、Proxifier等)来设置系统级代理。

3. 测试连接

配置完成后,你可以通过以下命令来测试是否通过代理连接成功:

curl ipinfo.io

你应该看到显示的是远程服务器的IP地址,而不是你本地的IP地址。

4. 保持SSH连接

请注意,当你使用这种方法时,代理会在SSH连接关闭后终止。因此,请保持SSH会话打开,或者将其放到后台运行:

ssh -f -N -D 1080 user@remote_server
  • -f:让SSH会话在后台运行。
  • -N:不执行远程命令,只进行端口转发。

这样,你就可以通过SSH来为系统配置代理,将所有流量通过指定的远程服务器进行转发。

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注