把socks5代理转化为http代理

本文最后更新于:2023年8月25日 下午

如果客户端使用SSR、Clash等软件一般本地可以开启一个http代理端口使用,但是在服务器上,或许我们不使用这些软件。

问:有一个现成的远程socks5代理,想转化成为本地的http代理,在ubuntu上有什么办法

同样适用与centos系统

在Ubuntu上,您可以使用privoxy工具将远程的SOCKS5代理转换为本地的HTTP代理。Privoxy是一个功能强大的代理服务器,可以充当本地HTTP代理并过滤和修改传入和传出的HTTP流量。

下面是在Ubuntu上将远程的SOCKS5代理转换为本地HTTP代理的步骤:

  1. 首先,确保您的系统上已经安装了Privoxy。如果尚未安装,可以使用以下命令进行安装:

    1
    2
    sudo apt update
    sudo apt install privoxy
  2. 安装完成后,编辑Privoxy的配置文件。使用以下命令打开配置文件:

    1
    sudo nano /etc/privoxy/config
  3. 在配置文件中,找到以下行,并做相应修改:

    1
    2
    listen-address  127.0.0.1:8118
    forward-socks5 / xxx.xxx.xxx.xxx:1080 .

保存并关闭文件。

配置说明:
listen-address 本地监听的http代理端口
forward-socks5 远程socks5代理的地址
forward-socks5t 也是相同的功能,区别是forward-socks5t不使用代理解析DNS,所以不用它,改为使用forward-socks5

  1. 启动Privoxy服务:

    1
    sudo systemctl start privoxy

现在,您的本地HTTP代理已经在Ubuntu上运行,并将传入的HTTP流量转发到远程的SOCKS5代理

  1. 加入开机自启

    1
    2
    systemctl enable privoxy
    systemctl start privoxy
  2. 测试例子

    1
    2
    curl -x 'http://127.0.0.1:8118' myip.ipip.net
    curl -x 'socks5://xxx.xxx.xxx.xxx:1080' myip.ipip.net

References


把socks5代理转化为http代理
https://baymax55.github.io/2023/08/25/linux/如何把socks5代理转化为http代理/
作者
baymax55
发布于
2023年8月25日
许可协议