我们经常发布文档更新,此页面的翻译可能仍在进行中。有关最新信息,请访问英文文档。如果此页面上的翻译有问题,请告诉我们
文章版本: Enterprise Server 2.15

此版本的 GitHub Enterprise 将停止服务 此版本的 GitHub Enterprise 已停止服务 2019-10-16. 即使针对重大安全问题,也不会发布补丁。 For better performance, improved security, and new features, upgrade to the latest version of GitHub Enterprise. For help with the upgrade, contact GitHub Enterprise support.

配置 TLS

您可以在 您的 GitHub Enterprise Server 实例 上配置传输层安全 (TLS),以便使用由可信证书颁发机构签名的证书。

本文内容

关于传输层安全

当 GitHub Enterprise Server 首次启动时,会启用 TLS(替代了 SSL)并通过自签名证书进行配置。 由于自签名证书不受 Web 浏览器和 Git 客户端的信任,因此这些客户端将报告证书警告,直至您禁用 TLS 或上传由 Let's Encrypt 等可信颁发机构签名的证书。

GitHub Enterprise Server 设备将在 SSL 启用时发送 HTTP 严格传输安全标头。 禁用 TLS 会导致用户无法访问设备,因为用户的浏览器将不允许协议降级为 HTTP。 更多信息请参阅 Wikipedia 上的“HTTP 严格传输安全 (HSTS)”。

Warning: When terminating HTTPS connections on a load balancer, the requests from the load balancer to GitHub Enterprise Server also need to use HTTPS. Downgrading the connection to HTTP is not supported.

要允许用户使用 FIDO U2F 进行双重身份验证,您必须为实例启用 TLS。 更多信息请参阅“配置双重身份验证”。

基本要求

要在生产中使用 TLS,您必须具有由可信证书颁发机构签名的未加密 PEM 格式的证书。

您的证书还需要为“启用子域隔离”中列出的子域配置使用者可选名称,如果证书已由中间证书颁发机构签名,将需要包含完整的证书链。 更多信息请参阅 Wikipedia 上的“使用者可选名称”。

上传自定义 TLS 证书

  1. In the upper-right corner of any page, click .

    用于访问站点管理员设置的火箭图标

  2. 在左侧边栏中,单击 管理控制台

    在左侧边栏中的 管理控制台 选项卡

  3. In the left sidebar, click Privacy.

    Privacy tab in the settings sidebar

  4. Select TLS only (recommended).

    Checkbox to choose TLS only

  5. 在“TLS Protocol support”下,选择您想要允许的协议。

    包含用于选择 TLS 协议的选项的单选按钮

  6. 在“Certificate”下,单击 Choose File,选择要安装的 TLS 证书或证书链(PEM 格式)。 此文件通常采用 .pem.crt.cer 扩展名。

    用于查找 TLS 证书文件的按钮

  7. 在“Unencrypted key”下,单击 Choose File,选择要安装的 TLS 密钥(PEM 格式)。 此文件通常采用 .key 扩展名。

    用于查找 TLS 密钥文件的按钮

    警告:您的 TLS 密钥不得包含密码。 更多信息请参阅“将密码从密钥文件中移除”。

  8. Under the left sidebar, click Save settings.

    Save settings 按钮

关于 Let's Encrypt 支持

Let's Encrypt 是公共证书颁发机构,他们使用 ACME 协议颁发受浏览器信任的免费、自动化 TLS 证书。 您可以在设备上自动获取并续订 Let's Encrypt 证书,无需手动维护。

To use Let's Encrypt automation, your appliance must be configured with a hostname that is publicly accessible over HTTP. The appliance must also be allowed to make outbound HTTPS connections.

在您启用通过 Let's Encrypt 自动进行 TLS 证书管理后,您的 GitHub Enterprise Server 实例 将与 Let's Encrypt 服务器通信,以获取证书。 要续订证书,Let's Encrypt 服务器必须通过入站 HTTP 请求验证已配置域名的控制。

您还可以在 您的 GitHub Enterprise Server 实例 上使用 ghe-ssl-acme 命令行实用程序自动生成 Let's Encrypt 证书。 更多信息请参阅“命令行实用程序”。

使用 Let's Encrypt 配置 TLS

To use Let's Encrypt automation, your appliance must be configured with a hostname that is publicly accessible over HTTP. The appliance must also be allowed to make outbound HTTPS connections.

  1. In the upper-right corner of any page, click .

    用于访问站点管理员设置的火箭图标

  2. 在左侧边栏中,单击 管理控制台

    在左侧边栏中的 管理控制台 选项卡

  3. In the left sidebar, click Privacy.

    Privacy tab in the settings sidebar

  4. Select TLS only (recommended).

    Checkbox to choose TLS only

  5. 选择 Enable automation of TLS certificate management using Let's Encrypt

    Checkbox to enable Let's Encrypt

  6. Under the left sidebar, click Save settings.

    Save settings 按钮

  7. In the left sidebar, click Privacy.

    Privacy tab in the settings sidebar

  8. 单击 Request TLS certificate

    Request TLS Certificate 按钮

  9. 单击 Save configuration

问问别人

找不到要找的内容?

联系我们