来自 Azure VM 的 SOCKS5 请求
Posted
技术标签:
【中文标题】来自 Azure VM 的 SOCKS5 请求【英文标题】:SOCKS5 request from Azure VM 【发布时间】:2018-03-15 13:42:35 【问题描述】:我有一个 Python 3 脚本,它通过 SOCKS5 代理发出请求。我希望能够从 Azure VM 运行此脚本。但是当发出请求时,我收到以下错误:
Not supported proxy scheme SOCKS5
我在 Ubuntu 16.10 LTS 虚拟机上运行 Python 3.5.2 和请求 2.9.1。我还安装了 pysocks 以使请求与 SOCKS5 一起使用。
请求的代码如下:
server = 'socks5://u:p@proxy.server.com:1080'
proxies = 'https': server, 'all': None
response = requests.get(request_url, proxies=proxies)
Te 脚本在本地运行良好。因此,Azure 似乎不允许我使用 SOCKS5 代理。
我还添加了端口 1080 作为到 VM 网络接口的允许出站连接。
如何配置我的虚拟机,使其允许来自 SOCKS5 的连接
【问题讨论】:
我相信这不是 Azure IaaS VM 的问题。据我所知,Azure VM 对 SOCKS5 没有限制。例如。您可以在 Azure Ubuntu VM 上运行基于 SOCKS5 的 SS。 【参考方案1】:好吧,事实证明安装 pysocks 是不够的。
当你使用以下命令时:
pip3 install -U requests[socks]
它会安装所需的软件包以正常工作。
-U
与 --upgrade
相同。这个标志也是必需的,没有它你仍然无法通过 SOCKS5 连接。
【讨论】:
以上是关于来自 Azure VM 的 SOCKS5 请求的主要内容,如果未能解决你的问题,请参考以下文章
使用 Laravel 在 Azure 中来自单个请求的多个重复 HTTP 请求/查询
Azure Function App HTTP 触发来自请求正文的 CosmosDB 输入查询