Bark推送服务安全防护

如果你的 Bark Server 暴露在公网,并且没有开启鉴权,别人可以使用你的服务。Bark 的推送接口本质上是 HTTP API,请求里带 device_key 就能推送。

如果用 Docker部署Nginx Proxy Manager(NPM) 给 Bark 做 HTTPS 反代,推荐这样配。

  1. 把 NPM 和 Bark 放到同一个网络
  2. 防止别人注册到你的 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;
}
  1. NPM 反代 HTTPS 只能解决加密和域名访问问题;防止别人使用,还要关闭公网 8080、保护 Device Key,最好再限制 /register