Cloudflare Zero Trust: Sicherer Zugriff auf Interne Anwendungen

Cloudflare Zero Trust ersetzt traditionelle VPN-Loesungen durch einen modernen, identitaetsbasierten Sicherheitsansatz. Anstatt Benutzern nach der VPN-Verbindung uneingeschraenkten Netzwerkzugriff zu gewaehren, wird jeder Zugriff auf jede einzelne Anwendung individuell ueberprueft. Dieser Leitfaden zeigt Ihnen, wie Sie Ihre internen Webanwendungen mit Cloudflare Tunnels und Access-Richtlinien absichern.

Cloudflare Tunnel Einrichten

Installieren Sie zunaechst den cloudflared-Daemon auf Ihrem Server:

# Debian/Ubuntu
curl -fsSL https://pkg.cloudflare.com/cloudflare-main.gpg | sudo tee /usr/share/keyrings/cloudflare-main.gpg >/dev/null
echo "deb [signed-by=/usr/share/keyrings/cloudflare-main.gpg] https://pkg.cloudflare.com/cloudflared $(lsb_release -cs) main" | sudo tee /etc/apt/sources.list.d/cloudflared.list
sudo apt update && sudo apt install -y cloudflared

# Authentifizieren und Tunnel erstellen
cloudflared tunnel login
cloudflared tunnel create internal-apps

Erstellen Sie die Tunnel-Konfiguration unter ~/.cloudflared/config.yml:

tunnel: <TUNNEL_ID>
credentials-file: /root/.cloudflared/<TUNNEL_ID>.json

ingress:
  - hostname: app.example.com
    service: http://localhost:8080
  - hostname: grafana.example.com
    service: http://localhost:3000
  - hostname: wiki.example.com
    service: http://localhost:3001
  - service: http_status:404

Starten Sie den Tunnel als Systemdienst:

sudo cloudflared service install
sudo systemctl enable --now cloudflared

Access-Richtlinien Konfigurieren

Erstellen Sie im Zero Trust Dashboard unter Access > Applications eine neue Anwendung. Definieren Sie Zugriffsrichtlinien basierend auf Identitaet und Kontext:

Die wichtigsten Richtlinientypen sind:

  • Allow: Gewaehrt Zugriff fuer bestimmte Benutzer, Gruppen oder E-Mail-Domaenen
  • Block: Verweigert Zugriff fuer bestimmte Kriterien
  • Bypass: Ueberspringt die Authentifizierung fuer bestimmte Pfade (z.B. Health-Check-Endpunkte)

Beispielkonfiguration ueber die Cloudflare API:

curl -X POST "https://api.cloudflare.com/client/v4/accounts/<ACCOUNT_ID>/access/apps" \
  -H "Authorization: Bearer <API_TOKEN>" \
  -H "Content-Type: application/json" \
  --data '{
    "name": "Internal Dashboard",
    "domain": "app.example.com",
    "type": "self_hosted",
    "session_duration": "12h",
    "auto_redirect_to_identity": true
  }'

Identity Provider Integration

Konfigurieren Sie Ihren Identity Provider unter Settings > Authentication. Fuer Azure AD benoetigen Sie:

  1. Eine App-Registrierung im Azure-Portal mit der Redirect-URI von Cloudflare
  2. Die Application (Client) ID und das Client Secret
  3. Die Directory (Tenant) ID fuer Ihre Azure-AD-Instanz

Nach der Konfiguration koennen Sie Richtlinien erstellen, die Azure-AD-Gruppen referenzieren, um den Zugriff auf bestimmte Teams oder Abteilungen einzuschraenken.

Geraeteposture und Erweiterte Sicherheit

Fuer zusaetzliche Sicherheit koennen Sie Geraeteposture-Pruefungen aktivieren, die den Zustand des Endgeraets vor dem Zugriff verifizieren:

Pruefungen konfigurieren unter:
Settings > WARP Client > Device Posture

Verfuegbare Posture-Checks:
- Betriebssystem-Version (mindestens Windows 11 / macOS 14)
- Festplattenverschluesselung aktiv (FileVault / BitLocker)
- Firewall aktiviert
- Bildschirmsperre konfiguriert
- Unternehmenszertifikat vorhanden

Diese Pruefungen stellen sicher, dass nur Geraete, die Ihren Sicherheitsanforderungen entsprechen, auf sensible Anwendungen zugreifen koennen.

Fazit

Cloudflare Zero Trust bietet eine moderne Alternative zu VPN-Loesungen, die einfacher zu verwalten und sicherer ist. Mit Tunnels entfaellt die Notwendigkeit, eingehende Ports in Ihrer Firewall zu oeffnen, und Access-Richtlinien ermoeglichen granulare, identitaetsbasierte Zugriffssteuerung fuer jede einzelne Anwendung.