Commit Graph
35 Commits
Author SHA1 Message Date
Ruben Hensen 910b792452 longhorn: log in through authentik on the Gateway
Longhorn has no users of its own; nginx guarded it with basic auth using apr1 hashes, which Envoy Gateway does not support. An Envoy Gateway SecurityPolicy now sends visitors through an authentik OIDC application that only admins may use. The client secret lives in Vault at kv/longhorn-oidc and reaches both authentik and Envoy through External Secrets.
2026-10-23 21:07:31 +02:00
Ruben Hensen 69a0661d09 Add HTTPRoutes for the apps behind ingress-nginx
Each app gets an HTTPS listener on the Gateway with its existing certificate, an HTTPRoute, and a ReferenceGrant for that certificate. The routes drop Envoy's 15s request timeout, as nginx has no overall limit either. Argo CD and Longhorn follow separately; the Ingresses stay until the switch-over.
2026-10-23 17:39:04 +02:00
Ruben Hensen 7acb7eaa8c Move every ExternalSecret and the ClusterSecretStore to external-secrets.io/v1
ESO 0.16.2 is the one release that serves both v1beta1 and v1. 0.17
stops serving v1beta1, so manifests still on v1beta1 would fail to sync
from the next hop on. For these resources the schemas are name-identical
(conversion strategy None); only the apiVersion changes.
2026-10-22 21:41:28 +02:00
Ruben Hensen 8cb8b28cd9 cnpg: prepare for the operator upgrade to 1.30
Pin authentik-postgres to the image CNPG filled in at creation
(postgresql:17.4). Later operators default to PostgreSQL 18, and since
1.26 a higher major in the image triggers an offline in-place major
upgrade. immich-postgres already pins its pgvecto.rs image.

Turn on ENABLE_INSTANCE_MANAGER_INPLACE_UPDATES so the five operator hops
(1.25 -> 1.30, one minor at a time as the docs recommend) swap the
instance manager inside the running pods instead of restarting both
single-instance databases each time.
2026-10-22 15:35:18 +02:00
Ruben Hensen fe678d4b4b ca-bundle: also serve argocd, authentik and actual-budget
Those three namespaces had their own ~190KB copy of patched-ca-bundle.
Let the ca-bundle chart render them too, so the bundle lives in one file.
2026-10-22 09:26:43 +02:00
Ruben Hensen 25a6bf3a05 authentik: mount a CA bundle without the compromised eMudhra roots
Server and worker trusted the leaked eMudhra intermediates through the
Debian bundle (ca-certificates 20250419), Python's ssl module and certifi
2026.01.04. Mount patched-ca-bundle over /etc/ssl/certs and point
SSL_CERT_FILE and REQUESTS_CA_BUNDLE at it until an authentik image ships
a fixed bundle and certifi.
2026-10-21 12:09:41 +02:00
Ruben Hensen 20cf119dbd Extend authentik + FreshRSS session lifetimes
Authentik's default-authentication-login stage ships with
session_duration: seconds=0, so the SSO session died with the browser.
New blueprint raises it to 30 days for every app on that flow.

FreshRSS runs OIDC through Apache mod_auth_openidc, whose defaults are a
5 minute inactivity timeout and a ~7.5 hour max duration in a non-persistent
cookie. Bumped to a 30 day sliding inactivity window (refreshed on every
request) with a 90 day hard cap, and made the cookie persistent so it
survives a browser restart.
2026-09-03 15:21:07 +02:00
Ruben Hensen 499cd6826a Add oidc actualbudget 2 2026-04-10 21:32:19 +02:00
Ruben Hensen 068ac20693 Add oidc actualbudget 2026-04-10 21:23:50 +02:00
Ruben Hensen 579e40d2b3 Update port oidc freshrss 2026-04-10 20:59:59 +02:00
Ruben Hensen 428f14efc1 Add oidc freshrss 2026-04-10 20:49:11 +02:00
Ruben Hensen 0fd7bf1135 Add OIDC to argocd 2026-04-06 18:44:32 +02:00
Ruben Hensen faaf6b6729 Remove most hensen.io refs and move from stalwart.rubenhensen.nl to mail.rubenhensen.nl 2026-04-06 18:09:24 +02:00
Ruben Hensen 07c168220b Revert property mapping 2026-04-05 22:48:35 +02:00
Ruben Hensen 91812829c6 Add property mailalias mapping 2026-04-05 22:36:44 +02:00
Ruben Hensen fd12984bba outpost from direct to cached 2026-03-22 14:44:57 +01:00
Ruben Hensen 7a151c0a2d Add mail changes 2026-03-21 23:30:03 +01:00
Ruben Hensen 264ce4c85b update lb outpost 2026-03-21 20:44:17 +01:00
Ruben Hensen ff44035b4c Change from loadbalancer to nodeport 2026-03-21 19:53:38 +01:00
Ruben Hensen bcd0e47076 Connect Stalwart to Authentik LDAP for user authentication
- Add LDAP directory backend in Stalwart pointing to ldap.rubenhensen.nl
- Expose Authentik LDAP outpost externally via LoadBalancer service
- Add ldap.rubenhensen.nl DNS record
2026-03-17 22:12:56 +01:00
Ruben Hensen 20a7b7ab15 add application ldap 2026-03-15 15:22:09 +01:00
Ruben Hensen 65cbe32b6d Add outpost back 2026-03-15 15:17:53 +01:00
Ruben Hensen 1ef2a27919 Just provider 2026-03-15 15:15:28 +01:00
Ruben Hensen b4a0c2db24 Add only ldap provider 2026-03-15 15:14:49 +01:00
Ruben Hensen 3e9b5950e4 Other ldap blueprint 2026-03-15 15:09:44 +01:00
Ruben Hensen ab0293bd64 invalidation flow added 2026-03-15 14:37:19 +01:00
Ruben Hensen 3977722740 Add LDAP outpost, SOGo on K8s, Stalwart OIDC 2026-03-15 14:30:05 +01:00
Ruben Hensen c51c98e821 Add rubenhensen.nl to all ingresses 2026-03-15 11:46:24 +01:00
Ruben Hensen 8e7c0ad9e3 oidc vault config change authentik3 2026-03-15 11:30:00 +01:00
Ruben Hensen 432243829e oidc vault config change authentik2 2026-03-15 11:28:18 +01:00
Ruben Hensen a8c71e1c73 oidc vault config change authentik 2026-03-15 11:25:10 +01:00
Ruben Hensen d4a75824fd oidc vault config change authentik 2026-03-15 11:13:09 +01:00
Ruben Hensen 66d1ba9d13 Add oidc to Vault 2026-03-15 10:50:18 +01:00
Ruben Hensen 4d551d43b0 cnpg with authentik 2026-03-15 00:27:17 +01:00
Ruben Hensen 7a495bb6fd Add authentik 2026-03-15 00:19:31 +01:00