Informationen zur Subdomain-Isolation
Die Subdomain-Isolation mindert Cross-Site-Scripting und andere verwandte Schwachstellen. Weitere Informationen findest Du unter „Cross-Site Scripting“ in Wikipedia. Es wird dringend empfohlen, die Subdomain-Isolation auf deine GitHub Enterprise Server-Instanz zu aktivieren.
Bei aktivierter Subdomain-Isolation ersetzt GitHub Enterprise Server verschiedene Pfade durch Subdomains. Nach dem Aktivieren der Subdomain-Isolation wird versucht, auf die vorherigen Pfade für einige vom Benutzer bereitgestellte Inhalte zuzugreifen, z. B. kann http(s)://HOSTNAME/raw/
404
-Fehler zurückgeben .
Hinweis: Die Unterdomäne http(s)://render.HOSTNAME
ist in GitHub Enterprise Server 3.7 und höher veraltet. Vergewissere dich nach dem Upgrade auf Version 3.7 oder höher, dass dein TLS-Zertifikat die Unterdomänen für die Ersatzdienste (http(s)://notebooks.HOSTNAME
und http(s)://viewscreen.HOSTNAME
) abdeckt.
Pfad ohne Subdomain-Isolation | Pfad mit Subdomain-Isolation |
---|---|
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/ |
Voraussetzungen
Warnung: Bei deaktivierter Unterdomänenisolation solltest du auch GitHub Pages auf deiner Appliance deaktivieren. Es besteht keine Möglichkeit, den vom Benutzer bereitgestellten GitHub Pages-Inhalt von den restlichen Daten deines Unternehmens zu isolieren. Weitere Informationen findest du unter Konfigurieren von GitHub Seiten für dein Unternehmen.
Vor der Aktivierung der Subdomain-Isolation musst du deine Netzwerkeinstellungen für deine neue Domain konfigurieren.
- Gib anstelle einer IP-Adresse einen gültigen Domain-Namen als deinen Hostnamen an. Weitere Informationen findest du unter Hostname konfigurieren.
Warnung: Ändere den Hostnamen für GitHub Enterprise Server nach der Ersteinrichtung nicht mehr. Das Ändern des Hostnamens wird zu unerwartetem Verhalten führen, bis hin zu Instanzausfällen.
- Lege einen Domain Name System-Platzhaltereintrag (DNS) oder einzelne DNS-Einträge für die oben aufgelisteten Subdomains fest. Du solltest einen Eintrag für
*.HOSTNAME
erstellen, der auf die IP-Adresse deines Servers verweist, damit Du nicht für jede Subdomain mehrere Einträge erstellen musst. - Rufe ein TLS-Zertifikat (Transport Layer Security) für
*.HOSTNAME
mit einem Subject Alternative Name (SAN) fürHOSTNAME
und die Wildcard-Domäne*.HOSTNAME
ab. Wenn Dein Hostname beispielsweisegithub.octoinc.com
lautet, rufe ein Zertifikat ab, in dem der Wert „Common Name“ (Gemeinsamer Name) auf*.github.octoinc.com
festgelegt ist, und einen SAN-Wert, der aufgithub.octoinc.com
und*.github.octoinc.com
festgelegt ist. - Aktiviere TLS auf deiner Appliance. Weitere Informationen findest du unter TLS konfigurieren.
Subdomain-Isolation aktivieren
-
Klicke in einem Verwaltungskonto auf GitHub Enterprise Server und dann in der rechten oberen Ecke einer beliebigen Seite auf „“.
-
Wenn du dich nicht bereits auf der Seite „Websiteadministrator“ befindest, klicke in der oberen linken Ecke auf Websiteadministrator. 1. Wähle auf der Randleiste „ Websiteadministrator“ die Option Verwaltungskonsole aus. 1. Klicke auf der Randleiste unter „Einstellungen“ auf Hostname.
-
Wähle Subdomänen-Isolation (empfohlen) aus.
-
Klicke auf der Randleiste unter „Einstellungen“ auf Einstellungen speichern.
Hinweis: Durch das Speichern von Einstellungen in der Verwaltungskonsole werden Systemdienste neu gestartet, was zu einer für den Benutzer feststellbaren Downtime führen könnte.
-
Warten Sie auf den Abschluss der Konfigurationsausführung.