如果你的 Bark Server 暴露在公网,并且没有开启鉴权,别人可以使用你的服务。Bark 的推送接口本质上是 HTTP API,请求里带 device_key 就能推送。
如果用 Docker部署Nginx Proxy Manager(NPM) 给 Bark 做 HTTPS 反代,推荐这样配。
- 把 NPM 和 Bark 放到同一个网络
- 防止别人注册到你的 Bark Server,建议在 NPM 的 Proxy Host 里加 Advanced 配置,阻止 /register。
location = /register {
return 403;
}
严格一点,可以只允许你的 IP 访问 /register
location = /register {
allow 你的公网IP;
deny all;
proxy_pass http://bark-server:8080/register;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
}
- NPM 反代 HTTPS 只能解决加密和域名访问问题;防止别人使用,还要关闭公网 8080、保护 Device Key,最好再限制
/register。