Linux 系统无须安装客户端实现代理连接

在 Unix/Linux 系统中自带了系统代理环境变量,通过这些变量的简单设置即可实现代理连接功能,常见的代理环境变量包括:

  1. http_proxy:用于 HTTP 请求的代理。
  2. https_proxy:用于 HTTPS 请求的代理。
  3. ftp_proxy:用于 FTP 请求的代理。
  4. no_proxy:不通过代理访问的地址列表,通常以逗号分隔。可以使用通配符。
  5. all_proxy:用于所有协议的代理设置,通常用于 SOCKS5 代理。
  6. rsync_proxy:用于 rsync 工具的代理设置。

命令示例

  • 设置 HTTP 代理
export http_proxy="http://proxy-server:port"
  • 设置 HTTPS 代理
export https_proxy="http://proxy-server:port"
  • 设置不通过代理的地址
export no_proxy="localhost,127.0.0.1,.example.com"

这些代理变量在大多数遵循标准的网络工具中都有效,包括 curlwgetgit 等。

系统可以使用 Socks5 代理。curl 支持 Socks5 代理,可以通过以下方式进行设置。

使用 Socks5 代理的命令

  1. curl 命令: 使用 -x 选项指定 Socks5 代理,例如:
curl -x socks5://proxy-server:port http://www.example.com

若 Socks5 代理需要身份验证,可以使用 -U 选项提供用户名和密码:

curl -U username:password -x socks5://proxy-server:port http://www.example.com
  1. 环境变量: 如果希望通过环境变量设置 Socks5 代理,可以使用以下命令:
export all_proxy="socks5://proxy-server:port"

对于需要身份验证的 Socks5 代理:

export all_proxy="socks5://username:password@proxy-server:port"

通过以上方式,可以方便地使用 Socks5 代理。

通过 export 命令设置的代理仅在当前终端会话有效。这意味着:

  • 当前会话有效:代理设置只在当前打开的终端窗口或会话中有效。
  • 关闭终端后失效:关闭终端或会话时,所有通过 export 设置的环境变量都会消失,打开新的终端窗口时,需要重新设置代理。

要清除临时设置的代理,可以使用 unset 命令。以下是清除 https_proxy 环境变量的步骤:

unset https_proxy

如果还设置了其他代理变量,如 http_proxyall_proxy,可以一并清除:

unset http_proxy
unset all_proxy

执行这些命令后将停用已设置的代理。