As an admin, I want to disable PAC inclusion in a service ticket to be configurable per service, so that samba doesn't choke when using that service ticket for authentication and being configured in standalone mode. See [1].
Even when setting the PAC type to NONE on the service in IPA, a (minimal) PAC seems to be included in the service ticket. The corresponding TGT which was requested by kinit without specifying --no-request-pac. This leads to samba, which is configured in standalone mode, to reject the ticket with NT_STATUS_BAD_TOKEN_TYPE [1].
NONE
kinit
--no-request-pac
NT_STATUS_BAD_TOKEN_TYPE
I suppose this is caused by the krb5 1.20+ changes to PAC handling. I'm not sure if ipa-kdb can even suppress inclusion of the PAC with the new krb5 API. I'm not enough of an expert on this matter...
ipa-kdb
Using kinit --no-request-pac is not an option for the actual use-case, since the cifs connection is established via libsmbclient which requests the TGT itself. Unfortunately libsmbclient does not have an equivalent API for specifying --no-request-pac.
kinit --no-request-pac
libsmbclient
security = user
cifs/...
smbclient -k //...
smbclient exits with NT_STATUS_BAD_TOKEN_TYPE
smbclient
smbclient successfully authenticates/connects to the samba server.
$ rpm -q freeipa-server freeipa-client ipa-server ipa-client 389-ds-base pki-ca krb5-server
freeipa-client-4.10.1-4.fc38.x86_64 package ipa-server is not installed package ipa-client is not installed 389-ds-base-2.3.4-1.fc38.x86_64 package pki-ca is not installed krb5-server-1.20.1-8.fc38.x86_64
I'll try to raise this issue on the samba side as well. There is actually a code path to explicitly request the inclusion of a PAC, but not an option to explicitly to exclude one [2].
[1] https://github.com/samba-team/samba/commit/2609e4297e04c93ca5bd1466617c4536faf5be32 [2] https://github.com/samba-team/samba/blob/a75378e354286d095d82f644d645768345cd00fb/source3/libads/kerberos.c#L180-L186
No, this cannot be done for security reasons, specifically for Samba. Samba requires PAC presence and relies on it. This is a decision made together during security fixes work done for a dollar sign CVE in 2020/2021. This is also a reason why MIT Kerberos pushed to include a minimal PAC. Active Directory requires PAC presence and will cut all non PAC clients from performing S4U extensions.
This, this ticket will be closed as wontfix.
Metadata Update from @abbra: - Issue close_status updated to: wontfix - Issue status updated to: Closed (was: Open)
Thanks @abbra for the response! Yeah, I already thought so, that these changes were done in response to those CVEs.
Let's see what the samba people say. Maybe a viable option would be to accept the minimal PACs in standalone mode.