<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>PKI on Nicola Suter</title><link>https://nicolasuter.ch/tags/pki/</link><description>Recent content in PKI on Nicola Suter</description><generator>Hugo -- gohugo.io</generator><language>en-US</language><copyright>© 2026 Nicola Suter</copyright><lastBuildDate>Sun, 25 Sep 2022 00:00:00 +0000</lastBuildDate><atom:link href="https://nicolasuter.ch/tags/pki/rss.xml" rel="self" type="application/rss+xml"/><item><title>Setting up a radius server for Azure AD joined devices and 802.1x</title><link>https://nicolasuter.ch/radius-aad-joined-devices/</link><pubDate>Sun, 25 Sep 2022 00:00:00 +0000</pubDate><guid>https://nicolasuter.ch/radius-aad-joined-devices/</guid><description>&lt;p&gt;A common pitfall in environments where Windows server is used for radius authentication is that Microsoft network policy server (NPS) does currently not support device based authentication for Azure AD joined devices. NPS always checks for the existence of a corresponding computer object in AD. For my home setup and lab I wanted to build a radius solution to enable 802.1x authentication on my Wi-Fi network.&lt;/p&gt;

&lt;h2 class="relative group"&gt;Disclaimer
 &lt;div id="disclaimer" class="anchor"&gt;&lt;/div&gt;
 
 &lt;span
 class="absolute top-0 w-6 transition-opacity opacity-0 -start-6 not-prose group-hover:opacity-100 select-none"&gt;
 &lt;a class="text-primary-300 dark:text-neutral-700 !no-underline" href="#disclaimer" aria-label="Anchor"&gt;#&lt;/a&gt;
 &lt;/span&gt;
 
&lt;/h2&gt;
&lt;p&gt;This post describes my setup and does not cover prerequisites like certification authority, certificate revocation and client certificate deployment via SCEP. Furthermore you should be familiar with docker, network topics, dns and Intune.&lt;/p&gt;

&lt;h2 class="relative group"&gt;Available solutions
 &lt;div id="available-solutions" class="anchor"&gt;&lt;/div&gt;
 
 &lt;span
 class="absolute top-0 w-6 transition-opacity opacity-0 -start-6 not-prose group-hover:opacity-100 select-none"&gt;
 &lt;a class="text-primary-300 dark:text-neutral-700 !no-underline" href="#available-solutions" aria-label="Anchor"&gt;#&lt;/a&gt;
 &lt;/span&gt;
 
&lt;/h2&gt;
&lt;p&gt;Well known commercial Network Access Control (NAC) solutions like CISCO ISE or Aruba Clearpass often ship with an integrated RADIUS server and the possibility to configure wheter LDAP lookups for computer accounts should happen. Important is, that the solution supports certificate revocation checks either via CRLs or OCSP to ensure network access is blocked when a client certificate is revoked.&lt;/p&gt;
&lt;p&gt;For my home and lab setup I wanted to leverage a free or open source solution and decided to use freeRADIUS, probably the most popular open source radius server. freeRADIUS supports EAP-TLS for 802.1x authentication out of the box and is well documented.
Additionally, I was looking for a solution that can be deployed to both locallly in my network (e.g. on a raspberry pi) and also to PaaS offerings like Azure.&lt;/p&gt;</description></item><item><title>Have you considered TPM key attestation?</title><link>https://nicolasuter.ch/adcs-tpm-key-attestation/</link><pubDate>Sat, 28 Aug 2021 00:00:00 +0000</pubDate><guid>https://nicolasuter.ch/adcs-tpm-key-attestation/</guid><description>&lt;p&gt;Device and user-based certificates are commonly used for secure authentication for services like: MECM in HTTPS mode, Always On VPN, 802.1x for (wireless) LAN and so on. Mostly these certificates are deployed from an internal PKI and the certificate templates are somewhat outdated because everybody is afraid of touching these settings. As with any type of credentials - credential theft is also applicable for certificates and the corresponding private keys. So let&amp;rsquo;s dive in and learn the risk and how to reduce the attack surface.&lt;/p&gt;

&lt;h2 class="relative group"&gt;Understanding cryptography providers
 &lt;div id="understanding-cryptography-providers" class="anchor"&gt;&lt;/div&gt;
 
 &lt;span
 class="absolute top-0 w-6 transition-opacity opacity-0 -start-6 not-prose group-hover:opacity-100 select-none"&gt;
 &lt;a class="text-primary-300 dark:text-neutral-700 !no-underline" href="#understanding-cryptography-providers" aria-label="Anchor"&gt;#&lt;/a&gt;
 &lt;/span&gt;
 
&lt;/h2&gt;
&lt;p&gt;Before we start with the actual theft we need to know how certificates and the corresponding private keys are stored on Windows devices. Microsoft operating systems implement various cryptographic providers which can be either software or hardware based. The two most important ones are:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Microsoft Software Key Storage Provider
&lt;ul&gt;
&lt;li&gt;&amp;ldquo;Standard&amp;rdquo; provider which stores keys software based and supports CNG (Crypto-Next Generation)&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Microsoft Platform Crypto Provider
&lt;ul&gt;
&lt;li&gt;Hardware based which stores keys on a TPM (trusted platform module) and supports CNG as well&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;When a client is requesting a new certificate from a CA he generates a key pair consisting of a private and public key with such a crpytographic provider.&lt;/p&gt;</description></item></channel></rss>