Funk-lab/k8s/argocd-bootstrap/ingressroute-public.yaml
ALI YESILKAYA fe0aa89ffa
feat(security): durcissement edge funklab.online (vraie IP client + rate-limit + TLS/headers) (#95)
- Traefik externalTrafficPolicy: Local → IP client réelle (fin du SNAT kube-proxy)
- middleware ratelimit par IP (100/min, burst 200) sur les 6 routes publiques
- middleware security-headers (HSTS, nosniff, X-Frame SAMEORIGIN, Referrer-Policy)
- TLSOption globale : plancher TLS 1.2 + ciphers modernes
- Guacamole REMOTE_IP_VALVE → ban anti-bruteforce par IP (fin du piège n°5)
- nftables : fermeture des ports Internet legacy 9080/9081 (HTTP clair redondant)
- allowCrossNamespace pour mutualiser les middlewares depuis infra
- docs : section Durcissement (public-domain.md) + CAA OVH + pièges à jour

Co-authored-by: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-07 22:58:24 +02:00

25 lines
710 B
YAML

# Accès public HTTPS — argocd.funklab.online (cert Let's Encrypt auto).
# ArgoCD n'est pas auto-synchronisé : appliquer à la main
# kubectl apply -f k8s/argocd-bootstrap/ingressroute-public.yaml
# Route interne argocd.lab.local conservée (Ingress du chart).
apiVersion: traefik.io/v1alpha1
kind: IngressRoute
metadata:
name: argocd-public
namespace: argocd
spec:
entryPoints:
- websecure
routes:
- match: Host(`argocd.funklab.online`)
kind: Rule
middlewares:
- name: security-headers
namespace: infra
- name: ratelimit
namespace: infra
services:
- name: argocd-server
port: 80
tls:
certResolver: letsencrypt