前言:
bitwarden使用了很多年,也非常好用,但是在公网上使用,最好是开启2FA,以免被攻击丢失所有资料,但是在最近一次我发现我的TOTP失效了,我进入/admin的路径寻找解决办法,发现在/admin的页面可以直接快速移除账号的任何安全认证,我觉得把admin放在公网可能会是一个非常不安全的因素,所以就有了今天的教程。
教程:
这里的教程是针对使用traefik反代bitwarden,其他反代的小伙伴就可以不用往下看了。
在traefik的动态文件增加一个ip白名单的中间件:
ip-access: ipWhiteList: sourceRange: - "192.168.1.0/24"
192.168.1.0/24替换成你的内网的网段。
容器配置有两种办法,第一种是标签,第二种是动态配置。
标签:
labels: - "traefik.enable=true" - "traefik.http.routers.bitwarden-web.rule=Host(`bitwarden.example.com`)" - "traefik.http.routers.bitwarden-web.service=bitwarden-service" - "traefik.http.services.bitwarden-service.loadbalancer.server.port=80" - "traefik.http.routers.bitwarden-admin.rule=Host(`bitwarden.example.com`) && Path(`/admin`)" - "traefik.http.routers.bitwarden-admin.service=bitwarden-admin-service" - "traefik.http.services.bitwarden-admin-service.loadbalancer.server.port=80" - "traefik.http.routers.bitwarden-admin.middlewares=ip-access@file"
这里我演示的是docker-compose 如果是docker run启动的 请自行用-l 来添加,其中的域名请自行更换为你自己的,配置好后docker compose up -d生效。
动态文件:
http: routers: bitwarden-web: service: bitwarden-web middlewares: rule: "Host(`bitwarden.example.com`)" bitwarden-admin: service: bitwarden-admin middlewares: - ip-access rule: "Host(`bitwarden.example.com`) && Path(`/admin`)" services: bitwarden-web: loadBalancer: servers: - url: "http://192.168.1.3:80" bitwarden-admin: loadBalancer: servers: - url: "https://192.168.1.3:80"
注意修改域名和ip改为你自己的即可。
测试:
访问主页测试:
访问正常,登录也无问题。
测试访问/admin路径:
给到的结果Forbidden 就是禁止的,我们在局域网内再次访问这个地址。
正常访问,这样就在需要使用admin的页面的时候可以在内网的机器上进入,保证安全。
结尾:
密码库不比其他程序,一旦丢失,全部账号密码都会暴漏,是一个非常危险的事情,所以谨慎一点并不过分。
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。
评论(1)
老大说得是