Linux 标准部署

这篇文章将指导您安装和部署 Bitwarden 到您自己的 Liunx 服务器。Bitwarden 也可以安装和部署在 Windows 机器上。请查看 Bitwarden 软件发布支持文档。

要求

最低
推荐

处理器

x64, 1.4GHz

x64, 2GHz 双核

内存

2 GB RAM

4 GB RAM

存储

12 GB

25 GB

Docker 版本

Engine 26+ 以及 Composeª

Engine 26+ 以及 Composeª

ª - 下载 Docker Engine 时,Docker Compose 会作为插件自动安装。

标准自托管服务器部署默认附带 MSSQL Express 镜像,但您可以选择使用外部数据库。默认数据库的最大关系数据库大小arrow-up-right为 10GB,不需要额外的许可。

circle-check

概述

以下是本文中安装步骤的摘要。本节中的链接将跳转至详细的安装步骤部分:

1、配置您的域名。设置您的域名 DNS 记录指向您的主机,并打开主机上的 80 和 443 端口。

2、在您的主机上安装 Docker 和 Docker Compose

3、创建 Bitwarden 用户和目录

4、从 https://bitwarden.com/hostarrow-up-right 获取安装 ID 和密钥用于安装过程。更多详细信息,请参阅我的安装 ID 和安装密钥是用来干什么的?

5、在您机器上安装 Bitwarden

6、在 ./bwdata/env/global.override.env 中调整设置以配置您的环境

circle-check

7、启动您的实例

8、在网页浏览器中打开您配置的域名来测试您的安装。

9、部署完成后,我们建议定期备份您的服务器检查系统更新

安装步骤

circle-info

Bitwarden 要求在整个部署过程中始终使用 HTTP 或 HTTPS。混合使用协议(例如,代理服务器使用 HTTPS,内部使用 HTTP)会导致连接、身份验证和同步错误。我们建议在生产环境中使用 HTTPS,仅在测试环境中使用 HTTP。

配置您的域名

默认情况下,Bitwarden 通过本地主机上的 80 (http) 和 443 (https) 端口提供服务。您应该打开这些端口,以便可以从网络内部和/或外部访问 Bitwarden。如果您愿意,也可以在安装过程中选择使用其他端口。

我们建议配置一个带 DNS 记录的域名(例如 bitwarden.example.com)指向您的托管主机,特别是当您通过互联网提供 Bitwarden 服务时。

安装 Docker 和 Docker Compose

使用一组 Docker 容器arrow-up-right在您的机器上部署和运行 Bitwarden。Bitwarden 可以使用任何 Docker 版本或计划运行。评估哪个版本最适合你的安装。容器的部署是通过 Docker Composearrow-up-right 来协调的。下载 Docker Engine 时,Docker Compose 会作为插件自动安装。

下载 Linux 版 Docker Enginearrow-up-right

创建 Bitwarden 本地用户和目录

Bitwarden 建议在您的 Linux 服务器上配置一个专用的 bitwarden 服务账户,用来安装和运行 Bitwarden。这样做可以将您的 Bitwarden 实例与服务器上运行的其他应用程序隔离开来。更多信息,请参阅 Docker 的用于 Linux 的后安装步骤arrow-up-right文档。

1、创建 bitwarden 用户:

2、为 bitwarden 用户设置密码(强密码):

3、创建 docker 组(如果它尚不存在):

4、将 bitwarden 用户添加到 docker 组:

5、创建 bitwarden 目录:

6、授予 /opt/bitwarden 目录权限:

7、授予 bitwarden 用户对 /opt/bitwarden 目录的所有权:

安装 Bitwarden

triangle-exclamation

Bitwarden 提供了一个 Shell 脚本,可以轻松地在 Linux 和 macOS(Bash)或 Windows(PowerShell)上安装。完成以下步骤以使用 Shell 脚本安装 Bitwarden:

1、将 Bitwarden 安装脚本 (bitwarden.sh) 下载到您主机上:

2、运行安装脚本。这将相对于 bitwarden.sh 的位置创建 ./bwdata 目录:

3、完成安装程序中的提示:

  • Enter the domain name for your Bitwarden instance(输入您的 Bitwarden 实例的域名): 通常,此值应该是已配置的 DNS 记录。

  • Do you want to use Let's Encrypt to generate a free SSL certificate? (y/n)(您想使用 Let's Encrypt 生成免费的 SSL 证书吗?): 指定 y 来使用 Let's Encrypt 生成一个可信的 SSL 证书。您会被提示输入一个电子邮箱地址,以便从 Let's Encrypt 获取到期提醒。更多信息,请参阅证书选项

    或者,指定 n 并使用 Do you have a SSL certificate to use? 选项。

  • Enter your installation id(输入您的安装 ID): 通过 https://bitwarden.com/hostarrow-up-right 使用一个有效的电子邮件地址来获取安装 ID。更多详细信息,请参阅我的安装 ID 和安装密钥是用来干什么的?

  • Enter your installation key(输入您的安装密钥):

    通过 https://bitwarden.com/hostarrow-up-right 使用一个有效的电子邮箱地址来获取安装密钥。更多详细信息,请参阅我的安装 ID 和安装密钥是用来干什么的?

  • Enter your region (US/EU)(输入您的区域 (US/EU)): 输入 US 或 EU,具体取决于您将用于许可付费功能的云端服务器,仅适用于您将自托管账户或组织连接到付费订阅的情况。

  • Do you have a SSL certificate to use? (y/n)(您拥有自己的 SSL 证书吗?): (仅当选择 n 时才会显示 Do you want to use Let's Encrypt to generate a free SSL certificate?)如果您已经有自己的 SSL 证书,请指定 y,并将必要的文件放在 /.bwdata/ssl/your.domain 目录下。您会被问到是否使用受信任的 SSL 证书 (y/n)。更多信息,请参阅证书选项

    或者,指定 n 并使用 self-signed SSL certificate? 选项,这只是为了测试目的而推荐的。

  • Do you want to generate a self-signed SSL certificate? (y/n)(您想生成一个自签名证书吗?): (仅当选择 n 时才会显示 Do you have a SSL certificate to use?)指定 y 让 Bitwarden 为您生成一个自签名证书。这个选项只推荐用于测试。更多信息,请参阅证书选项

    如果您指定 n,您的实例将不使用 SSL 证书,您需要使用前置 HTTPS 代理来安装,否则 Bitwarden 应用程序将无法正常运行。

安装后配置

配置您的环境可能涉及对两个文件进行更改:一个环境变量文件和一个安装文件:

环境变量(必须)

安装程序 Bitwarden.sh 未配置 Bitwarden 的某些功能。通过编辑位于 ./bwdata/env/global.override.env 的环境文件来配置这些设置。至少,您应该替换以下值

替换 globalSettings__mail__smtp...= 的占位符将配置 SMTP 邮件服务器,该服务器将用于向新用户发送验证电子邮件和向组织发送邀请。将电子邮件地址添加到 adminSettings__admins= 将提供对管理门户的访问权限。

编辑 global.override.env 后,运行以下命令以使更改生效:

安装文件

Bitwarden 安装脚本使用 ./bwdata/config.yml 中的设置来生成必要的资产,以用于安装。某些安装场景(例如,在代理服务器后面使用备用端口进行安装)可能需要对 config.yml 进行调整,这些调整在标准安装过程中没有提供。

根据需要编辑 config.yml 文件,并使用以下命令以使更改生效:

启动 Bitwarden

完成上面的所有步骤后,启动您的 Bitwarden 实例:

circle-info

首次启动 Bitwarden 时,可能会花费一些时间,因为它会从 Docker Hub 下载所有镜像。

验证所有容器是否正常运行:

恭喜你!Bitwarden 现在已启动并运行在您指定的域名(如上面的示例 https://bitwarden.example.com)上了。在网页浏览器中访问网页密码库以确认它是否已经正常工作。

现在,您可以注册一个新账户并登录了。您需要配置 smtp 环境变量(请参阅环境变量)以验证新账户的电子邮箱地址。

circle-check

脚本命令参考

Bitwarden 的安装脚本(bitwarden.shbitwarden.ps1)具有以下可用的命令:

circle-info

PowerShell 用户将以前缀-(开关)运行命令。例如.\bitwarden.ps1 -start

命令
描述

install

启动安装程序。

start

启动所有容器。

restart

重新启动所有容器(与 start 相同)。

stop

停止所有容器。

update

更新所有容器和数据库。

updatedb

更新/初始化数据库。

updaterun

更新 run.sh 文件。

updateself

更新主脚本。

updateconf

更新所有容器,而无需重新启动正在运行的实例。

uninstall

在执行此命令之前,系统会提示您保存数据库文件。选 y 将创建一个包含最新备份的数据库的 tar 文件。

停止容器,删除 bwdata 目录及其所有内容,并删除临时卷。执行后,系统会询问您是否还要清除所有 Bitwarden 镜像。

compresslogs

将所有服务器日志或指定日期范围内的服务器日志的压缩包下载到当前目录。

例如,使用 ./bitwarden.sh compresslogs 20240304 20240305 下载 2024 年 3 月 4 日至 2024 年 3 月 5 日的日志。

renewcert

续签证书。

rebuild

重建从 config.yml 生成的安装资产。

help

列出所有命令。

下一步

最后更新于