About subdomain isolation
Subdomain isolation mitigates cross-site scripting and other related vulnerabilities. For more information, see "Cross-site scripting" on Wikipedia. We highly recommend that you enable subdomain isolation on your GitHub Enterprise Server instance.
When subdomain isolation is enabled, GitHub Enterprise Server replaces several paths with subdomains. 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.
Path without subdomain isolation | Path with 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/ |
Prerequisites
Aviso: se o isolamento de subdomínio está desabilitado, recomendamos também desabilitar o GitHub Pages na sua empresa. Não haverá forma de isolar o conteúdo GitHub Pages fornecido pelo usuário dos dados da sua empresa. Para obter mais informações, confira "Como configurar o GitHub Pages para sua empresa".
Before you enable subdomain isolation, you must configure your network settings for your new domain.
- Specify a valid domain name as your hostname, instead of an IP address. For more information, see "Configuring a hostname."
Aviso: não altere o nome do host do GitHub Enterprise Server após a configuração inicial. Alterar o nome do host causará comportamento inesperado, até e incluindo falhas de instância.
- Set up a wildcard Domain Name System (DNS) record or individual DNS records for the subdomains listed above. We recommend creating an A record for
*.HOSTNAME
that points to your server's IP address so you don't have to create multiple records for each subdomain. - Get a wildcard Transport Layer Security (TLS) certificate for
*.HOSTNAME
with a Subject Alternative Name (SAN) for bothHOSTNAME
and the wildcard domain*.HOSTNAME
. For example, if your hostname isgithub.octoinc.com
, get a certificate with the Common Name value set to*.github.octoinc.com
and a SAN value set to bothgithub.octoinc.com
and*.github.octoinc.com
. - Enable TLS on your appliance. For more information, see "Configuring TLS."
Enabling subdomain isolation
-
Em uma conta administrativa no GitHub Enterprise Server, no canto superior direito de qualquer página, clique em .
-
Se você ainda não estiver na página "Administração do site", no canto superior esquerdo, clique em Administração do site.
-
Na barra lateral � esquerda, clique em Console de Gerenciamento .
-
Na barra lateral esquerda, clique em Nome do Host.
-
Select Subdomain isolation (recommended).
-
Na barra lateral esquerda, clique em Salvar configurações.
Observação: se você salvar as configurações no Console de Gerenciamento, isso reiniciará os serviços do sistema, o que poderá resultar em tempo de inatividade visível pelo usuário.
-
Aguarde a conclusão da execução de suas configurações.