Skip to content
Client Panel

DNS & Kerberos

After installing the FreeIPA server, verify that DNS and Kerberos are functioning correctly before attempting to join any clients. These two services form the backbone of FreeIPA, and issues here will cascade into every other failure.

FreeIPA uses Kerberos for passwordless authentication. This is the core identity mechanism.

Terminal window
kinit admin
# Enter the admin password you set during installation

kinit requests a TGT (Ticket Granting Ticket) from the Kerberos KDC. The TGT acts as your “master pass” for the next 24 hours, allowing you to access any Kerberized service without re-entering your password.

Terminal window
klist

Expected output:

Ticket cache: KCM:0
Default principal: [email protected]
Valid starting Expires Service principal
04/18/26 10:00:00 04/19/26 10:00:00 krbtgt/[email protected]
FieldMeaning
Default principalThe authenticated user
Valid starting / ExpiresTicket validity window
Service principalThe service this ticket grants access to
Terminal window
kdestroy # Log out
klist -l # List all sessions

FreeIPA’s integrated DNS must be fully functional. Without it, clients cannot discover services or join the domain.

Terminal window
dig @localhost ipa-server.example.internal +short
# Should return: 192.168.100.128

If the record is missing:

Terminal window
ipa dnsrecord-find example.internal ipa-server
ipa dnsrecord-add example.internal ipa-server --a-rec=192.168.100.128
Terminal window
dig -x 192.168.100.128 @localhost +short
# Should return: ipa-server.example.internal.

Reverse DNS is used for logging, auditing, and security validations like SSH. Missing reverse records cause connection delays.

If missing:

Terminal window
ipa dnszone-find
# Should include 100.168.192.in-addr.arpa
ipa dnsrecord-add 100.168.192.in-addr.arpa 128 --ptr-rec=ipa-server.example.internal.

SRV records let clients automatically discover FreeIPA services:

Terminal window
dig SRV _ldap._tcp.example.internal @localhost
dig SRV _kerberos._tcp.example.internal @localhost

Both must return results pointing to your FreeIPA server. If SRV records are absent, clients will fail to join the domain.

Run these commands in sequence. All should succeed:

Terminal window
# 1. Kerberos
kinit admin && klist && kdestroy
# 2. Forward DNS
dig @localhost ipa-server.example.internal +short
# 3. Reverse DNS
dig -x 192.168.100.128 @localhost +short
# 4. SRV records
dig SRV _ldap._tcp.example.internal @localhost
dig SRV _kerberos._tcp.example.internal @localhost
# 5. All services running
ipactl status

With DNS and Kerberos confirmed working, join your first client to the domain.


Adapted from Dawn’s Blog : FreeIPA Complete Deployment Guide.