> For AI agents: the complete documentation index is available at https://docs.vps.town/llms.txt, the full documentation bundle is available at https://docs.vps.town/llms-full.txt.

# 在 VPS.Town 上部署 Vaultwarden 密码管理器完全指南

:::tip 温馨提示

本文由用户 `biebiele` 撰写，并已加入 `VPS.Town 优秀原创文章激励计划`，未经允许不得转载。

本文已通过 [VPS.Town 社区文章投稿及奖励规则 (试行稿)](https://docs.vps.town/kb/community.md) 审核，并获得 `--` 奖励。

:::

:::details 📖 本文目录

[](#前言)[](#vaultwarden-的主要特点)[](#1-安装-docker-和-docker-compose)[](#2-安装-vaultwarden)[](#3-配置反向代理)[](#4-账户设置和浏览器插件使用)[](#41-创建账户)[](#42-安装浏览器扩展)[](#5-安全建议)[](#6-故障排除)[](#61-常见问题)[](#62-日志查看)[](#7-备份与恢复)[](#71-备份数据)[](#72-恢复数据)[](#8-更新-vaultwarden)
:::

## 前言

在当今数字化时代，我们每天都需要使用大量的账号和密码。使用简单或重复的密码会带来严重的安全风险，而记住众多复杂密码又几乎不可能。这就是为什么我们需要一个可靠的密码管理工具。

Vaultwarden 是 Bitwarden 的一个非官方实现，它是一个开源的密码管理解决方案，允许您安全地存储和管理您的密码、信用卡信息、身份信息和其他敏感数据。与商业密码管理器不同，Vaultwarden 可以自托管，这意味着您的数据完全由您自己控制，不依赖于第三方服务。

:::tip 为什么选择 Vaultwarden

相比其他密码管理工具，Vaultwarden 具有以下优势：

- 完全开源，代码透明可审计
- 可以完全控制自己的数据
- 资源占用低，适合在 VPS 上运行
- 支持所有主流平台和浏览器

:::

### Vaultwarden 的主要特点：

- **开源且免费**：完全开源，无需支付订阅费用
- **自托管**：您的数据存储在您自己的服务器上，提高隐私保护
- **跨平台支持**：提供 Windows、macOS、Linux、iOS 和 Android 客户端
- **浏览器扩展**：支持 Chrome、Firefox、Safari 等主流浏览器
- **强大的加密**：使用 AES-256 加密、PBKDF2 和 SHA-256 哈希算法
- **资源占用低**：相比官方 Bitwarden 服务器，Vaultwarden 对系统资源要求更低
- **功能丰富**：支持密码生成、安全笔记、身份信息管理、文件附件等

:::warning 安全提示

在开始部署之前，请确保：

1. 您的服务器已经配置了防火墙
2. 使用 HTTPS 访问 Vaultwarden
3. 定期备份您的数据
4. 使用强密码保护您的账户

:::

本教程将指导您如何使用 Docker 在自己的服务器上部署 Vaultwarden，并进行基本配置和使用。

:::tip 适用环境
本教程适用于 Ubuntu 22.04 系统，其他 Linux 发行版可能需要调整部分命令。
:::

## 1. 安装 Docker 和 Docker Compose

```bash
# 更新软件包索引，下载 Docker 官方 GPG 密钥，并允许所有人读取
sudo apt-get update
sudo apt-get install ca-certificates curl
sudo install -m 0755 -d /etc/apt/keyrings
sudo curl -fsSL https://download.docker.com/linux/ubuntu/gpg -o /etc/apt/keyrings/docker.asc
sudo chmod a+r /etc/apt/keyrings/docker.asc

# 将 Docker 仓库添加到 Apt 源列表
echo \
  "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/ubuntu \
  $(. /etc/os-release && echo "${UBUNTU_CODENAME:-$VERSION_CODENAME}") stable" | \
  sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
sudo apt-get update

# 安装 docker 软件包
sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin -y

# 启动 docker 服务和开机自启
systemctl enable docker
systemctl restart docker

# 验证安装
systemctl status docker
docker compose version
```

:::tip 验证安装
如果看到类似以下输出，说明安装成功：

```
● docker.service - Docker Application Container Engine
     Loaded: loaded (/lib/systemd/system/docker.service; enabled; vendor preset: enabled)
     Active: active (running) since ...
```

:::

## 2. 安装 vaultwarden

:::note 准备工作

在开始安装之前，请确保：

1. 已经配置好域名并指向您的服务器
2. 已经安装好 nginx 并配置好 SSL 证书
3. 防火墙已开放相应端口

:::

```bash title="bash"
# 创建数据目录
mkdir -p /opt/vaultwarden
cd /opt/vaultwarden

# 创建 docker-compose.yml 文件
sudo cat > /opt/vaultwarden/docker-compose.yml <<EOF
services:
  vaultwarden:
    image: vaultwarden/server:latest
    container_name: vaultwarden
    restart: unless-stopped
    environment:
      DOMAIN: "https://vw.domain.tld/vault"  ## 修改为您自己的域名
    volumes:
      - ./vw-data/:/data/
    ports:
      - 10080:80  ## （可选）修改前面的映射端口
EOF

# 启动服务
docker compose up -d
```

执行`docker ps`查看程序启动状态
![Docker 容器运行状态检查](/assets/images/how-to-using-vaultwarden-as-password-manager-vps-town/1744816150283.png)

## 3. 配置反向代理

:::note 反向代理配置
我们建议使用 Nginx 作为反向代理，并配置 SSL 证书以确保安全。
:::

以 `nginx` 为例，修改 nginx.conf，添加类似于如下配置：

```bash
location /vault/ { # 注意这个路径和上面 docker 配置的域名路径名一致
    proxy_http_version 1.1;
    proxy_set_header Host $host;
    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_set_header X-Forwarded-Proto $scheme;
    proxy_pass http://127.0.0.1:10080;
}
```

重启 nginx：`service nginx restart`

使用浏览器访问 `https://vw.domain.tld/vault`

## 4. 账户设置和浏览器插件使用

### 4.1 创建账户

1. 点击"创建账户"
   ![创建新账户界面](/assets/images/how-to-using-vaultwarden-as-password-manager-vps-town/1744817120248.png)

2. 填写您的账户信息
   ![账户信息填写表单](/assets/images/how-to-using-vaultwarden-as-password-manager-vps-town/1744817144425.png)

:::warning 密码安全

- 使用强密码（至少 12 个字符，包含大小写字母、数字和特殊字符）
- 建议使用密码生成器生成主密码
- 妥善保管您的主密码，这是恢复账户的唯一方式

:::

3. 创建完成后，登录您的账户
   ![登录界面](/assets/images/how-to-using-vaultwarden-as-password-manager-vps-town/1744817244800.png)

### 4.2 安装浏览器扩展

1. 安装扩展
   ![浏览器扩展安装指引](/assets/images/how-to-using-vaultwarden-as-password-manager-vps-town/1744817305288.png)

2. 配置扩展信息，固定到标签栏
   ![扩展配置和固定到标签栏](/assets/images/how-to-using-vaultwarden-as-password-manager-vps-town/1744817425109.png)

3. 选择自托管，输入您的域名（如 `https://vw.domain.tld/vault`），再输入您注册的账户和密码
   ![自托管服务器配置界面](/assets/images/how-to-using-vaultwarden-as-password-manager-vps-town/1744817462403.png)

4. 之后登录或注册网站时，会提示您是否要保存密码
   ![密码保存提示界面](/assets/images/how-to-using-vaultwarden-as-password-manager-vps-town/1744817728258.png)

## 5. 安全建议

:::warning 重要安全提示

1. 定期备份您的数据目录（`/opt/vaultwarden/vw-data/`）
2. 启用双因素认证（2FA）
3. 定期更新 Vaultwarden 到最新版本
4. 监控服务器日志，及时发现异常
5. 使用强密码保护您的账户

:::

## 6. 故障排除

### 6.1 常见问题

1. **无法访问 Web 界面**

   - 检查 Docker 容器是否正常运行：`docker ps`
   - 检查端口是否正确映射：`netstat -tulpn | grep 10080`
   - 检查 Nginx 配置是否正确

2. **无法保存密码**

   - 检查浏览器扩展是否正确配置
   - 确认服务器地址是否正确
   - 检查网络连接是否正常

3. **数据同步问题**
   - 检查服务器状态
   - 尝试重新登录账户
   - 检查网络连接

### 6.2 日志查看

```bash
# 查看容器日志
docker logs vaultwarden

# 实时查看日志
docker logs -f vaultwarden
```

## 7. 备份与恢复

### 7.1 备份数据

```bash
# 创建备份目录
mkdir -p /backup/vaultwarden

# 备份数据
tar -czf /backup/vaultwarden/backup-$(date +%Y%m%d).tar.gz /opt/vaultwarden/vw-data/
```

### 7.2 恢复数据

```bash
# 停止服务
cd /opt/vaultwarden
docker compose down

# 恢复数据
tar -xzf /backup/vaultwarden/backup-YYYYMMDD.tar.gz -C /

# 重启服务
docker compose up -d
```

:::tip 备份建议

- 建议设置自动备份脚本
- 将备份文件存储在安全的位置
- 定期测试备份的可用性

:::

## 8. 更新 Vaultwarden

```bash
# 进入项目目录
cd /opt/vaultwarden

# 拉取最新镜像
docker compose pull

# 重启服务
docker compose up -d
```

:::tip 更新建议

- 更新前先备份数据
- 关注 Vaultwarden 的更新日志
- 建议定期检查更新

:::
