Subdomain Isolationについて
Subdomain Isolationは、クロスサイトスクリプティングや関連するその他の脆弱性を緩和します。 詳しい情� �については"Wikipediaのクロスサイトスクリプティング"を参照してく� さい。 GitHub Enterprise ServerインスタンスではSubdomain Isolationを有効化することを強くお勧めします。
Subdomain Isolation が有効な� �合、GitHub Enterprise Server はいくつかのパスをサブドメインで置き換えます。 After enabling subdomain isolation, attempts to access the previous paths for some user-supplied content, such as http(s)://HOSTNAME/raw/
, may return 404
errors.
Subdomain Isolationなしのパス | Subdomain Isolationされたパス |
---|---|
http(s)://HOSTNAME/assets/ | http(s)://assets.HOSTNAME/ |
http(s)://HOSTNAME/avatars/ | http(s)://avatars.HOSTNAME/ |
http(s)://HOSTNAME/codeload/ | http(s)://codeload.HOSTNAME/ |
http(s)://HOSTNAME/gist/ | http(s)://gist.HOSTNAME/ |
http(s)://HOSTNAME/media/ | http(s)://media.HOSTNAME/ |
http(s)://HOSTNAME/pages/ | http(s)://pages.HOSTNAME/ |
http(s)://HOSTNAME/raw/ | http(s)://raw.HOSTNAME/ |
http(s)://HOSTNAME/render/ | http(s)://render.HOSTNAME/ |
http(s)://HOSTNAME/reply/ | http(s)://reply.HOSTNAME/ |
http(s)://HOSTNAME/uploads/ | http(s)://uploads.HOSTNAME/ |
https://HOSTNAME/ | http(s)://docker.HOSTNAME/ |
https://HOSTNAME/_registry/npm/ | https://npm.HOSTNAME/ |
https://HOSTNAME/_registry/rubygems/ | https://rubygems.HOSTNAME/ |
https://HOSTNAME/_registry/maven/ | https://maven.HOSTNAME/ |
https://HOSTNAME/_registry/nuget/ | https://nuget.HOSTNAME/ |
必要な環境
警告:Subdomain Isolationを無効化している� �合は、Enterprise上のGitHub Pagesも無効化することをおすすめします。 ユーザが提供するGitHub Pagesのコンテンツをその他のEnterpriseのデータから分離しておく方法はありません。 詳しい情� �については、「Enterprise の GitHub Pages を設定する」を参照してく� さい。
Subdomain Isolationを有効化する前に、新しいドメインに合わせてネットワークを設定しなければなりません。
- 有効なドメイン名を、IP アドレスではなくホスト名として指定します。 詳しい情� �については、「ホスト名を設定する」を参照してく� さい。
警告: 初期設定後はGitHub Enterprise Serverのホスト名を変更しないでく� さい。 ホスト名を変更すると、インスタンスの停止に及ぶ予想外の動作が生じます。
- 上記のサブドメインに対して、ワイルドカードのドメインネー� システ� (DNS) レコードまたは個々の DNS レコードをセットアップします。 各サブドメイン用に複数のレコードを作成せずに済むよう、サーバのIPアドレスを指す
*.HOSTNAME
のAレコードを作成することをおすすめします。 HOSTNAME
とワイルドカードのドメイン*.HOSTNAME
の両方に対するサブジェクト代替名 (SAN) が記載された、*.HOSTNAME
に対するワイルドカードの Transport Layer Security (TLS) 証明書を取得します。 たとえば、ホスト名がgithub.octoinc.com
である� �合は、Common Name の値が*.github.octoinc.com
に設定され、SAN の値がgithub.octoinc.com
と*.github.octoinc.com
の両方に設定された証明書を取得します。- アプライアンスで TLS を有効にします。 詳しくは、"TLS の設定方法" を参照してく� さい。
Subdomain Isolationの有効化
-
From an administrative account on GitHub Enterprise Server, in the upper-right corner of any page, click .
-
If you're not already on the "Site admin" page, in the upper-left corner, click Site admin.
-
左のサイドバーでManagement Consoleをクリックしてく� さい。
-
左のサイドバーでHostname(ホスト名)をクリックしてく� さい。
-
Subdomain isolation (recommended)(Subdomain Isolation(推奨))を選択してく� さい。
-
左のサイドバーの下でSave settings(設定の保存)をクリックしてく� さい。
Note: Saving settings in the Management Console restarts system services, which could result in user-visible downtime.
-
設定が完了するのを待ってく� さい。