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
+5
View File
@@ -3,7 +3,12 @@ kind: Ingress
metadata:
name: argocd
namespace: argocd
annotations:
traefik.ingress.kubernetes.io/router.entrypoints: websecure
traefik.ingress.kubernetes.io/router.tls: "true"
traefik.ingress.kubernetes.io/router.middlewares: argocd-lan-only@kubernetescrd
spec:
ingressClassName: traefik
rules:
- host: argocd.labzand.com
http:
@@ -0,0 +1,19 @@
# HTTP (entrypoint web) -> HTTPS redirect voor argocd.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: argocd-redirect
namespace: argocd
spec:
entryPoints:
- web
routes:
- match: Host(`argocd.labzand.com`)
kind: Rule
middlewares:
- name: redirect-https
services:
- name: api@internal
kind: TraefikService
+23
View File
@@ -0,0 +1,23 @@
# Middlewares voor argocd.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: argocd
spec:
redirectScheme:
scheme: https
permanent: true
---
apiVersion: traefik.io/v1alpha1
kind: Middleware
metadata:
name: lan-only
namespace: argocd
spec:
ipAllowList:
sourceRange:
- 192.168.0.0/16
- 127.0.0.1/32