socks5 nginx 上游代理/隧道?

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

是否有任何解决方案/补丁可以使 nginx 与上游的袜子一起工作?

类似这样的:

server {
  location / {
    proxy_pass  socks5://ip:port/
  }
}
proxy nginx socks tunnel
3个回答
8
投票

我最近编写了一个模块,完全可以满足您的需求。在 nginx 之前,您可能需要类似 HAProxy 的东西来支持 TLS 隧道。


3
投票

SOCKS 是第 5 层,HTTP 是第 7 层。HTTP 代理无法处理 SOCKS,尽管 HTTP 代理可以over SOCKS 工作。我不清楚如果 Nginx 能够连接到 SOCKS 服务器,您会期望 Nginx 对响应做什么。这类似于询问 Nginx 是否可以连接到 NetBIOS 或 PTPP。

假设您正在尝试让 Nginx 代理到另一个只能通过 SOCKS 访问的 HTTP 服务器,您需要将其设置为操作系统上网络堆栈的一部分。

也许这个链接可以帮助你:

http://www.catonmat.net/blog/linux-socks5-proxy/


0
投票

使用这样的配置(适用于http(s)或Socks5):

stream {
  upstream @upstream1 {
    server "1.2.3.4:1081";
  }
  server {
  listen 1081;
       proxy_connect_timeout 4s;
       proxy_timeout 6s;
       proxy_pass @upstream1;
  }
    
}
© www.soinside.com 2019 - 2024. All rights reserved.