搭建密码保存网站vaultwarden


搭建密码保存网站vaultwarden

Vaultwarden是什么

Vaultwarden 是一个用于本地搭建 Bitwarden 服务器的第三方 Docker 项目。兼容 Bitwarden官方客户端,仅在部署的时候使用 Vaultwarden镜像,桌面端、移动端、浏览器扩展等客户端均使用Bitwarden官方的客户端。

Vaultwarden很轻量,对于不希望使用官方的占用大量资源的自托管部署而言,它是理想的选择。

github主页

Vaultwarden

搭建

根据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证书.

这里我使用了cloudflaretunnel 功能放置到网络上.由cloudflare强制https访问.

配置命令如下:

$ su root

# cloudflared tunnel create 1passwd
# cloudflared tunnel list
# cloudflared tunnel route dns 1passwd 1passwd.xx.com

内网穿透后,可以通过https://1passwd.kningyuan.top访问.

访问

  • 浏览器安装插件访问

001

安装完毕后,点击登录自己的邮箱和密码,服务器选择自己创建的服务器地址.

  • 客户端访问

访问bitwrden下载客户端,同样需要设置自己的私有服务器,并登录

002

  • 网页端访问

直接访问网页地址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 目录中的每个文件或目录替换为其备份版本。

在恢复使用 .backupVACUUM INTO 创建的备份时,请确保首先删除任何现有的 db.sqlite3-wal 文件,因为这可能会在 SQLite 尝试恢复 db.sqlite3 时导致数据库损坏使用陈旧/不匹配的 WAL 文件。但是,如果您使用db.sqlite3及其匹配的db.sqlite3-wal文件的直接副本备份数据库,则必须将这两个文件成对还原。您不需要备份或恢复 db.sqlite3-shm 文件。


文章作者: 文彦
版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 文彦 !
评论
  目录