Ich habe mir ein opsi-Paket dafür gebaut. Die erforderlichen Debian-Pakete habe ich mir von UCC geholt. Hier sind die relevanten Sektionen:
[ShellInAnIcon_install_keytab_32]
set -x
apt install %SCRIPTPATH%/keytab/python-support_1.0.15.19.201606061039_all.deb -y
apt install %SCRIPTPATH%/keytab/python-univention-heimdal_6.0.1-1.59.201606071248_i386.deb -y
[ShellInAnIcon_install_keytab_64]
set -x
apt install %SCRIPTPATH%/keytab/python-support_1.0.15.19.201606061039_all.deb -y
apt install %SCRIPTPATH%/keytab/python-univention-heimdal_6.0.1-1.59.201606071248_amd64.deb -y
[ShellInAnIcon_configure_keytab]
set -x
hostname="$(hostname)"
kvno="$(ldapsearch -x -D "$binddn$" -w "$bindpwd$" "(&(objectClass=univentionHost)(cn=$hostname))" krb5KeyVersionNumber | sed -n 's/^krb5KeyVersionNumber: \(.*\)$/\1/p')"
# Backup old keytab
[ -e /etc/krb5.keytab ] && mv /etc/krb5.keytab "/etc/krb5.keytab.old_$(date +%F-%S%M%S)"
# Dump keytab
%SCRIPTPATH%/keytab/univention-create-keytab --keytab="/etc/krb5.keytab" --principal="host/$hostname.$domainname$" --alias="host/$hostname.$domainname$" --kvno=$kvno --password="$(cat /etc/machine.secret)"
Ich habe aber nicht ganz verstanden, wieso Univention das nicht in sein Join-Tool eingebaut hat. Stattdessen ist der Aufwand dafür minimal. Stattdessen verschlimmbessern sie die Netzwerkkonfiguration.
EDIT: Siehe auch