小白分享一下本地搭建Bitwarden密码服务器的过程,没什么技术含量,适合新手练手,欢迎大佬指教。
我是在N1旁路由上搭建,不注册域名。废话不多说,直接来操作步骤。
1、拉vaultwarden镜像(第三方的,适合N1)
docker run -d --name vaultwarden -v /opt/Vaultwarden/data/:/data/ -p 9090:80 vaultwarden/server:latest
(不要照抄,改一下你自己的路径)
以我这个为例,生成的ip地址是:172.31.0.9,记住它。
试着打开:http://172.31.0.9或者http://192.168.2.252:9090(192.168.2.252是我N1盒子的ip地址)。
登陆页面会看到链接显示不安全,没有SSL证书,账号也没办法注册。不管它,继续搞。
2、拉nginx镜像
docker run -d --name nginx_ssl -p 9010:80 -p 9020:443 -v /opt/Nginx_SSL/conf.d:/etc/nginx/conf.d nginx:latest
(不要照抄,改一下你自己的路径)
拉完之后,我生成的ip是:172.31.0.10,记住它。
3、搞本地证书
下载神器mkcert:https://github.com/FiloSottile/mkcert/releases/latest
Windows系统就下载exe文件,win下敲命令行应该很熟。
运行命令:
mkcert 172.31.0.10 192.168.2.252
mkcert文件夹里出现两个pem文件,改一下名字为cert.pem和key.pem,后面导入用。
再运行命令:
mkcert -CAROOT
显示路径:C:\Users\(自己的用户名)\AppData\Local\mkcert
打开这个路径,有两个文件:rootCA-key.pem和rootCA.pem,将rootCA.pem复制出来,命名为rootCA.crt。
rootCA.crt这个文件是给客户端添加用的。
win安装:双击crt文件,证书存储位置要选择“受信任的根证书颁发机构”。
安卓安装:设置->安全->凭据存储->从存储设备安装证书。
4、配置nginx
ssh连接N1,找到刚才拉镜像映射的目录:/opt/Nginx_SSL,在conf.d下面建一个文件夹certs,把刚才生成的cert.pem和key.pem放里面。
然后在conf.d里面添加一个default.conf文件,
内容:
server {
listen 443;
ssl on;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_certificate /etc/nginx/conf.d/certs/cert.pem;
ssl_certificate_key /etc/nginx/conf.d/certs/key.pem;
location / {
proxy_pass http://172.31.0.9/;
}
}
server {
listen 80;
rewrite ^/(.*) https://172.31.0.10/$1 permanent;
}
(刚才记住的ip都用上了,自己改自己的ip)
运行命令,重启nginx:
docker exec -it nginx_ssl service nginx reload
现在打开https://172.31.0.10或者https://192.168.2.252:9020,看到不安全没有了,一把小锁出现了,现在登陆页面注册账号就可以用了。
PS:使用心得
chrome、edge和firefox官方扩展里都有Bitwarden插件,安装完插件,第一次打开,左上角有个设置,里面填上自己本地服务器地址,比如我的这个:https://172.31.0.10或者https://192.168.2.252:9020。
安卓推荐kiwibrowser,能安装chrome的crx插件。
自动填充在插件的设置->其他->选项->Autofill->启用页面加载时的自动填充,勾选。
密码超时关掉,烦人。密码库里增加了新密码,记得要同步。
官方APP也有,我试了一下兼容不太行,其他自己去发现吧。官方帮助文档:help.bitwarden.in
没想到写个东西这么累。。。
谢谢,分享学习了
mark一下。
谢谢楼主,赞
谢谢分享,学习了
辛苦了,学习一下
先看看,不明白的地方再问
谢谢大佬分享,谢谢!
感谢分享,让我好好学习一下
这真是个好文章,谢谢
感谢分享