云函数介绍
使用云函数构建代理池的原理利用云函数搭建socks5代理池 1. 配置腾讯云云函数 2. vps安装运行socks客户端参考链接
云函数介绍
云函数(Serverless Cloud Function,SCF)是云计算厂商为企业和开发者们提供的无服务器执行环境,【无服务器(Serverless)不是表示没有服务器,而表示在使用 Serverless 时,我们无需关心底层资源,也无需登录服务器和优化服务器,只需关注最核心的代码片段,即可跳过复杂的、繁琐的基本工作。】++可在无需购买和管理服务器的情况下运行代码++, 是实时文件处理和数据处理等场景下理想的计算平台。只需使用 SCF 平台支持的语言编写核心代码并设置代码运行的条件,即可在某云基础设施上弹性、安全地运行代码。
使用云函数构建代理池的原理
云函数(SCF)可通过 API 网关触发器进行触发,接受来自客户端的数据,并将请求转发出去。也就是说利用云厂商提供的云函数(函数计算)功能,将客户端的请求转发,由于云函数拥有非常多的出口IP,就可以当作代理池进行使用。
原理图:
利用云函数搭建socks5代理池
个人vps搭建客户端(socks_client)做中转,vps上的socks客户端将我们的请求转发至云函数的API网关触发器。
项目地址:https://github.com/shimmeris/SCFProxy
1. 配置腾讯云云函数
https://console.cloud.tencent.com/scf/list?rid=1&ns=default
在该界面新建云函数。
点击新建
:
选择从头开始
,函数名称
和地域
无所谓,运行环境使用Python 3.6
:
将server.py文件内容复制到在线编辑页面:
https://github.com/shimmeris/SCFProxy/blob/main/SOCKS5/src/server.py
注意bridge_ip
和bridge_port
参数为我们后面vps需要配置的socks开启监听的ip和端口。
高级配置中,修改云函数执行超时时间为 900s(因此一个 SOCKS5 长连接最多维持 15m)
触发器配置中,自定义创建触发器,设置触发器为API网关触发
点击完成即可。
在触发管理中看到我们的API访问路径:
2. vps安装运行socks客户端
需要环境:仅支持 Python >= 3.8
git clone https://github.com/shimmeris/SCFProxy.git
cd SCFProxy/SOCKS5/
python3.8 -m pip install -r requirements.txt -i https://mirrors.aliyun.com/pypi/simple/
pip安装依赖的过程中遇到些许问题,均可搜索解决。
运行客户端socks5.py
:
cd SCFProxy/SOCKS5/src/socks_client/
python3.8 socks5.py -u "API访问路径" -bp 监听端口(跟上面云函数的必须一样) -sp socks端口
-u 参数需要填写 API 网关提供的地址,必填
-l 表示本机监听的 ip,默认为 0.0.0.0
-sp 表示 SOCKS5 代理监听的端口,必填
-bp 表示用于监听来自云函数连接的端口,与 server.py 中的 bridge_port 相同,必填
--user 和 --passwd 将用于 SOCKS5 服务器对连接进行身份验证,客户端需配置相应的用户名和密码
验证:
可以看到,每次访问的ip都不一样了。
参考链接
https://www.cnblogs.com/supdon/p/15099742.html
https://github.com/shimmeris/SCFProxy/
原文始发于微信公众号(信安文摘):【日常分享】- 使用云函数搭建socks5代理池
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论