2
How to Congure Secure LDAP (LDAPS) in Active Directory with Let’s Encrypt
Private Certicate Authority
Active Directory Certicate Services (AD CS) is the most common way to create a private certicate authority
inside a Windows network, but only domain-joined machines are automatically congured for trust. Any other
device on your network (macOS, Linux, or even a smartphone!) will not validate the LDAPS certicate, unless the
private certicate authority is installed in the system’s trusted root certicates. Even then, all devices need to use
the internal DNS servers. Otherwise, it may not be possible to connect to the LDAPS server using the same name
found inside the server certicate, thus causing a validation failure.
The Importance of DNS
All certicates contain a common name that must match the expected name, in order to be considered valid.
For example, when loading “google.com” in a browser, the hostname is resolved using public DNS servers, and
the certicate contains a matching name. The certicate authority that signed the certicate for google.com
(GlobalSign) had to validate ownership of the domain before doing so. This process can be manual or automated,
but it always relies on a form of challenge that the domain owner must complete to prove that it has control over
the DNS domain name. Since private DNS servers are excluded for obvious reasons, the only way to use a public
certicate authority like Let’s Encrypt for LDAPS is to ensure we can request a certicate for a public DNS domain
name that will match the name of the domain controller.
Naming Your Domain Wisely
If you have ever tried to follow a “Getting Started Guide to Promoting Windows Server to a Domain Controller,”
then this is usually the part where you might feel a bit lost. There are many names to choose from, and all of them
look very important and impossible to change afterwards if you get it wrong. Trust me: I have been there, done
that! If you do not have a domain name available, then you can simply buy one from Namecheap or your favorite
registrar. For this example, let us be creative and use a ctional company called “IT Help Ninja” using the “it-help.
ninja” internet domain:
Company Name: IT Help Ninja
DNS Domain Name: ad.it-help.ninja
NETBIOS Domain Name: IT-HELP