Vaultwarden 安装

本文重在 Vaultwarden 的部署流程,介绍和具体使用方法请到:最佳密码管理器推荐 – 技焉洲

指标 描述
适用系统 Debian 系发行版,包括 Ubuntu, Armbian,其他发行版稍改命令一般也可
走通流程时间 10 分钟

前置条件

既然是密码管理器,HTTPS 作为基本的安全保障必须要有,因此必须要有一个域名,并把它解析到服务器的 IP 上。

本文使用 Nginx 进行反代。

Docker 安装

全复制并执行,一键创建工作目录并开放端口

myserve="vaultwarden"
sudo ufw allow 8888/tcp comment $myserve && sudo ufw reload
mkdir -p ~/myserve/$myserve && cd ~/myserve/$myserve && mkdir vw-data

根据注释自定义,然后执行,一键创建 docker-compose.yml 文件

cat > ./docker-compose.yml << EOF
services:
  vaultwarden:
    image: vaultwarden/server:latest
    container_name: vaultwarden
    restart: unless-stopped
    ports:
      - '8888:80'
    volumes:
      - './vw-data/:/data/'
    environment:
      TZ: "Asia/Shanghai"
      DOMAIN: 'https://bitwarden.vfly2.com'   # 必须是 https
      SIGNUPS_ALLOWED: "true"     # 配置是否允许注册,设置成 false 禁止注册
      WEBSOCKET_ENABLED: "true"   # 是否开启 WebSocket
      WEB_VAULT_ENABLED: "true"   # 配置是否开启Web端访问
      ADMIN_TOKEN: "xxxxxxxxxxx"  # 后台登陆密码,建议使用 openssl rand -base64 48 生成一个密码确保安全
      # 邮箱设置要放在 EOF 上面
EOF

环境变量参考文档: vaultwarden/.env.template at main · dani-garcia/vaultwarden (github.com)
如果想在这个配置文件里直接指定邮箱设置,填充下面字段并复制进上面即可。或者待会在后台设置。

      SMTP_HOST: smtp.gmail.com
      SMTP_FROM: notice@vfly2.com
      SMTP_FROM_NAME: AhFei_Vaultwarden_Service
      SMTP_SECURITY: starttls
      SMTP_PORT: 587
      SMTP_USERNAME: example@gmail.com
      SMTP_PASSWORD: xxxxxxxxxxx

拉取容器镜像

docker compose pull

启动容器

docker compose up -d

关闭容器

docker compose down

Nginx 反代

使用 acme.sh 自动获取和更新证书: [[02acme.sh]] 使用 acme.sh 申请和自动更新证书的完整指南 – 技焉洲

记得修改域名

acme.sh --issue -d bitwarden.vfly2.com --webroot /var/www/html
acme.sh --install-cert -d bitwarden.vfly2.com \
--key-file       /etc/ssl/private/bitwarden.vfly2.com.key \
--fullchain-file /etc/ssl/certs/bitwarden.vfly2.com.cer \
--reloadcmd "systemctl reload nginx"

sudo vim /etc/nginx/sites-available/bitwarden

自行更改域名和路径

server {
    listen 80;
    server_name bitwarden.vfly2.com;

    location /.well-known/acme-challenge/ {
        root /var/www/html;
    }

    location / {
        return 301 https://bitwarden.vfly2.com$request_uri;
    }
}

server {
    listen 443 ssl;
    server_name bitwarden.vfly2.com;

    ssl_certificate /etc/ssl/certs/bitwarden.vfly2.com.cer;
    ssl_certificate_key /etc/ssl/private/bitwarden.vfly2.com.key;

    location /.well-known/acme-challenge/ {
        root /var/www/html;
    }

    location / {
        proxy_pass http://localhost:8888;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;

        # WebSocket 必须
        proxy_http_version 1.1;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection 'Upgrade';
    }
}
sudo ln -s /etc/nginx/sites-available/bitwarden /etc/nginx/sites-enabled/bitwarden

检查配置

sudo nginx -t

重启生效

sudo systemctl reload nginx

备份和迁移

只需要备份整个根目录即可,在本文中,就是 ~/myserve/vaultwarden

迁移新服务器,就把 ~/myserve/vaultwarden 复制到新服务器,再执行一遍上面的部署过程,重设域名解析,其他什么都不需要动,就可以了。具体流程如下:

关闭原来旧的服务端

docker compose down

在旧的服务端,通过 rsync 把原目录整个复制到新服务器上,

sudo rsync -avuzP -e "ssh -p 22" -r ~/myserve/vaultwarden root@1.2.3.4:/home/hoo/myserve/

在新服务器上

docker compose pull

启动新服务端

docker compose up -d

原文链接: https://yanh.tech/2025/04/11/vaultwarden-installation

版权声明:本博客所有文章除特別声明外,均为 AhFei 原创,采用 CC BY-NC-SA 4.0 许可协议。转载请注明来源 技焉洲 (yanh.tech)

保持更新 ٩(•̤̀ᵕ•̤́๑)ᵒᵏᵎᵎᵎᵎ 清晰恒益的实用技能,欢迎使用 RSS 订阅,如果能留言互动就更好了。

可在 Telegram 群组 https://t.me/vfly2 交流依文章步骤遇到的问题。

暂无评论

发送评论 编辑评论


				
|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
上一篇
下一篇