Last Update: 2022-06-01

OpenBSD, Firefox, Kerberos

Quick tutorial on how to kerberize your Firefox using Heimdal on OpenBSD.

Kerberos

First you need to install Heimdal, an implementation of Kerberos 5.
# pkg_add heimdal
Add /usr/local/heimdal/bin to your PATH variable. Create the Kerberos configuration file /etc/krb5.conf:
[libdefaults]
	default_realm = TEST.LOCAL
	forwardable = yes
	proxiable = yes

[domain_realm]
	.test.local = TEST.LOCAL

[realms]
	.TEST.LOCAL = {
		default_domain = test.local
		kdc = kdc.test.local
	}
Alternative: A user specific configuration file (~/.krb5/config). Now check the configuration file for errors:
# verfiy_krb5_conf /etc/krb5.conf
And get a kerberos ticket and verify:
$ kinit -f
$ klist

Firefox

Install Firefox
# pkg_add firefox
and read /usr/local/share/doc/pkg-readmes/firefox. There is one crucial part missing in the README: Firefox loads the kerberos library at runtime, if it is needed. Therefore you need to add the following path to /etc/firefox/unveil.main:
/usr/local/heimdal/lib r
Now to the Heimdal library path to /etc/rc.conf.local:
shlib_dirs="/usr/local/heimdal/lib"
In Firefox, type about:config in the address field and set the following variables:
network.negotiate-auth.delegation-uris = .test.local
network.negotiate-auth.trusted-uris = .test.local
Sometimes you may need a proxy exception, in about:preferences open the proxy configuration at the bottom and add
.test.local