增加局域网访问

This commit is contained in:
dekun
2026-05-19 01:00:26 +08:00
parent 0203a65973
commit 4ad0ebe581
7 changed files with 53 additions and 19 deletions
+30 -10
View File
@@ -4,14 +4,14 @@
> 部署路径:**`/opt/crypto_key`**
> 进程守护:**PM2** · 服务端口:**5200**
币圈 API 密钥本地管理工具。数据保存在服务器本地 `data.json`,无登录,默认仅监听 `127.0.0.1`
币圈 API 密钥本地管理工具。数据保存在服务器本地 `data.json`,无登录,监听 `0.0.0.0:5200`(本机 + 局域网可访问)
---
## 一、架构
```
浏览器 / SSH 隧道 → http://127.0.0.1:5200
浏览器(本机或局域网) → http://<服务器IP>:5200
PM2 (api-key-manager)
@@ -62,14 +62,23 @@ pm2 status
curl -s http://127.0.0.1:5200/api/accounts
```
浏览器或 SSH 端口转发访问:**http://127.0.0.1:5200**
访问地址:
| 场景 | 地址 |
|------|------|
| 服务器本机 | http://127.0.0.1:5200 |
| 局域网其他设备 | `http://<局域网IP>:5200` |
查看服务器局域网 IP
```bash
# 本机 SSH 转发示例(在你自己的电脑上执行)
ssh -L 5200:127.0.0.1:5200 user@your-server-ip
# 然后浏览器打开 http://127.0.0.1:5200
hostname -I | awk '{print $1}'
# 或
ip -4 addr show | grep -oP '(?<=inet\s)\d+(\.\d+){3}' | grep -v 127.0.0.1
```
示例:若 IP 为 `192.168.1.100`,手机/电脑在同一 WiFi 下访问 **http://192.168.1.100:5200**
---
## 四、手动部署(逐步)
@@ -244,17 +253,28 @@ chmod 600 /opt/crypto_key/data.json
| `pm2 status` 为 errored | `pm2 logs api-key-manager --err`;确认 `venv` 已创建 |
| 端口 5200 占用 | `sudo ss -tlnp \| grep 5200`;修改 `app.py``port``pm2 restart` |
| `git clone` 需认证 | 配置 SSH Key 或 `git config credential.helper store` |
| 无法访问页面 | 服务仅监听 127.0.0.1,需 SSH 隧道或在本机 curl |
| 局域网无法访问 | 检查防火墙是否放行 5200`sudo ufw allow 5200/tcp` |
| 无法访问页面 | `pm2 logs api-key-manager`;确认 `ss -tlnp \| grep 5200` 显示 `0.0.0.0:5200` |
| 更新后异常 | `pip install -r requirements.txt``pm2 restart api-key-manager` |
---
## 十、安全说明
- 默认绑定 **127.0.0.1**,不对外网直接暴露
- **无登录鉴权**,切勿将 `0.0.0.0:5200` 开放到公网
- 服务绑定 **0.0.0.0:5200**,同一局域网内设备均可访问
- **无登录鉴权**,切勿将端口映射到公网或暴露于不可信网络
- `data.json` 已加入 `.gitignore`,不会推送到仓库。
- 建议在防火墙仅允许 SSH,通过隧道访问管理页
- 建议:仅在家/办公室可信局域网使用;云服务器请配合防火墙限制来源 IP
### 防火墙(Ubuntu
```bash
# 仅允许局域网网段访问(示例 192.168.0.0/16
sudo ufw allow from 192.168.0.0/16 to any port 5200 proto tcp
# 或临时开放(测试用,范围更大)
sudo ufw allow 5200/tcp
```
---