Automatisering & Zero Trust

Van state.apply tot ingetrokken in minder dan 60 seconden

Salt voor declaratieve configuratie. Vault voor secret-levering. HAProxy voor TLS-terminatie. mTLS voor service-naar-service-authenticatie. Woodpecker CI om alles te verbinden. Het resultaat: een zero-trust-runtime waar toegang per certificaat wordt verleend, in realtime waarneembaar en in minder dan een minuut intrekbaar.

De premisse

Identiteit is de enige perimeter

Netwerkgrenzen lekken. VPN's voegen latentie toe zonder betekenisvol vertrouwen toe te voegen. Het enige duurzame antwoord is mTLS: elke dienst houdt een certificaat, elke verbinding wordt wederzijds geauthenticeerd, en intrekking verspreidt zich in seconden — niet na een kwartaalreview.

Wat wij vervangen

  • Gebruikersnaam + wachtwoord voor interne dienstenPhishbaar, uit logs te lekken, nooit ingetrokken wanneer een medewerker vertrekt.
  • Statische API-sleutels in omgevingsvariabelenLeven eeuwig voort in de Git-historie, container-images en Slack-DM's.
  • „Vertrouwde” IP-reeksenVPN-gateways en NAT-traversal nemen aan dat het netwerk de vertrouwensgrens is. Dat is het niet.
  • Handmatige certificaatvernieuwingenAgendaherinneringen die om 02:00 uur op een feestdag worden gemist.

Wat wij leveren

  • mTLS overalElke interne dienst authenticeert clients per certificaat. EJBCA-uitgegeven, kortlevend, intrekbaar.
  • Vault als credential-brokerAppRole plus dynamische secrets. Apps halen inloggegevens bij het opstarten en slaan ze nooit op.
  • Salt als configuratiesubstraatDeclaratieve staat met grain-gebaseerde opt-in. CI verzendt; het omzeilt nooit.
  • Live-intrekkingTrek een certificaat in EJBCA in — OCSP verspreidt zich in seconden — en clients verliezen toegang. Bij elk prospectgesprek te demonstreren.
Referentiearchitectuur

De componenten, aan elkaar geknoopt

Een vereenvoudigd beeld van SkyQon's zero-trust-referentie-stack. Elk blok is iets dat wij op uw echte workloads uitrollen, configureren en beheren.

Salt-master + minions

Salt voor configuratiebeheer. Hosts kiezen via een pipeline_env-grain voor geautomatiseerde state-apply — root-CA- en HSM-hosts zijn per ontwerp uitgesloten. salt-api wordt via nginx vooraf geplaatst voor TLS-terminatie (workaround voor de cherrypy-chain-bug in Salt 3006).

Vault + AppRole

KV-v2 voor applicatiesecrets, AppRole voor niet-menselijke authenticatie, CIDR-gebonden tokens, bestand-auditlog. Pipelines halen secrets tijdens runtime — geen langlevende inloggegevens in CI-configuraties.

HAProxy + PROXY-v2

TLS-terminatie, SNI-gebaseerde routing, mTLS-verificatie aan de rand. PROXY-protocol v2 naar de backends zodat het client-IP behouden blijft — cruciaal voor Galera-authenticatie en audit-trails.

EJBCA + ACME + REST

De CA-backend geeft servercertificaten uit via ACME en service-account-mTLS via REST. Twee vertrouwensankers (Issuing G2 + Management) — expliciet gescheiden, nooit door elkaar gehaald.

Woodpecker CI

Pipeline-runners die linten, test-renderen en vervolgens state.apply via salt-api aanstoten. Vault-inloggegevens worden per run via AppRole opgehaald — het token wordt aan het einde van de stap ingetrokken.

Techniek die wij inzetten

Beproefd in de praktijk, niet bleeding edge

Elk component draait bij SkyQon in productie en is gehard tegen de valkuilen die u anders om 03:00 uur zou ontdekken.

🧂

Configuratie

Salt 3006+salt-apigrain opt-in

Declaratieve staat, idempotente toepassing, afgeschermd per host-grain zodat beveiligingsgrenzen niet per ongeluk worden omzeild.

🔒

Secrets

HashiCorp VaultAppRoleKV-v2CIDR-bound

Kortlevende tokens, CIDR-gebonden rollen, bestand-auditlog en dynamische secrets wanneer de backend dit ondersteunt.

🛡️

Edge / proxy

HAProxyPROXY v2SNImTLS verify

TLS-terminatie met SNI-routing, mTLS-verificatie aan de rand, PROXY v2 om client-IP's te behouden via TCP-modus-listeners.

🔁

CI / CD

Woodpecker CIGiteaGitOps

Zelf-gehoste Gitea + Woodpecker. Pipelines linten, renderen en verzenden via salt-api. Geen productietoegang zonder geslaagde PR.

🐧

Containers / VM

Proxmox VELXCRKE2Docker

Proxmox-gehoste LXC voor stateful diensten, RKE2 voor stateless workloads. mTLS-beschermde ingress en inter-pod-verkeer.

📊

Observability

GraylogGELFaudit logs

Eén enkele observability-bestemming. Alle pipeline-events, alle CA-audit-events, alle mislukte mTLS-handshakes — één query, één tijdlijn.

Wilt u de live-intrekkingsdemo zien?

Het is het hoogtepunt van elk prospectgesprek. Geef een certificaat uit, krijg toegang tot een mTLS-beschermde dienst, trek het certificaat in, zie de toegang verdwijnen — alles in minder dan 60 seconden.