【技术方案分享】一文搞定内网穿透 (3)
编辑
21
2025-02-25
WeChat2NPM 是一个用于将 企业微信 和 Telegram 与 Nginx Proxy Manager (NPM) 集成的工具,允许用户通过企业微信应用或 Telegram Bot 远程控制 NPM 的流状态(开启或关闭代理)。通过简单的配置,用户可以在企业微信或 Telegram 中一键开启或关闭 NPM 的代理服务,方便管理内网穿透。
功能特性
- 企业微信集成:通过企业微信应用实现远程控制 NPM 的流状态。
- Telegram 集成:通过 Telegram Bot 实现远程控制 NPM 的流状态。
- Nginx Proxy Manager 支持:与 NPM 无缝集成,支持通过 API 控制代理状态。
- Docker 支持:通过 Docker 容器化部署,简化安装和配置过程。
- 自定义菜单:支持在企业微信中创建自定义菜单,方便用户操作。
- 日志记录:支持不同级别的日志记录,便于调试和监控。
快速开始
1. 安装 Docker 和 Docker Compose
确保你已经安装了 Docker 和 Docker Compose。如果尚未安装,请参考以下链接进行安装:
2. 配置环境变量
配置 app.env
环境变量:
wget https://raw.githubusercontent.com/getyufelix/wechat2npm/refs/heads/main/app.env
vi app.env
3. 启动服务
使用以下命令启动服务:
wget https://raw.githubusercontent.com/getyufelix/wechat2npm/refs/heads/main/docker-compose.yml
vi docker-compose.yaml # 【可选】
docker compose up -d
企业微信配置
1. 创建企业微信应用
- 登录企业微信管理后台,创建一个新的应用。
- 获取以下信息并填写到
app.env
文件中:- 企业 ID (
WECHAT_CORP_ID
) - 应用 Secret (
WECHAT_CORP_SECRET
) - 回调 Token (
WECHAT_TOKEN
) - 回调 EncodingAESKey (
WECHAT_ENCODING_AES_KEY
)
- 企业 ID (
2. 配置回调 URL
在企业微信应用设置中,配置回调 URL 为 https://<你的服务器地址>/api/v1/message/?token=<WECHAT_TOKEN>
。
3. 创建自定义菜单
在企业微信中创建自定义菜单,允许用户通过菜单项开启或关闭 NPM 代理。你可以使用以下 Python 脚本创建菜单:
Telegram 配置
1. 创建 Telegram Bot
- 打开 Telegram,搜索
@BotFather
。 - 发送
/newbot
,按照提示创建你的 Bot。 - 创建完成后,
BotFather
会提供一个 Token,将其保存到app.env
文件中,作为TELEGRAM_TOKEN
的值。
2. 设置 Bot 命令
为了让 Bot 更易用,可以设置自定义命令菜单:
-
向
@BotFather
发送/setcommands
。 -
按照提示发送以下内容:
enable - 开启NPM代理 disable - 关闭NPM代理
使用方法
通过企业微信控制 NPM
- 在企业微信中打开配置的应用。
- 点击自定义菜单中的“Enable”或“Disable”按钮,即可开启或关闭 NPM 的代理服务。
通过 Telegram 控制 NPM
- 在 Telegram 中打开你的 Bot。
- 发送
/enable
开启 NPM 代理。 - 发送
/disable
关闭 NPM 代理。
注意事项
- 安全性:确保你的 NPM 管理界面和 API 接口受到保护,避免未经授权的访问。
- 资源管理:在不使用 NPM 代理时,请务必关闭代理服务,以避免不必要的资源消耗。
- 日志监控:定期检查日志文件,确保系统运行正常。
- 0
- 0
-
分享