任务详情
弹性 IP 转换为 S5IP 动态代理平台任务需求文档
一、项目背景
在网络应用场景中,有时需要通过代理服务器访问网络以实现特定目的,如突破网络限制、隐藏真实 IP 地址等。本项目旨在搭建一个平台,将亚马逊 AWS 的弹性 IP 转换为 SOCKS5 代理 IP(S5IP),并且每次提取的 IP 不同,以满足多样化的网络访问需求。
二、功能需求
(一)AWS 资源管理
弹性 IP 分配与释放
平台能够自动向 AWS 申请弹性 IP 地址,每次申请的 IP 地址不同。
当不再使用某个弹性 IP 时,可自动释放该 IP 地址,避免产生不必要的费用。
EC2 实例管理
能够创建、启动、停止和删除 EC2 实例,确保每个实例都关联一个不同的弹性 IP 地址。
对 EC2 实例的资源使用情况进行监控,如 CPU 使用率、内存使用率等。
(二)SOCKS5 代理服务器配置
Danted 安装与配置
在新创建的 EC2 实例上自动安装 Danted 代理服务器软件。
配置 Danted 支持 SOCKS5 协议,并设置用户名和密码认证机制。
动态 IP 切换
每次用户请求获取 S5IP 时,平台自动选择一个未使用的弹性 IP 关联的 EC2 实例,并返回该实例上 Danted 代理服务器的 IP 和端口信息。
确保每次返回的 IP 地址不同,避免重复使用。
(三)用户管理与认证
用户注册与登录
提供用户注册和登录功能,用户可以使用用户名和密码进行注册和登录。
权限管理
对不同用户分配不同的权限,如普通用户只能获取 S5IP 信息,管理员用户可以进行 AWS 资源管理和系统配置。
(四)API 接口
S5IP 获取接口
提供一个 API 接口,用户可以通过该接口请求获取一个新的 S5IP 地址和端口信息。
接口返回的数据格式为 JSON,包含 IP 地址、端口号、用户名和密码等信息。