# 环境配置文件

环境配置文件用于在 Bitwarden 部署完成以后增减某些功能，如配置 SMTP、启用 Yubico、启用系统管理员门户、禁用用户注册等。

环境配置文件位置：`./bwdata/env/global.override.env` 。

`global.override.env` 默认内容如下：

{% code title="global.override.env" %}

```systemd
globalSettings__baseServiceUri__vault=https://vault.yourdomain.com
globalSettings__baseServiceUri__api=https://vault.yourdomain.com/api
globalSettings__baseServiceUri__identity=https://vault.yourdomain.com/identity
globalSettings__baseServiceUri__admin=https://vault.yourdomain.com/admin
globalSettings__baseServiceUri__notifications=https://vault.yourdomain.com/notifications
globalSettings__baseServiceUri__sso=https://vault.yourdomain.com/sso
globalSettings__baseServiceUri__portal=https://vault.yourdomain.com/portal
globalSettings__sqlServer__connectionString="Data Source=tcp:mssql,1433;Initial Catalog=vault;Persist Security Info=False;User ID=sa;Password=xGKRrfeggznz5SEAFKAqYPmMNCujUNdK;MultipleActiveResultSets=False;Connect Timeout=30;Encrypt=True;TrustServerCertificate=True"
globalSettings__identityServer__certificatePassword=UYS4X3urhIikdexM58pNYJ6o535gOxg4
globalSettings__attachment__baseDirectory=/etc/bitwarden/core/attachments
globalSettings__attachment__baseUrl=https://vault.yourdomain.com/attachments
globalSettings__dataProtection__directory=/etc/bitwarden/core/aspnet-dataprotection
globalSettings__logDirectory=/etc/bitwarden/logs
globalSettings__logRollBySizeLimit=
globalSettings__syslog__destination=
globalSettings__licenseDirectory=/etc/bitwarden/core/licenses
globalSettings__internalIdentityKey=jpGTst16CGZL2BTjvzL5erR2XRTqsWrhBysa4tTomf6KtVXr8TF0hcxuACxVUpt5
globalSettings__oidcIdentityClientKey=nZu60QKCaOrpPjF9jxrOHnd07d1RrWXrHp5sxv8C7CL9IBu9w9bhI5s03E8qeyiX
globalSettings__duo__aKey=KeW4TH9jYSfmdWGd0c0nROS3TXJHIMdRzNZrw7bHqw0svhE6ePL9jWBiwRRHNc1w
globalSettings__installation__id=0e39beb9-5efe-4ebb-919d-ac3e00d7b1c1
globalSettings__installation__key=QNruWGv7N0n5UY18f4ay
globalSettings__yubico__clientId=REPLACE
globalSettings__yubico__key=REPLACE
globalSettings__mail__replyToEmail=no-reply@vault.yourdomain.com
globalSettings__mail__smtp__host=REPLACE
globalSettings__mail__smtp__port=587
globalSettings__mail__smtp__ssl=false
globalSettings__mail__smtp__username=REPLACE
globalSettings__mail__smtp__password=REPLACE
globalSettings__disableUserRegistration=false
globalSettings__hibpApiKey=REPLACE
adminSettings__admins=
```

{% endcode %}

由于**环境配置文件只有在 Bitwarden 容器启动时才会被读取**，因此，更改环境配置文件后，需要运行 **`restart`**（重启）命令以使更改生效：

```shell
./bitwarden.sh restart
```

{% hint style="warning" %}
注意环境配置文件中值为 `https://vault.yourdomain.com` 的所有变量，需要全部修改其值为实际的外部访问地址（包括端口），否则当有链接跳转时，会导致错误，例如验证电子邮件的跳转链接、管理员门户的跳转链接。假设外部访问地址为 `https://vault.yourdomain.com:28443`，则环境配置文件中值为 `https://vault.yourdomain.com` 的所有变量的值都要替换为 `https://vault.yourdomain.com:28443`。
{% endhint %}

## 已有变量 <a href="#included-variables" id="included-variables"></a>

以下变量在 `global.override.env` 中已经存在：

| 变量                                               | 描述                                                                                                                                                                           |
| ------------------------------------------------ | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| globalSettings\_\_sqlServer\_\_connectionString= | 使用此字段[连接到外部 MSSQL 数据库](https://help.ppgg.in/on-premises-hosting/connect-to-an-external-mssql-database)。                                                                      |
| globalSettings\_\_oidcIdentityClientKey=         | 随机生成的 OpenID Connect 客户端密钥。有关更多信息，请参阅 [OpenID 文档](https://openid.net/specs/openid-connect-registration-1_0.html#RegistrationResponse)。                                       |
| globalSettings\_\_duo\_\_aKey=                   | 随机生成的 Duo 密钥。有关更多信息，请参阅 [Duo 文档](https://duo.com/docs/duoweb#1.-generate-an-akey)。                                                                                           |
| globalSettings\_\_yubico\_\_clientId=            | YubiCloud 验证服务或自托管的 Yubico 验证服务器的客户端 ID。如果是 YubiCloud，请在[此处](https://upgrade.yubico.com/getapikey/)获取您的客户端 ID 和安全密钥。如果是自托管，请参阅可选变量 `globalSettings__yubico__validationUrls`。 |
| globalSettings\_\_yubico\_\_key=                 | YubiCloud 验证服务或自托管的 Yubico 验证服务器的安全密钥。如果是 YubiCloud，请在[此处](https://upgrade.yubico.com/getapikey/)获取您的客户端 ID 和安全密钥。如果是自托管，请参阅可选变量 `globalSettings__yubico__validationUrls`。   |
| globalSettings\_\_mail\_\_replyToEmail=          | 用于邀请的电子邮件地址，通常为 `no_reply@smpt__host`。                                                                                                                                       |
| globalSettings\_\_mail\_\_smtp\_\_host=          | SMTP 服务器的主机名（建议）或 IP 地址。                                                                                                                                                     |
| globalSettings\_\_mail\_\_smtp\_\_port=          | SMTP 服务器使用的 SMTP 端口。                                                                                                                                                         |
| globalSettings\_\_mail\_\_smtp\_\_ssl=           | <p>（布尔值）SMTP 服务器是否使用加密协议：<br><code>true</code> ：SSL<br><code>false</code> ：TLS</p>                                                                                           |
| globalSettings\_\_mail\_\_smtp\_\_username=      | `smtp__host` 的有效用户名。                                                                                                                                                         |
| globalSettings\_\_mail\_\_smtp\_\_password=      | `smtp__host` 的有效密码。                                                                                                                                                          |
| globalSettings\_\_disableUserRegistration=       | 指定为 `true` 将禁用新用户通过注册页面在此实例上注册账户。                                                                                                                                            |
| globalSettings\_\_hibpApiKey=                    | 您的 HaveIBeenPwned (HIBP) API 密钥，参阅[此处](https://haveibeenpwned.com/API/Key)。                                                                                                  |
| adminSettings\_\_admins=                         | 用于访问系统管理员门户的电子邮件地址。                                                                                                                                                          |

## 可选变量 <a href="#optional-variables" id="optional-variables"></a>

以下变量在 `global.override.env` 中尚不存在，但可以手动添加：

| 变量                                                   | 描述                                                                                                                                                                                                                                                                                                            |
| ---------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| globalSettings\_\_logDirectory=                      | 指定日志文件的保存目录。默认为 `globalSettings__logDirectory=bwdata/logs`。                                                                                                                                                                                                                                                   |
| globalSettings\_\_logRollBySizeLimit=                | 开启滚动日志并指定滚动日志文件的大小限制，以字节为单位（例如开启并设置为 1 GB `globalSettings__logRollBySizeLimit=1073741824` ）。                                                                                                                                                                                                                  |
| globalSettings\_\_syslog\_\_destination=             | 指定要将日志文件发送到的 Syslog 服务器或端点（例如 `globalSettings__syslog__destination=udp://example.com:514`）。                                                                                                                                                                                                                   |
| globalSettings\_\_mail\_\_smtp\_\_trustServer=       | 指定为 `true` 将以显式信任 SMTP 服务器提供的证书（**不建议用于生产中**）。                                                                                                                                                                                                                                                                |
| globalSettings\_\_mail\_\_smtp\_\_sslOverride=       | 指定为 `true` 将在端口 25 上使用 SSL（而不是 TLS）。                                                                                                                                                                                                                                                                          |
| globalSettings\_\_mail\_\_smtp\_\_startTls=          | 指定为 `true` 将强制 STARTTLS（随机 TLS）。                                                                                                                                                                                                                                                                              |
| globalSettings\_\_organizationInviteExpirationHours= | 指定组织邀请到期的小时数。默认为 `120` 小时。                                                                                                                                                                                                                                                                                    |
| globalSettings\_\_yubico\_\_validationUrls\_\_0=     | <p>自托管 Yubico 验证服务器的主要地址。例如：<code>globalSettings\_\_yubico\_\_validationUrls\_\_0=<https://your.url.com/wsapi/2.0/verify></code></p><p></p><p>通过创建递增的环境变量来添加其他验证服务器 URL，例如：  <code>globalSettings\_\_yubico\_\_validationUrls\_\_1=</code>，<code>globalSettings\_\_yubico\_\_validationUrls\_\_2=</code>。</p> |
| adminSettings\_\_deleteTrashDaysAgo=                 | 指定多少天后从回收站永久删除项目。默认为 `30` 天。                                                                                                                                                                                                                                                                                  |


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://host.ppgg.in/bitwarden/environment.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
