Live data from Hacker News

Native FreeBSD Kerberos/LDAP with FreeIPA/IDM

vermaden.wordpress.com

11–20 of 65 posts

Re: Native FreeBSD Kerberos/LDAP with FreeIPA/IDM

#11
> 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?

Re: Native FreeBSD Kerberos/LDAP with FreeIPA/IDM

#13
post #7

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.

It's also a ton of security-sensitive code that parses untrusted data in a memory-unsafe language.

Re: Native FreeBSD Kerberos/LDAP with FreeIPA/IDM

#15
post #8

Earlier quoted context omitted.

Yes. And Microsoft Active Directory has integrated this stack with an easy to use graphical interface for almost 30 years now.

Ideally you want to run all those trusted (read: security critical, if compromised entire system is no longer trustworthy) processes on separated and audited machines, but instead busy people end up running them all together because they happen to be packaged together (like FreeIPA or Active Directory), and that makes it even harder to secure them correctly.

There's a very good reason to package these things together on the same machine: you can rely on local machine authentication to bootstrap the network authentication service. If the Kerberos secret store and the LDAP principal store are on different machines and you need both to authenticate network access, how do you authenticate the Kerberos service to the LDAP service?

Re: Native FreeBSD Kerberos/LDAP with FreeIPA/IDM

#17

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 inscrutabl…

Would be highly interested in learning more about this setup particularly the PowerDNS integration.

Re: Native FreeBSD Kerberos/LDAP with FreeIPA/IDM

#19
post #9
post #8

Earlier quoted context omitted.

Yes. And Microsoft Active Directory has integrated this stack with an easy to use graphical interface for almost 30 years now.

Active directory is dying along with local computer networks. Microsoft is pushing customers to Entra (formerly Azure Active directory). Modern, hybrid AD is not easy to use and difficult to manage.

> dying along with local computer networks

I have seen the exact opposite, with people moving to things like jumpcloud, keycloak, authentik, etc.

Re: Native FreeBSD Kerberos/LDAP with FreeIPA/IDM

#20
post #7

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.

There used to be a time in history when a system administrator had to know all this shit in order to keep their job. I guess nowadays devops just means dev as we furiously pump tokens into the AI Wurlitzer whenever we dont know how to do something and hope it doesnt gaslight us into deleting prod.

- Freeipa is Linux AD, includes DNS, dogtag, and OpenLDAP.

- SSSD is how linux machines authenticate with a central directory. this includes AD.

- nss is the order of operations in which the system attempts lookups against various directories for services.

- pam is the subsystem of authentication in linux.

- kerberos is a ticket based authentication system started by MIT and popularized by Microsoft.

- ldap is a directory for information and authentication data

- DNS should not need an explanation.

Active Directory is the exact same byzantine architecture, the only reason you dont complain about it is because Microsoft has hidden nearly every meaningful internal from you with fun buttons and dropdowns like a childs toy.

Make no mistake, when it breaks it is much more cataclysmic in its complexity. major multinational corporations can spend weeks with external consultants and even Microsoft themselves trying to debug it. Most failure modes result in rebuilding the entire directory from scratch out of the sheer futility of trying to recover anything. things as simple as an OS update can cause the complete failure of the directory, replication, kerberos key subsystem, or even the ADUC tool you use to interface with any of this. Most of the time your only solution is to wait for MS to release a fix.

FreeIPA isnt complete. it doesnt include things like group policies or account expiration but its infinitely easier to debug. its individual components are well documented and offer standalone debug and trace features. most if its components have existed longer than their competitive Microsoft offerings, or at very least vastly outscale and outperform them.

Kubernetes is just as complex, but cloud providers will happily bill you by the nanosecond for the gentle equivalent of Microsofts buttons and dropdowns. Microsoft will gladly bill you for "cloud" based AD. You can just as easily deploy local users in ansible.

Post reply on HN