搭建密码保存网站vaultwarden
Vaultwarden
是什么
Vaultwarden
是一个用于本地搭建Bitwarden
服务器的第三方 Docker 项目。兼容Bitwarden
官方客户端,仅在部署的时候使用Vaultwarden
镜像,桌面端、移动端、浏览器扩展等客户端均使用Bitwarden
官方的客户端。
Vaultwarden
很轻量,对于不希望使用官方的占用大量资源的自托管部署而言,它是理想的选择。
github
主页
搭建
根据
github
的说明,搭建只需要2条命令即可.docker pull vaultwarden/server:latest docker run -d --name vaultwarden -v /vw-data/:/data/ -p 80:80 vaultwarden/server:latest
这样搭建出来的程序是不带管理端的.
docker run -d --name vaultwarden -v /var/lib/docker/volumes/valiadd/_data:/data/ -p 8081:80 -e ADMIN_TOKEN=xcfdfbsdw3ersdfxe3rsdf vaultwarden/server:latest
如上命令搭建的程序访问
https://xxxx.com/admin/
可以访问到后台管理.
配置ssl
访问
需要配置
nginx
的反向代理,并且加载ssl
证书.这里我使用了
cloudflare
的tunnel
功能放置到网络上.由cloudflare
强制https
访问.配置命令如下:
$ su root # cloudflared tunnel create 1passwd # cloudflared tunnel list # cloudflared tunnel route dns 1passwd 1passwd.xx.com
内网穿透后,可以通过
https://1passwd.kningyuan.top
访问.
访问
- 浏览器安装插件访问
安装完毕后,点击登录自己的邮箱和密码,服务器选择自己创建的服务器地址.
- 客户端访问
访问
bitwrden
下载客户端,同样需要设置自己的私有服务器,并登录
- 网页端访问
直接访问网页地址
1passwd.xxx.com
数据备份
使用默认的
SQLite
运行时,data
目录结构如下data ├──attachments # 每个附件都作为一个单独的文件存储在这个目录下。 │ └── <uuid> #(如果没有创建附件,附件目录将不存在。) │ └── <random_id> ├── config.json # 存储管理页面配置;仅在之前已启用管理页面时才存在。 ├── db.sqlite3 # 主 SQLite 数据库文件。 ├── db.sqlite3-shm # SQLite 共享内存文件(不总是存在)。 ├── db.sqlite3-wal # SQLite 预写日志文件(不总是存在)。 ├── icon_cache # 站点图标(favicon)缓存在这个目录下。 │ ├── <域名>.png │ ├── example.com.png │ ├── example.net.png │ └── example.org.png ├── rsa_key.der # `rsa_key.*` 文件用于对认证令牌进行签名。 ├── rsa_key.pem ├── rsa_key.pub.der └── sent # 每个发送附件都作为一个单独的文件存储在这个目录下。 └── <uuid> #(如果没有创建发送附件,则发送目录将不存在。) └── <random_id>
备份
data
中的所有数据
还原
确保
Vaultwarden
已停止,然后只需将data
目录中的每个文件或目录替换为其备份版本。在恢复使用
.backup
或VACUUM INTO
创建的备份时,请确保首先删除任何现有的db.sqlite3-wal
文件,因为这可能会在 SQLite 尝试恢复db.sqlite3
时导致数据库损坏使用陈旧/不匹配的 WAL 文件。但是,如果您使用db.sqlite3
及其匹配的db.sqlite3-wal
文件的直接副本备份数据库,则必须将这两个文件成对还原。您不需要备份或恢复db.sqlite3-shm
文件。