ドキュメントには頻繁に更新が加えられ、その都度公開されています。本ページの翻訳はまだ未完成な部分があることをご了承ください。最新の情報については、英語のドキュメンテーションをご参照ください。本ページの翻訳に問題がある場合はこちらまでご連絡ください。

TLSの設定

信頼できる認証機関によって署名された証明書を使用できるように、GitHub Enterprise Server インスタンス で Transport Layer Security (TLS) を設定できます。

このガイドの内容

Transport Layer Securityについて

SSL に代わる TLS は、GitHub Enterprise Server の初回起動時に有効になり、自己署名証明書で設定されます。 自己署名証明書は Web ブラウザや Git クライアントから信頼されていないため、TLS を無効にするか、Let's Encrypt などの信頼できる機関によって署名された証明書をアップロードするまで、これらのクライアントは証明書の警告を報告します。

SSL が有効な場合、GitHub Enterprise Server アプライアンスは HTTP Strict Transport Security ヘッダーを送信します。 TLSを無効化すると、ブラウザはHTTPへのプロトコルダウングレードを許さないので、ユーザはアプライアンスにアクセスできなくなります。 詳しい情報についてはWikipediaの"HTTP Strict Transport Security"を参照してください。

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.

ユーザが2要素認証のFIDO U2Fを利用できるようにするには、インスタンスでTLSを有効化しなければなりません。 詳しい情報については「2 要素認証の設定」を参照してください。

必要な環境

プロダクションでTLSを利用するには、暗号化されていないPEMフォーマットで、信頼済みの証明書認証局によって署名された証明書がなければなりません。

また、証明書には"Subdomain Isolationの有効化"のリストにあるサブドメインに設定されたSubject Alternative Namesが必要で、中間証明書認証局によって署名されたものであれば、完全な証明書チェーンを含んでいる必要があります。 詳しい情報についてはWikipediaの"Subject Alternative Name"を参照してください。

ghe-ssl-generate-csr コマンドを使用すれば、インスタンス用の証明書署名要求 (CSR) を生成できます。 詳しい情報については、「コマンドラインユーティリティ」を参照してください。

カスタムのTLS証明書のアップロード

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

    サイトアドミン設定にアクセスするための宇宙船のアイコン

  2. 左サイドバーで [Management Console] をクリックします。

    左サイドバーの Management Console タブ

  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.

    設定保存のボタン

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. 左サイドバーで [Management Console] をクリックします。

    左サイドバーの Management Console タブ

  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(Let's Encryptを使った自動的なTLS証明書管理の有効化)を選択してください。

    [Let's Encrypt] を有効化するチェックボックス

  6. Under the left sidebar, click Save settings.

    設定保存のボタン

  7. In the left sidebar, click Privacy.

    Privacy tab in the settings sidebar

  8. Request TLS certificate(TLS証明書のリクエスト)をクリックしてください。

    [Request TLS certificate] ボタン

  9. Save configuration(設定の保存)をクリックしてください。

担当者にお尋ねください

探しているものが見つからなかったでしょうか?

弊社にお問い合わせください