咨询热线:400-860-0217
帮助
您的位置: DDNS网站 >

蒲公英自建节点-部署指南

2026-08-21 22:46

环境要求

●操作系统:Linux(CentOS 7+、Ubuntu 18.04+ 等)
●Docker 模式需要预装 Docker

安装流程

1、进入控制台-自建节点-节点信息页 部署安装流程,根据tar或docker环境 复制对应的一键部署命令行
2、登录服务器后,在安装目录(例如 /root)粘贴并执行一键部署安装。

部署完成后,页面正常提示:Successfully installed and started

说明:
●监听端口listen-port:如果是docker模式的话,端口为宿主机映射到镜像内的端口;
●**Bind IPv4 / IPv6(绑定地址):如果是docker模式的话,为宿主机执行 docker run -p 时 绑定的本地网卡地址。若希望端口只出现在 内网网卡(不占用公网网卡或仅内网互通),请填写 该内网网卡的 IPv4/IPv6(例如 10.、192.168.);Tar 模式下为进程 监听地址,若仅内网访问同样需要填内网 IP。

常见问题排查

保证有root权限,最好在root路径下安装

1. 安装脚本 Permission denied

chmod +x install.sh startservice.sh uninstall.sh

2. 未找到 docker

CentOS:

yum install -y docker 后 systemctl start docker

Ubuntu:

apt-get install -y docker.io

然后后同样启动服务或安装tar包模式。

3. Docker 加载镜像失败

检查 Docker 是否运行、df -h 磁盘空间、安装包完整性;或检查当前docker版本,重新安装docker为21版本。

4. 端口被占用

ss -tlnp | grep <端口号> ss -ulnp | grep <端口号>

如果发现端口被占用,将当前占用端口的程序停掉更换其监听端口,或更换后台配置端口并重新部署自建节点。

5. 客户端无法连接

1.sudo systemctl status pgyp2p-self-built.service(若使用 systemd),否则 ./startservice.sh status
2.放行 udp port 对应的 UDP,以及同一业务监听端口上的 TCP(加密通道);放行监控端口时请缩小来源范围。
3.云安全组与防火墙规则一致。
防火墙示例(请替换为您的 listen-port / monitor_port):

firewall-cmd --permanent --add-port=4118/udp firewall-cmd --permanent --add-port=4118/tcp # 监控端口建议仅对本机或管理网放开,示例: firewall-cmd --permanent --add-rich-rule='rule family=ipv4 source address=<管理机IP> port port=8123 protocol=tcp accept' firewall-cmd --reload

云服务器安全组策略示例(云服务器的端口开放示例listen-port / monitor_port):

6. 部署密钥过期

联系管理员更新密钥后重新部署或重启。

7. 配置文件不存在

重新执行 ./install.sh 生成安装目录下的 config.ini([settings]),并确认 bin/config.ini 存在。

8. Tar 模式 license 错误

确认 bin/forward_server.license 存在。

9. 服务频繁重启

docker logs --tail 50 pgyp2p 或查看 bin/log/;排查内存、free -m、端口与 license。

10. 如何更新版本

使用 systemd 时:sudo systemctl stop pgyp2p-self-built.service → 备份 → 新版本解压并执行 ./install.sh(按需再次 --boot-autostart)→ sudo systemctl daemon-reload → sudo systemctl start pgyp2p-self-built.service。

未使用 systemd:./startservice.sh stop → 安装新版本 → ./startservice.sh start。

11.如果想修改配置文件内容

停止服务
docker模式:删除原本docker,删除安装目录config
tar包模式:修改bin/config.ini内容和安装目录下config
如果不可,执行卸载脚本,在控制台修改后,重新执行一键部署命令再修改参数。

其他功能

监控端口与在线人数接口

监听地址与端口取自合并后的 tcp port monitor(默认8123),HTTP GET。响应体为JSON(Content-Type 仍为 text/plain,解析时按 JSON 处理即可)。

列举在线被控摘要 + 全局统计

GET /online_users?limit=10
查询参数 说明
limit 可选,clients 最大条数,默认 10,上限 1000

响应 JSON 主要字段:remote_connections(被控连接数)、remote_distinct_accounts(按账号维度去重后的数量)、control_connections(主控 TCP 会话数)、clients(明细数组)、shown、total_remote、limit。

按用户 ID 查询是否在线(含全局统计)

GET /online_users?userid=<正整数用户ID>

响应 JSON:remote_connections、remote_distinct_accounts、control_connections、userid、online(布尔)、connections(该 ID 匹配的会话数)。

调用示例

curl -s "http://127.0.0.1:8123/online_users?limit=5" curl -s "http://127.0.0.1:8123/online_users?userid=123456"

请将 8123 换为您配置的monitor_port。建议在防火墙与安全组中限制监控端口访问来源,避免对外裸奔。

验证部署

已启用systemd 时:

sudo systemctl status pgyp2p-self-built.service

未启用时:

./startservice.sh status

Tar 日志:安装目录下 bin/log/;Docker:docker logs pgyp2p。

卸载

若曾启用pgyp2p-self-built.service,建议先停止并禁用:

sudo systemctl stop pgyp2p-self-built.service sudo systemctl disable pgyp2p-self-built.service

再执行:

./uninstall.sh

按提示确认;Docker 模式会一并清理镜像相关资源。卸载后如需删除 unit 文件,可手动移除 /etc/systemd/system/pgyp2p-self-built.service 并执行 sudo systemctl daemon-reload。