Bitwarden_rs 第三方版本部署
今天收到LastPass的邮件 更改了免费政策 导致跨设备之间不能完美同步 准备自建Bitwarden_rs来替代LastPass
用RUST开发的第三方Bitwarden密码管理器,相比官方版本的主要优势有:
- 对硬件要求的配置低,官方版本至少3GB内存,这个1G内存足够。
- 可以使用官方版本某些收费才有的功能。
- Caddy自动续期SSL证书。
安装docker:
yum -y install curl
curl -sSL https://get.docker.com/ | sh
systemctl start docker
systemctl enable docker
安装docker-compose:
curl -L "https://github.com/docker/compose/releases/download/1.24.0/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
chmod +x /usr/local/bin/docker-compose
放行80/443端口:
firewall-cmd --permanent --add-service=http
firewall-cmd --permanent --add-service=https
firewall-cmd --reload
新建docker-compose.yml:
mkdir -p /opt/bitwarden && cd /opt/bitwarden && vi /opt/bitwarden/docker-compose.yml
写入如下配置:
version: "3"
services:
bitwarden:
image: bitwardenrs/server
restart: always
volumes:
- ./bw-data:/data
environment:
WEBSOCKET_ENABLED: "true"
SIGNUPS_ALLOWED: "true"
caddy:
image: abiosoft/caddy
restart: always
volumes:
- ./Caddyfile:/etc/Caddyfile:ro
- caddycerts:/root/.caddy
ports:
- 80:80
- 443:443
environment:
ACME_AGREE: "true"
DOMAIN: "example.com"
EMAIL: "example@gmail.com"
volumes:
caddycerts:
注:只需要将DOMAIN:后面的域名修改为自己的即可。
新建一个Caddy的配置文件:
vi Caddyfile
将以下内容添加至Caddyfile:
{$DOMAIN} {
tls {$EMAIL}
header / {
Strict-Transport-Security "max-age=31536000;"
X-XSS-Protection "1; mode=block"
X-Frame-Options "DENY"
}
proxy /notifications/hub/negotiate bitwarden:80 {
transparent
}
# Notifications redirected to the websockets server
proxy /notifications/hub bitwarden:3012 {
websocket
}
# Proxy the Root directory to Rocket
proxy / bitwarden:80 {
transparent
}
}
启动:
docker-compose up -d
打开站点域名首先注册一个账号,注册完成之后,可以将注册功能关闭掉,编辑docker-compose.yml:
vi /opt/bitwarden/docker-compose.yml
改动environment:下面的SIGNUPS_ALLOWED值为false:
SIGNUPS_ALLOWED: "false"
如果要配置SMTP也可以在这里一并完成,加入下面的配置:
SMTP_HOST: "smtp.host.net"
SMTP_FROM: "no-reply@home.example.com"
SMTP_PORT: "587"
SMTP_SSL: "true"
SMTP_USERNAME: "xxx"
SMTP_PASSWORD: "yyy"
停止运行,然后再启动即可应用新的环境变量:
docker-compose stop
docker-compose up -d
基本配置好上面这些就能满足日常使用需求了,如果需要更多配置可看官方的WIKI:
本作品采用 知识共享署名-相同方式共享 4.0 国际许可协议 进行许可。
评论已关闭