免费自建密码库!新手 1Panel 简单部署 Bitwarden 服务器教程 (开源替代 1Password)
最近 1Password 宣布全面涨价,引起了很大的热议。我们除了可以切换到 Sticky Password、EnPass、RoboForm 等替代品外,其实搭建自己的密码库也许是更好的选择。
对于有一定动手能力的同学,部署一个私有的 Bitwarden (Vaultwarden) 自托管密码管理器并不难。它开源免费,数据完全自主可控,同时支持手机电脑跨平台同步+浏览器一键登录插件,可以导入 1Password 或 Chrome 浏览器保存的密码。只需要一台 VPS 服务器 + 域名即可自建……
「自建服务器推荐:RackNerd | DMIT | 查看更多」
密码管理器:Sticky Password | EnPass | RoboForm
安全性拉满!搭建完全自己掌控的密码管理器 Vaultwarden
很多人被 Bitwarden 和 Vaultwarden 两个名字搞混。Bitwarden 是著名的开源密码管理软件,异次元曾发布过《旧版的 Bitwarden“官方服务器端”部署安装教程》,其缺点是“比较重”、资源占用多,后来有开发者用 Rust 语言重写了“更高性能、更低资源占用、更小巧”的开源实现——Vaultwarden。

比起官方原版,Vaultwarden 更轻量速度更快,功能上几乎没任何区别。Vaultwarden 完美兼容 Bitwarden 的全套密码管理器 APP 客户端 (Windows、macOS、Linux、iOS、Android) 以及浏览器填充插件。
换句话说,VW 就是更小更强的免费开源“兼容版自建 Bitwarden 服务器端”,对服务器的内存和性能要求更小,更适合广大 VPS 小鸡 的用户使用!因此,你不需要部署相对笨重的 Bitwarden 的官方服务器端,你只需将轻快的 Vaultwarden 部署到自己的 VPS 上即可做到“我的密码数据我做主”,也不必担心 1Password 订阅服务涨价了。
开始准备:
- 一台 VPS 服务器:推荐 DMIT (线路优秀)、RackNerd (性价比) 或 HostDare、CloudCone、Vultr 等等这些 热门的 VPS 主机;国内主机需备案:推荐 腾讯云、阿里云。
- 注册一个域名:推荐这些域名注册商,用于绑定访问以及申请 SSL 证书;
- SSH 客户端:如 Xshell、Xterminal、iShellPro、Putty 等,用于首次连接服务器,安装「1Panel 面板」或「宝塔面板」
- Linux 系统推荐使用:Ubuntu、Debian、Rocky、AlmaLinux
- 理解概念:域名解析、反向代理(OpenResty / Nginx)、SSL 证书
考虑到全程命令行对新手会有压力,因此本教程以「1Panel 面板」为例 (用「宝塔面板」也可参考),它提供了图形界面,内置 Docker 应用商店、 SSL 证书自动申请、数据备份等功能,全部需求都是开箱即用,操作大幅简化!
步骤 1、安装 1Panel 面板
1Panel 面板是可免费使用,具体参考:《在 VPS 服务器上安装 1Panel 面板教程》。1Panel 面板自带 Docker 管理界面,比命令行省事很多!当然你可以根据喜好,选择「宝塔面板」
步骤 2: 先装 OpenResty(反代必备)
- 进 应用商店 > 实用工具,搜索 OpenResty,一键安装。 你可以将它看作是
Nginx的“升级版”,能帮你在 1Panel 里管理网站+开启 HTTPS,我们要用它来反代 Vaultwarden。
![1Panel 安装 OpenResty]()
步骤 3: 安装 Vaultwarden 容器
两种超简单方式,随便挑:
方式一:应用商店一键装(推荐小白)
- 应用商店 > 全部,搜索 Bitwarden(面板里还叫这个,实际背后容器就是 Vaultwarden)
![1Panel 安装 Bitwarden 容器]()
- 如上图,填写名称、设置端口号、打开端口外部访问
- 允许「端口外部访问」(必须勾选)
- 默认端口
40031(你可以改,但必须记牢,后用) - 版本选择最新的一个即可
- 确认后开始安装。网络状况不同,每台机器 Docker 拉取镜像的速度不一,耐心等待。
方式二:创建 Docker 编排(适合需要自定义配置的用户)
- 容器 > 编排 > 创建,填
valtwarden-compose.yml:
services: vaultwarden: image: vaultwarden/server:latest container_name: vaultwarden restart: unless-stopped environment: DOMAIN: "https://你的域名" # 提前填好,必须带 https volumes: - ./my-data/:/data/ # 数据持久化目录 ports: - 40031:80 # 改成你喜欢的端口,如 40031:80 - 确认,保存后等待其启动。数据会保存在
my-data目录,日后备份这个目录即可。
公网访问的前提:
容器启动后,容器列表就能看到 bitwarden,说明服务端已经准备好。但目前容器的访问地址是 http://127.0.0.1:40031 仅限在本机内部访问。想要「公网访问」就必须要有公网 IP + HTTPS 证书两大前提。
VPS 服务器自带公网 IP;而 HTTPS 访问,需要 1Panel 申请免费证书 + 使用 OpenResty 反向代理实现。(NAS + 家庭宽带则需要额外配置「内网穿透」,复杂度会有所提升,不延伸赘述了)
步骤 4: 申请 HTTPS 证书(公网访问必须)
为了安全性,Vaultwarden 时强制公网访问时必须通过 HTTPS 访问!1Panel 自带免费证书申请功能;下面我们先来申请 HTTPS 证书 (配置 SSL 证书)
设置域名解析
- 设置域名解析:先注册一个域名,设置一个你喜欢的网址,假设是:
bw.你的域名.com将此 A 记录解析到你的服务器公网 IP 地址,等待后面备用。
1Panel > 网站 > 证书 点击创建:
- 创建 ACME 账户 > 创建:填入你的邮箱,类型选
Let's Encrypt,确认保存
![1Panel 申请 SSL 证书 ACME 账户]()
- 创建 DNS 账户:你的域名用哪家 DNS 就选谁,根据要求填写。比如选 Cloudflare 需要填写 API Token。下面我将以 Cloudflare 为示例,教你怎样获取其“用户 API Token”
![1Panel 申请 SSL 证书 DNS 账户]()
- 获取 Cloudflare 账户的 API Token 方法:前往 用户 API 令牌 > 创建令牌 > 编辑区域 DNS > 使用模板
编辑区域 DNS
![Cloudflare 用户 API 令牌]()
- 其中将
区域资源选择成所有区域(这里是给 API Token 赋予“编辑账户内全部域名 DNS 的权限”),继续下一步,即可获得 Token 令牌。
![Cloudflare 用户 API 令牌设置权限]()
- 复制你获取到的“Cloudflare 用户 API 令牌”,点复制,填回刚才创建 DNS 账户里去:
![Cloudflare 用户 API 令牌]()
- 网站 > 证书 > 申请证书:创建好 ACME 账户和 DNS 账户,即可开始申请证书
![1Panel 申请 SSL 证书]()
主域名填你的域名如iplaysoft.com(无前缀),其他域名填*.iplaysoft.com,这样申请的是「通配符证书」,日后能复用。如上图的设置,选择建立好的 Acme 账户和 DNS 账号,并勾选上「自动续签」点击确定就行。 - 确定后,需等待程序运行一会,才能申请成功。
申请免费 SSL 证书的难点:
申请免费 SSL 证书的难点是域名 DNS 账户密钥和用户权限的正确配置,不同 DNS 后台管理方式不一样,像 Cloudflare 需要获取“用户 API Token”,而腾讯云、阿里云等需要新建 CAM 子用户+给予 DNS 编辑权限+获取用户ID+密钥的形式访问,大家可以自行搜索解决。
证书申请过程如果失败:先检查 DNS 账户的密钥是否正确+有无编辑 DNS 的权限,很多人都错在这一步;如长时间卡住不动,可依次尝试 DNS服务器1 填入 119.29.29.29、跳过 DNS 校验、禁用 CNAME。
步骤 5:配置 OpenResty 反向代理
通过 OpenResty 创建网站反向代理,可以轻松搞定 HTTPS 访问:
- 网站 > 创建网站 > 反向代理
![1Panel 设置反向代理]()
- 域名:填写你已设好解析的域名,比如前面的
bw.你的域名.com - 勾选「启用 HTTPS」
- 证书:选择你刚才申请成功的 SSL 证书
- 代理地址:
127.0.0.1:40031(注意端口号需正确) - 确认保存
- 域名:填写你已设好解析的域名,比如前面的
- 确保 HTTPS 访问开启,并选对正确的证书:
![1Panel 设置 SSL 证书]()
- 确认无误,现在用浏览器访问前面设置好的
https://bw.你的域名.com就能打开 Vaultwarden 的登录页了
![安装 Bitwarden 教程]()
- 恭喜你!已经搞定安装了!「创建账户」注册自己的账号即可开始使用 Bitwarden 了。
关闭 Bitwarden 公众注册 + 开启高级管理面板
因为自建的 Bitwarden 基本上都是打算自己私人用的。所以,在部署完毕先注册好自己的账号之后,就可以关闭 Bitwarden 账号注册功能了。这需要给容器添加“环境变量”。这里推荐手工编辑“编排”文件,可以防止更新容器版本时丢失此配置。设置的方法如下图:

我将这段配置放到下面供你复制粘贴。但要注意:YAML 格式要求必须「缩进」层级正确!比如 environment 要和 container_name 同一级对齐:
environment:
- SIGNUPS_ALLOWED=false
- ADMIN_TOKEN=管理页密码(千万别太简单)
这两个环境变量都是可选的,分别是 SIGNUPS_ALLOWED 禁止注册新用户;ADMIN_TOKEN 开启管理面板,可以配置 Bitwarden 的高级设置 (可配置邀请码、用户组、2FA 等)。
至此全部搞定!Enjoy:

你可以通过浏览器使用这个 Vaultwarden 网页版了!也可以在“工具 > 导入”里导入 1Password 的备份、Chrome 浏览器的密码等。

之后,就可以下载 Bitwarden 的桌面应用、浏览器插件 和手机 APP,去登录使用了。登录时选择“自托管”,输入你的前面设置好的比如:bw.你的域名.com 即可。

注意事项(踩坑避雷)
- 公网访问必须 HTTPS 证书 + 域名,反代的端口要正确
127.0.0.1:端口 - 容器已启动但无法访问,检查防火土啬配置和安全组策略放行
- 服务器有公网 IP 更简单;家庭宽带需要配置内网穿透+证书全配。
- Vaultwarden 比官方版服务器端内存要求低很多,且完美兼容客户端,不建议安装官方版
- 首次注册主账号之后,建议关闭公众注册,避免他人滥用
总结:
搞定!现在你的专属密码库稳了!手机、电脑、客户端以及浏览器插件都能无缝同步密码并且实现一键登录了。在 Bitwarden 的 APP 上登录时选择“自托管服务器”填入你设置的域名即可。
自建的 Bitwarden 数据安全自控,成本仅需一台 VPS 服务器+域名,而且配好之后还能搭建更多的服务,非常划算!!被狠狠种草了吧?有问题评论区问,玩得开心。
/ 关注 “异次元软件世界” 微信公众号,获取最新软件推送 /
如本文“对您有用”,欢迎随意打赏异次元,让我们坚持创作!
赞赏一杯咖啡












