feat: lan-only + force-ssl for argocd/authentik/adguard labzand.com ingresses

ipAllowList middleware (192.168.0.0/16) on the websecure routers blocks
external access; separate IngressRoute on web 301-redirects http->https.

Generated by Mistral Vibe.
Co-Authored-By: Mistral Vibe <[email protected]>
This commit is contained in:
2026-11-14 16:37:02 +01:00
parent e857cb989c
commit 43fdc020f4
9 changed files with 134 additions and 0 deletions
+4
View File
@@ -85,6 +85,10 @@ kind: Ingress
metadata:
name: adguard
namespace: adguard
annotations:
traefik.ingress.kubernetes.io/router.entrypoints: websecure
traefik.ingress.kubernetes.io/router.tls: "true"
traefik.ingress.kubernetes.io/router.middlewares: adguard-lan-only@kubernetescrd
spec:
rules:
- host: adguard.labzand.com
@@ -0,0 +1,19 @@
# HTTP (entrypoint web) -> HTTPS redirect voor adguard.labzand.com.
# services: api@internal is een dummy - de redirect middleware stuurt
# nooit door naar een backend.
apiVersion: traefik.io/v1alpha1
kind: IngressRoute
metadata:
name: adguard-redirect
namespace: adguard
spec:
entryPoints:
- web
routes:
- match: Host(`adguard.labzand.com`)
kind: Rule
middlewares:
- name: redirect-https
services:
- name: api@internal
kind: TraefikService
+23
View File
@@ -0,0 +1,23 @@
# Middlewares voor adguard.labzand.com (alleen intern):
# - redirect-https: http (web) -> https
# - lan-only: blokkeert verkeer van buiten het LAN op de websecure-router
apiVersion: traefik.io/v1alpha1
kind: Middleware
metadata:
name: redirect-https
namespace: adguard
spec:
redirectScheme:
scheme: https
permanent: true
---
apiVersion: traefik.io/v1alpha1
kind: Middleware
metadata:
name: lan-only
namespace: adguard
spec:
ipAllowList:
sourceRange:
- 192.168.0.0/16
- 127.0.0.1/32