Native FreeBSD Kerberos/LDAP with FreeIPA/IDM

vermaden.wordpress.com

89 points by vermaden 9 hours ago


beagle3 - 6 minutes ago

Is there a simpler system for a small local network? For my home lab use case, it is almost sufficient to rsync /etc/{passwd,group,hosts,…..} - I manually sync them because changes are few and far between.

I wanted to set up a central authority - i don’t care about multi master or even resilience to failure in that central authority.

But even a small setup is relatively complicated. I remember yp setup in the early ‘90s looked complicated but it is a piece of cake compared to modern systems. They provide a lot, but they don’t scale down - and it feels to me that they are complicated much more than is required for their feature list.

Take LDAP, for example - it is only “lightweight” compared to the thing it replaced. But it is ridiculously complicated for what it is. It is designed for a bandwidth-scarce, intermittent connection world; for a modern world, I’d just put it all in an SQLite database and rsync it all over the place (and use remote queries, the replicas only used for offline validation).

cullumsmith - 7 hours ago

Nice. I run a very similar setup, but opted for a stack of OpenLDAP / MIT Kerberos / PowerDNS on my "domain controllers."

OpenLDAP does multimaster replication and is the backend for DNS records and the Kerberos database.

The hardest part was figuring out OpenLDAPs configuration syntax, especially the correct ldif incantations for things like nested group memberOf= queries, schemas, and ACLs. It's somewhat inscrutable... Nowadays an LLM could do it for you at least.

At $job we use Linux / sssd, and I always found it super bloated and rather unreliable. It's nice coming home to FreeBSD and old boring stuff like pam_krb5 and nslcd. It just works.

The "ipa" command provided by FreeIPA for managing users/groups/etc is super convenient though.

sidkshatriya - 5 hours ago

First, I read (article referred to in blog post):

https://blog.hofstede.it/integrating-freebsd-15-with-freeipa... [1] .

_Only then_ I read https://vermaden.wordpress.com/2026/02/18/native-freebsd-ker... [2]

[1] is more high level. [2] is a bit more detailed.

zokier - 6 hours ago

I feel this is one of the weaknesses of Linux/unix ecosystem. The freeipa/sssd/nss/pam/krb/ldap/dns (+keycloak/samba/...) etc stack is just incredibly byzantine. I'm sure it is technically very capable in the right hands, but to me it feels like intractable mountain of things and worst of all the failure modes are pretty bad; you can accidentally leave security holes or alternatively lock yourself out.

ipython - 7 hours ago

Don’t forget to delete the keytab file from the ipa server! Otherwise anyone will be able to unauthenticated download that file and impersonate that host principal

Better yet you’ll want to encrypt that file in some way when transferring it

blacklion - 5 hours ago

It is pity, we need Linux to tun open source software like FreeIPA/IDM.

I want to deploy domain at my home lab, but there are only FreeBSDs and Windows (client versions, on desktops and laptops)... I don't want to install Linux.

paffdragon - 7 hours ago

Hah, what a coincidence, just started to look into yesterday how do I setup LDAP/OIDC on FreeBSD and today I was going to try FreeIPA or Keycloak. Thanks for sharing.

throw0101a - 4 hours ago

Perhaps worth noting that keytab files often need to be refresh as TGTs expire; handy utility to do that:

* https://www.eyrie.org/~eagle/software/kstart/

* https://www.freshports.org/security/kstart/

amaccuish - 4 hours ago

The FreeIPA documentation could be made a bit clearer, so many "obsolete" pages showing in search.

To my question, does anyone know if FreeIPA now supports integration with Samba including password auth for non domain members? Or is it still limited to Kerberos?

ptx - 5 hours ago

> this new method is possible to work because FreeBSD switched from Heimdal Kerberos implementation to MIT Kerberos in FreeBSD 15.0-RELEASE … and I am really glad that FreeBSD finally did it.

What was the problem with Heimdal? The FreeBSD wiki says they used an old version, but why not upgrade to a newer version of Heimdal instead of switching to an entirely different implementation?

poketdev - 5 hours ago

[flagged]

- 5 hours ago
[deleted]