Skip to content
Eén SSID en één switchpoort die een RADIUS-server voeden, die de rol in het step-ca-certificaat van elk apparaat leest en de laptop naar VLAN 10 stuurt, de camera naar VLAN 20 en de tv naar VLAN 30

Eén SSID, elk apparaat op zijn eigen VLAN: 802.1X met step-ca-certificaten

802.1X met certificaten (EAP-TLS) voor bekabelde switchpoorten en één WPA2/WPA3-Enterprise-SSID, waarbij de RADIUS-server beslist op welk VLAN elk apparaat terechtkomt. step-ca 0.30.2 zet een rol in elk apparaatcertificaat en weigert er een zonder; FreeRADIUS 3.2.10 koppelt die rol aan een VLAN, laat een lijst per apparaat die rol overschrijven en praat alleen TLS 1.3. Waarom een gedeeld WiFi-wachtwoord het probleem is, waarom certificaten en waarom TLS 1.3, de intrekkingsval waarbij FreeRADIUS een nieuwe CRL negeert bij een HUP, wat een apparaat vertrouwt dat de servernaam niet controleert, het RADIUS-verkeer zelf beschermen met Message-Authenticator en RadSec over TLS 1.3, radsecproxy voor apparatuur die alleen UDP spreekt, een bekabelde poort en een WiFi-netwerk van begin tot eind gesimuleerd, de instellingen voor Netgear en TP-Link, de clientinstellingen voor Linux, Apple en Android, elk configuratiebestand volledig en als download, en waarom zoveel beheerders en MSP’s nog steeds niet de moeite nemen en Cyber Essentials er niet om vraagt.

13 oktober 2026 · 51 min · 11770 woorden · Damien Dye
De SSH-CA van step-ca ondertekent een hostsleutel en een gebruikerssleutel; de client vertrouwt de host-CA en de server vertrouwt de gebruikers-CA, dus geen van beide houdt een lijst met sleutels bij

SSH-aanmeldingen ondertekend door step-ca: geen authorized_keys meer

step-ca 0.30.2 gebruiken als SSH-certificaatautoriteit, getest met OpenSSH 10.0. Waarom certificaten beter zijn dan authorized_keys en vertrouwen bij eerste gebruik, de SSH-CA aanzetten als step-ca voor het eerst wordt ingericht, een hostsleutel ondertekenen (en de volgorde van argumenten die daarbij struikelt), de twee regels in sshd_config en de ene @cert-authority-regel in known_hosts, een gebruikerscertificaat van 16 uur, vier aanmeldtests waaronder een verkeerde gebruiker en een niet vertrouwde host, een hostcertificaat vernieuwen met sshpop, en waar het tekortschiet.

9 oktober 2026 · 7 min · 1501 woorden · Damien Dye
step-ca die vanaf zijn intermediate clientcertificaten aan telefoons uitgeeft, met een CRL die een kwijtgeraakte telefoon als ingetrokken markeert

Clientcertificaten van step-ca, en de standaarden die iedereen buitensluiten

step-ca 0.30.2 gebruiken om clientcertificaten voor mutual TLS uit te geven, van begin tot eind getest met nginx 1.30.5 en Caddy 2.11.7. Waarom telefoons het lastige geval zijn, de certificaatgrens van 24 uur verhogen in ca.json, de CRL aanzetten, waarom die faalt met “different CRL scope” tot idpURL en een sjabloon een overeenkomend distributiepunt toevoegen, de root-CRL die nginx nodig heeft voor de hele keten, CRL’s publiceren over gewone HTTP op IPv4 en IPv6, de verversingstaak die voorkomt dat een verlopen CRL iedereen buitensluit, en het certificaat van een telefoon uitgeven, verpakken, installeren en intrekken.

9 oktober 2026 · 11 min · 2483 woorden · Damien Dye
Een telefoon met een certificaat van je eigen CA komt thuis langs nginx of Caddy en bereikt Home Assistant, terwijl een scanner zonder certificaat in de handshake wordt geweigerd

De Home Assistant-app vergrendeld met een certificaat, met nginx of Caddy en zonder Cloudflare

De Home Assistant-app vergrendelen met een clientcertificaat via nginx of Caddy thuis, met step-ca als certificaatautoriteit in plaats van Cloudflare. Wat er verandert als Cloudflare uit het pad verdwijnt, een nginx-config en een Caddy-config, elk getest zonder certificaat, met een goed certificaat, met een ingetrokken certificaat en met een WebSocket-upgrade over IPv4 en IPv6, waarom nginx een CRL kan controleren en Caddy alleen een toegestane lijst kan bijhouden, de instellingen voor vertrouwde proxy’s in Home Assistant, wat er op de telefoon geïnstalleerd moet worden, en waar het tekortschiet.

9 oktober 2026 · 10 min · 2167 woorden · Damien Dye
step-ca in een container die certificaten uitgeeft vanaf zijn intermediate, met een CRL die een kwijtgeraakte telefoon als ingetrokken markeert

Je eigen certificaatautoriteit: step-ca in een container

Smallsteps step-ca 0.30.2 in een Podman- of Docker-container draaien als certificaatautoriteit voor alles in huis, en alles getest. Waarom een eigen CA beter is dan zelfondertekende certificaten en publieke certificaten voor interne namen, hem starten met ACME en SSH aangezet, de twee wachtwoorden die het image genereert en waar elk heen gaat, de root vertrouwen op elk apparaat, interne HTTPS voor Caddy of al het andere dat ACME spreekt, en step ca renew voor diensten die dat niet doen. Clientcertificaten en SSH hebben elk een eigen bericht.

9 oktober 2026 · 8 min · 1724 woorden · Damien Dye