Skip to main content

Настройка TLS

Вы можете настроить протокол TLS в your GitHub Enterprise Server instance, чтобы можно было использовать сертификат, подписанный доверенным центром сертификации.

Сведения о протоколе TLS

Протокол TLS, пришедший на замену SSL, включается и настраивается с помощью самозаверяющего сертификата при первом запуске GitHub Enterprise Server. Так как самозаверяющие сертификаты не являются доверенными для веб-браузеров и клиентов Git, эти клиенты будут отправлять предупреждения о сертификатах, пока вы не отключите TLS или не отправите сертификат, подписанный доверенным центром, таким как Let's Encrypt.

Устройство GitHub Enterprise Server отправляет заголовки HTTP Strict Transport Security при включении SSL. Отключение TLS приведет к тому, что пользователи потеряют доступ к устройству, так как браузеры не разрешают понижение уровня протокола до HTTP. Дополнительные сведения см. в статье HTTP Strict Transport Security (HSTS) в Википедии.

Предупреждение. При прекращении подключений HTTPS в подсистеме балансировки нагрузки запросы от подсистемы балансировки нагрузки к GitHub Enterprise Server также должны использовать протокол HTTPS. Понижение уровня подключения к HTTP не поддерживается.

Чтобы разрешить пользователям использовать FIDO U2F для двухфакторной проверки подлинности, вы должны включить TLS для своего экземпляра. Подробнее: Настройка двухфакторной проверки подлинности.

Предварительные требования

Чтобы использовать TLS в рабочей среде, необходимо иметь сертификат в незашифрованном формате PEM, подписанный доверенным центром сертификации.

Сертификату также потребуются альтернативные имена субъектов, настроенные для поддоменов, перечисленных в разделе Включение изоляции поддоменов, и вам нужно будет включить полную цепочку сертификатов, если сертификат был подписан промежуточным центром сертификации. Дополнительные сведения см. в статье Альтернативное имя субъекта в Википедии.

Вы можете создать запрос на подпись сертификата (CSR) для своего экземпляра с помощью команды ghe-ssl-generate-csr. Дополнительные сведения см. в статье "Программы командной строки".

Это должен быть ключ RSA, который не имеет парольную фразу. Дополнительные сведения см. в разделе Удаление парольной фразы из файла ключа.

Отправка настраиваемого сертификата TLS

Предупреждение: Настройка TLS приводит к небольшому простою your GitHub Enterprise Server instance.

  1. Из учетной записи администратора на GitHub Enterprise Server в правом верхнем углу любой страницы щелкните .

    Снимок экрана: значок ракетного корабля для доступа к параметрам администратора сайта

  2. Если вы еще не на странице "Администратор сайта", в левом верхнем углу щелкните Администратор сайта.

    Снимок экрана: ссылка "Администратор сайта" 1. На боковой панели слева нажмите Management Console . Вкладка "Management Console" на боковой панели слева 1. На боковой панели слева нажмите Проекты. Вкладка "Проекты" на боковой панели параметров 1. Выберите Только TLS (рекомендуется) . Флажок для выбора только TLS

  3. В разделе "Поддержка протокола TLS" выберите протоколы, которые вы хотите разрешить. Переключатели для выбора протоколов TLS

  4. В разделе "Сертификат" щелкните Выбрать файл, чтобы выбрать сертификат TLS или цепочку сертификатов (в формате PEM) для установки. Обычно этот файл имеет расширение PEM, CRT или CER. Кнопка для поиска файла сертификата TLS

  5. В разделе "Незашифрованный ключ" щелкните Выбрать файл, чтобы выбрать ключ RSA (в формате PEM) для установки. Этот файл обычно имеет расширение KEY. Кнопка для поиска файла ключа TLS

  6. Нажмите кнопку Сохранить параметры под левой боковой панелью.

    Снимок экрана кнопки сохранения параметров в Management Console

    Примечание. Сохранение параметров в Management Console перезапускает системные службы, что может привести к простою, заметному для пользователей.

  7. Ожидайте завершения запуска конфигурации.

    Настройка экземпляра

Сведения о поддержке Let's Encrypt

Let's Encrypt — это общедоступный центр сертификации, который выдает бесплатные автоматические сертификаты TLS, которые принимаются как доверенные браузерами, использующими протокол ACME. Вы можете автоматически получать и обновлять сертификаты Let's Encrypt на устройстве без необходимости обслуживания вручную.

Чтобы использовать автоматизацию Let's Encrypt, устройство необходимо настроить с помощью имени узла, общедоступного по протоколу HTTP. Устройству также необходимо разрешить создание исходящих HTTPS-подключений.

При включении автоматизации управления сертификатами TLS с помощью Let's Encrypt your GitHub Enterprise Server instance свяжется с серверами Let's Encrypt для получения сертификата. Для обновления сертификата серверы Let's Encrypt должны проверить управление настроенным доменным именем с помощью входящих HTTP-запросов.

Вы также можете использовать служебную ghe-ssl-acme программу командной строки в your GitHub Enterprise Server instance для автоматического создания сертификата Let's Encrypt. Дополнительные сведения см. в статье "Программы командной строки".

Настройка TLS с помощью Let's Encrypt

Чтобы использовать автоматизацию Let's Encrypt, устройство необходимо настроить с помощью имени узла, общедоступного по протоколу HTTP. Устройству также необходимо разрешить создание исходящих HTTPS-подключений.

Предупреждение: Настройка TLS приводит к небольшому простою your GitHub Enterprise Server instance.

  1. Из учетной записи администратора на GitHub Enterprise Server в правом верхнем углу любой страницы щелкните .

    Снимок экрана: значок ракетного корабля для доступа к параметрам администратора сайта

  2. Если вы еще не на странице "Администратор сайта", в левом верхнем углу щелкните Администратор сайта.

    Снимок экрана: ссылка "Администратор сайта" 1. На боковой панели слева нажмите Management Console . Вкладка "Management Console" на боковой панели слева 1. На боковой панели слева нажмите Проекты. Вкладка "Проекты" на боковой панели параметров 1. Выберите Только TLS (рекомендуется) . Флажок для выбора только TLS

  3. Выберите Включить автоматизацию управления сертификатами TLS с помощью Let's Encrypt. Флажок для включения Let's Encrypt 1. Нажмите кнопку Сохранить параметры под левой боковой панелью.

    Снимок экрана кнопки сохранения параметров в Management Console

    Примечание. Сохранение параметров в Management Console перезапускает системные службы, что может привести к простою, заметному для пользователей.

  4. Ожидайте завершения запуска конфигурации.

    Настройка экземпляра 1. На боковой панели слева нажмите Проекты. Вкладка "Проекты" на боковой панели параметров

  5. Нажмите кнопку Запросить сертификат TLS. Кнопка запроса сертификата TLS

  6. Подождите, пока состояние изменится со "STARTED" на "DONE". Состояние Let's Encrypt

  7. Щелкните Save Configuration (Сохранить конфигурацию).