外观
Bitwarden部署教程
参考资料
仓库地址:bitwarden
Docker Hub 地址:Bitwarden | Docker Hub
官方文档地址:Linux Standard Deployment | Bitwarden
非官方中文文档地址:Bitwarden 帮助中心中文版
环境变量参考链接:Self-host an Organization | Bitwarden
参考文章:私人密码管理储存库!Bitwarden 部署安装教程
部署教程
创建 Bitwarden 本地用户和目录
我们建议使用专用服务帐户配置您的 Linux 服务器,从中安装和运行 Bitwarden。这样做会将您的 Bitwarden 实例与服务器上运行的其他应用程序隔离开来。
- 创建一个 bitwarden 用户:
sudo adduser bitwarden
- 为 bitwarden 用户设置密码(强密码):
sudo passwd bitwarden
- 创建一个 docker 组(如果尚不存在):
sudo groupadd docker
- 将 bitwarden 用户添加到 docker 组:
sudo usermod -aG docker bitwarden
- 创建一个 bitwarden 目录:
sudo mkdir /opt/bitwarden
- 设置
/opt/bitwarden
目录的权限:
sudo chmod -R 700 /opt/bitwarden
- 将 bitwarden 用户设置为
/opt/bitwarden
目录的所有者:
sudo chown -R bitwarden:bitwarden /opt/bitwarden
安装 Bitwarden
- 获取安装 ID 和密钥 https://bitwarden.com/host
- Admin Email Address:输入邮箱地址。
- Data Region:选择
US
或EU
都可以。
- 切换到
bitwarden
用户
su bitwarden
- 将 Bitwarden 安装脚本
bitwarden.sh
下载到服务器上:
curl -Lso bitwarden.sh "https://func.bitwarden.com/api/dl/?app=self-host&platform=linux" && chmod 700 bitwarden.sh
提示
由于网络原因,下载bitwarden.sh
速度较慢,可以在本地下载后上传到服务器,进行如下操作。
# 进入`bitwarden.sh`所在目录
cd /home/bitwarden
# 查看`bitwarden.sh`的属性
lsattr bitwarden.sh
# 输出:--------------e------- bitwarden.sh
# 尝试移除 e 属性
chattr -e bitwarden.sh
# 添加执行权限
chmod +x bitwarden.sh
- 运行安装程序脚本
./bitwarden.sh install
运行安装程序会有如下提示:
- 输入您的 Bitwarden 实例的域名: 通常,此值应为配置的 DNS 记录。
- 您想使用 Let's Encrypt 生成免费的 SSL 证书吗?(是/否): 指定以使用 Let's Encrypt 生成受信任的 SSL 证书。系统将提示您输入来自 Let's Encrypt 的过期提醒的电子邮件地址。有关更多信息,请参阅证书选项。
y
或者,指定并使用 Do you have a SSL certificate to use? 选项。n
- 输入 Bitwarden 实例的数据库名称(例如 vault): 自行输入。
- 输入您的安装 ID: 使用 https://bitwarden.com/host 中的有效电子邮件检索安装 ID。
- 输入您的安装密钥: 使用 https://bitwarden.com/host 中的有效电子邮件检索安装密钥。
- 输入您所在的地区(美国/欧盟): 输入美国或欧盟,根据获取ID和密钥时选择的地区输入。
- 您有要使用的 SSL 证书吗?(是/否): 如果您已经拥有自己的 SSL 证书,请指定必要的文件并将其放置在目录中。系统将询问您是否是受信任的 SSL 证书 (y/n)。
- 是否要生成自签名 SSL 证书?(是/否): 指定让 Bitwarden 为您生成自签名证书。此选项仅建议用于测试。 不推荐
- 使用自己的SSL证书
要在./bitwarden.sh start
前将自己的证书放入./bwdata/ssl/example.com
目录下;
证书需要三部分:服务器证书certificate.crt
,中间证书ca.crt
,私钥private.key
;
如果自行申请的证书只有fullchain.pem
和privkey.pem
,则需要将fullchain.pem
拆分为服务器证书certificate.crt
,中间证书ca.crt
,其中在fullchain.pem
第一个-----BEGIN CERTIFICATE-----
和-----END CERTIFICATE-----
中间的内容为certificate.crt
,在fullchain.pem
第二个-----BEGIN CERTIFICATE-----
和-----END CERTIFICATE-----
中间的内容为ca.crt
。
安装后配置
配置您的环境可能涉及对两个文件进行更改;环境变量文件和安装文件:
环境变量(必需)
Bitwarden 的某些功能不是由bitwarden.sh
脚本配置的。通过编辑环境文件(位于./bwdata/env/global.override.env
.您至少应该替换以下值:
...
globalSettings__mail__smtp__host=<placeholder>
globalSettings__mail__smtp__port=<placeholder>
globalSettings__mail__smtp__ssl=<placeholder>
globalSettings__mail__smtp__username=<placeholder>
globalSettings__mail__smtp__password=<placeholder>
...
adminSettings__admins=
...
替换globalSettings__mail__smtp...=
占位符以连接到 SMTP 邮件服务器,该服务器将用于向新用户发送验证电子邮件并向组织发送邀请。添加电子邮件地址adminSettings__admins=
将提供对系统管理员门户的访问。
编辑后global.override.env
,运行以下命令以应用更改:
./bitwarden.sh restart
安装文件
Bitwarden 安装脚本使用 中的设置./bwdata/config.yml
来生成安装所需的资产。某些安装方案(例如在具有备用端口的代理后面安装)可能需要对config.yml
标准安装期间未提供的调整进行调整。
根据需要进行编辑config.yml
并通过运行以下命令应用更改:
./bitwarden.sh rebuild
启动 Bitwarden
完成前面的所有步骤后,启动您的 Bitwarden 实例:
./bitwarden.sh start
提示
首次启动 Bitwarden 可能需要一些时间,因为它会从 Docker Hub 下载所有映像。
验证所有容器是否正常运行:
docker ps