Zugang zur Developer Platform
So verbindest du deinen Rechner mit der Plattform: VPN einrichten, Zertifikat vertrauen, loslegen.
Alle Dienste unter *.demo.internal sind nur über das VPN erreichbar.
Schnellstart für den Mac (empfohlen)
- Tailscale installieren (tailscale.com/download/mac oder App Store), einmal starten und die VPN-Konfiguration erlauben. Nicht bei tailscale.com anmelden.
- Im Terminal ausführen:
Das Skript prüft alles, trägt das Plattform-Zertifikat ein (fragt einmal nach deinem Mac-Passwort) und zeigt einen Code (
curl -fsSL https://zugang.demo.oliverkoehn.com/mac-setup.sh -o mac-setup.sh && bash mac-setup.sh
hskey-authreq-…). Skript vorher ansehen. - Code an den Plattform-Admin schicken. Das Skript wartet, bis der Mac freigeschaltet ist, und testet danach DNS und HTTPS selbst.
- Fertig: https://portal.demo.internal öffnen.
Die folgenden Abschnitte beschreiben dieselben Schritte von Hand.
Überblick
- Zugang anfordern. Ein Plattform-Admin legt dich als VPN-Benutzer an (einmalig).
- Tailscale-App installieren und mit unserem Server anmelden. Wir nutzen den offiziellen Tailscale-Client mit einem eigenen Steuerserver (Headscale). Ein Tailscale-Konto brauchst du nicht.
- Gerät freischalten lassen. Nach der Anmeldung zeigt dir der Browser eine Zeile, die du dem Admin schickst.
- Plattform-Zertifikat vertrauen, damit der Browser die internen Seiten ohne Warnung öffnet.
Steuerserver: https://headscale.demo.oliverkoehn.com
macOS
1. Tailscale installieren
Eine der beiden Varianten genügt:
- Standalone (empfohlen): Download unter tailscale.com/download/mac, oder per Homebrew:
brew install --cask tailscale
- App Store: „Tailscale“ im Mac App Store installieren.
Beim ersten Start fragt macOS, ob die App eine VPN-Konfiguration bzw. Systemerweiterung hinzufügen darf: Erlauben (ggf. unter Systemeinstellungen → Allgemein → Anmeldeobjekte & Erweiterungen). Melde dich nicht bei tailscale.com an.
2. Mit unserem Server anmelden
Variante A – über die Menüleiste:
- Halte ⌥ Option gedrückt und klicke auf das Tailscale-Symbol in der Menüleiste.
- Gehe zu Debug → Custom Login Server → Add Account…
- Trage ein:
https://headscale.demo.oliverkoehn.comund klicke Add Account. - Es öffnet sich ein Browserfenster mit einer Registrierungszeile (siehe Schritt 3).
Variante B – im Terminal:
tailscale login --login-server https://headscale.demo.oliverkoehn.com --accept-routes --accept-dns
Falls tailscale nicht gefunden wird (App-Store-Version), den Befehl so aufrufen:
/Applications/Tailscale.app/Contents/MacOS/Tailscale login --login-server https://headscale.demo.oliverkoehn.com --accept-routes --accept-dns
tailscale switch --list tailscale switch <profil-aus-der-liste>
3. Gerät freischalten lassen
Die Anmeldung zeigt eine Adresse wie https://headscale.demo.oliverkoehn.com/register/hskey-authreq-….
Die Seite dort nennt eine Zeile wie:
headscale auth register --auth-id hskey-authreq-AbCdEf123… --user USERNAME
Diesen Befehl führst du nicht selbst aus, er läuft auf dem Server. Schicke die Zeile oder nur die hskey-authreq-…-Kennung (kein Passwort) an den Plattform-Admin. Sobald er sie ausgeführt hat,
wird das Tailscale-Symbol aktiv und dein Mac ist im VPN. Der Schlüssel ist nur für diese eine Anmeldung gültig.
4. Einstellungen prüfen
Im Menü der Tailscale-App (bzw. Settings) müssen diese beiden Optionen eingeschaltet sein:
- Use Tailscale subnets (Routen annehmen): leitet die Plattform-Adresse
192.168.122.210durchs VPN. - Use Tailscale DNS settings: löst
*.demo.internalüber die Plattform auf.
Im Terminal geht das auch mit:
tailscale set --accept-routes --accept-dns
Endet tailscale login mit unexpected EOF oder bleibt das Gerät nach der Freischaltung offline,
das Profil einmal aktivieren:
tailscale up --login-server https://headscale.demo.oliverkoehn.com --accept-routes --accept-dns
Plattform-Zertifikat vertrauen
Die internen Seiten verwenden Zertifikate einer eigenen Stammzertifizierungsstelle. Dieses Zertifikat ist öffentlich und enthält keine Geheimnisse.
platform-root-ca.crt herunterladen
macOS: Fingerabdruck prüfen und im System-Schlüsselbund als vertrauenswürdig eintragen (fragt nach deinem Mac-Passwort):
cd ~/Downloads openssl x509 -in platform-root-ca.crt -noout -fingerprint -sha256 sudo security add-trusted-cert -d -r trustRoot -k /Library/Keychains/System.keychain platform-root-ca.crt
Alternativ per Maus: Datei doppelklicken → Schlüsselbundverwaltung → Schlüsselbund System → Zertifikat doppelklicken → Vertrauen → Bei Verwendung dieses Zertifikats: Immer vertrauen.
Safari und Chrome nutzen den System-Schlüsselbund. Firefox hat einen eigenen Speicher: Einstellungen → Datenschutz & Sicherheit → Zertifikate anzeigen → Zertifizierungsstellen → Importieren, Haken bei „Dieser CA vertrauen, um Websites zu identifizieren“. Den Browser danach einmal neu starten.
Verbindung prüfen
tailscale status dscacheutil -q host -a name portal.demo.internal curl -sI https://portal.demo.internal | head -1
tailscale statuszeigtdevplatform-router.dscacheutilliefert192.168.122.210(nichtnslookupverwenden: es ignoriert unter macOS das Split-DNS des VPN).curlantwortet ohne Zertifikatsfehler mitHTTP/2 200oder einer Weiterleitung zur Anmeldung.
Dann im Browser: https://portal.demo.internal → Anmeldung mit deinem Plattform-Konto (Keycloak).
Dienste
Erreichbar nur mit aktivem VPN. Die Anmeldung erfolgt jeweils mit deinem Plattform-Konto, soweit nicht anders angegeben.
| Dienst | Adresse |
|---|---|
| Platform Control Center (Startpunkt) | portal.demo.internal |
| Git (Forgejo) | git.demo.internal |
| Eclipse Che (Remote-IDE) | che.demo.internal |
| Workspace-Portal (OpenCode) | dev.demo.internal |
| Langfuse (LLM-Traces) | langfuse.demo.internal |
| AI Observability Lab | llm-observability-demo.prod.demo.internal |
| Grafana | grafana.demo.internal |
| Argo CD | argocd.demo.internal |
| Container-Registry (Harbor) | registry.demo.internal |
| Eigenes Konto (Passwort, 2FA) | sso.demo.internal |
Der Kubernetes-API-Server ist bewusst nicht über das VPN erreichbar.
Andere Systeme
Windows
- Installer von tailscale.com/download/windows ausführen.
- PowerShell öffnen:
tailscale login --login-server https://headscale.demo.oliverkoehn.com --accept-routes --accept-dns
- Registrierungszeile aus dem Browser an den Admin schicken.
- Zertifikat in einer PowerShell als Administrator:
certutil -addstore -f Root platform-root-ca.crt
Linux
curl -fsSL https://tailscale.com/install.sh | sh sudo tailscale login --login-server https://headscale.demo.oliverkoehn.com --accept-routes --accept-dns
Zertifikat (Debian/Ubuntu):
sudo cp platform-root-ca.crt /usr/local/share/ca-certificates/ sudo update-ca-certificates
Fedora/RHEL: nach /etc/pki/ca-trust/source/anchors/ kopieren, dann sudo update-ca-trust.
iPhone / iPad
- Tailscale aus dem App Store installieren und öffnen.
- Oben rechts auf das Konto-Symbol → Log in…
- Oben rechts das Optionsmenü → Use custom coordination server →
https://headscale.demo.oliverkoehn.com - Registrierungszeile an den Admin schicken.
- Zertifikat: Datei in Safari öffnen und das Profil unter Einstellungen → Allgemein → VPN & Geräteverwaltung installieren. Anschließend unter Einstellungen → Allgemein → Info → Zertifikatsvertrauenseinstellungen das volle Vertrauen einschalten.
Probleme
*.demo.internal wird nicht gefunden
Ist das Plattform-Profil aktiv (nicht dein anderes Tailscale-Konto)? Ist Use Tailscale DNS settings an?
Prüfen mit tailscale status und tailscale dns status. Hilft oft auch: Tailscale aus- und wieder einschalten.
Name wird aufgelöst, aber die Seite lädt nicht
Use Tailscale subnets einschalten (tailscale set --accept-routes). Danach sollte
tailscale ping devplatform-router antworten.
Browser meldet „Verbindung nicht sicher“
Das Plattform-Zertifikat ist noch nicht vertrauenswürdig (Abschnitt Zertifikat). Firefox braucht einen eigenen Import. Browser neu starten.
Meine anderen Tailscale-Geräte sind nicht mehr erreichbar
Es ist immer nur ein Profil aktiv. Zurückwechseln mit tailscale switch <profil> oder über das Konto-Menü der App.
Anmeldung bleibt bei „Machine registration“ stehen
Das Gerät ist noch nicht freigeschaltet. Schicke die Kennung hskey-authreq-… an den Admin.
Läuft der Schlüssel ab, die Anmeldung einfach neu starten.