Sobre isolamento de subdomínio
O isolamento de subdomínios reduz os problemas de script entre sites e outras vulnerabilidades relacionadas. Para obter mais informações, confira "Cross-site scripting" na Wikipédia. É altamente recomendado que você habilite o isolamento de subdomínio em sua instância do GitHub Enterprise Server.
Quando o isolamento do subdomínio está ativado, o GitHub Enterprise Server substitui vários caminhos pelos subdomínios. Depois que você habilitar o isolamento de subdomínio, as tentativas de acessar os caminhos anteriores para um conteúdo fornecido pelo usuário, como http(s)://HOSTNAME/raw/
, podem retornar erros 404
.
Caminho sem isolamento de subdomínio | Caminho com isolamento de subdomínio |
---|---|
http(s)://HOSTNAME/ | http(s)://docker.HOSTNAME/ |
http(s)://HOSTNAME/_registry/npm/ | https://npm.HOSTNAME/ |
http(s)://HOSTNAME/_registry/rubygems/ | https://rubygems.HOSTNAME/ |
http(s)://HOSTNAME/_registry/maven/ | https://maven.HOSTNAME/ |
http(s)://HOSTNAME/_registry/nuget/ | https://nuget.HOSTNAME/ |
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/notebooks/ | http(s)://notebooks.HOSTNAME/ |
http(s)://HOSTNAME/pages/ | http(s)://pages.HOSTNAME/ |
http(s)://HOSTNAME/raw/ | http(s)://raw.HOSTNAME/ |
http(s)://HOSTNAME/reply/ | http(s)://reply.HOSTNAME/ |
http(s)://HOSTNAME/uploads/ | http(s)://uploads.HOSTNAME/ |
http(s)://HOSTNAME/viewscreen/ | http(s)://viewscreen.HOSTNAME/ |
Sem suporte | https://containers.HOSTNAME/ |
Pré-requisitos
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 "Configurar o GitHub Pages para a sua empresa".
Antes de habilitar o isolamento de subdomínio, você deve definir as configurações de rede do novo domínio.
- Em vez de um endereço IP, especifique um nome de domínio válido como nome de host. Para obter mais informações, confira "Configurando o nome do host para sua instância".
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 e invalidação das chaves de segurança dos usuários. Se você alterou o nome do host da instância e está enfrentando problemas, entre em contato com Suporte do GitHub Enterprise ou Suporte do GitHub Premium.
- Configure um registro curinga do Sistema de Nomes de Domínio (DNS) ou registros DNS individuais para os subdomínios listados acima. Recomendamos criar um registro A para
*.HOSTNAME
que aponte para o endereço IP do servidor, de modo que você não precise criar vários registros para cada subdomínio. - Obtenha um certificado TLS curinga para
*.HOSTNAME
com um SAN (nome alternativo da entidade) paraHOSTNAME
e o domínio curinga*.HOSTNAME
. Por exemplo, se o nome do host forgithub.octoinc.com
, obtenha um certificado com o valor de Nome Comum definido como*.github.octoinc.com
e um valor SAN definido comogithub.octoinc.com
e*.github.octoinc.com
. - Habilite o TLS no appliance. Para obter mais informações, confira "Configurar o TLS".
Habilitar isolamento de subdomínio
-
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 " Administrador do site", clique em Console de Gerenciamento .
-
Na barra lateral Configurações, clique em Nome de host.
-
Selecione Isolamento de subdomínio (recomendado) .
-
Na barra lateral "Configurações", 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.