Skip to content

NAS-138474 / 26.0.0-BETA.3 / Require DNS updates for the IPA directory service (by anodos325) (by bugclerk)#19271

Merged
anodos325 merged 2 commits into
release/26.0.0-BETA.3from
NAS-138474-26.0.0-BETA.3
Jul 7, 2026
Merged

NAS-138474 / 26.0.0-BETA.3 / Require DNS updates for the IPA directory service (by anodos325) (by bugclerk)#19271
anodos325 merged 2 commits into
release/26.0.0-BETA.3from
NAS-138474-26.0.0-BETA.3

Conversation

@bugclerk

@bugclerk bugclerk commented Jul 7, 2026

Copy link
Copy Markdown
Contributor

Creating the SMB and NFS Kerberos service principals during an IPA
join uses FreeIPA's service-add, which refuses to add a service to a
host that has no DNS A/AAAA record. register_dns() creates that
record, so it is a prerequisite for service-principal setup rather
than an optional step.

With DNS updates disabled the join aborted at register_dns() before
the service principals were created, leaving smbd unable to start:

        krb5_kt_start_seq_get on FILE:/etc/ipa/smb.keytab failed
        (No such file or directory)

Reject enable_dns_updates=False for IPA at validation time with a
clear message, since DNS updates are currently required to properly
support kerberized services.

Original PR: #19263

Original PR: #19268

anodos325 added 2 commits July 7, 2026 14:56
Creating the SMB and NFS Kerberos service principals during an IPA
join uses FreeIPA's service-add, which refuses to add a service to a
host that has no DNS A/AAAA record. register_dns() creates that
record, so it is a prerequisite for service-principal setup rather
than an optional step.

With DNS updates disabled the join aborted at register_dns() before
the service principals were created, leaving smbd unable to start:

    krb5_kt_start_seq_get on FILE:/etc/ipa/smb.keytab failed
    (No such file or directory)

Reject enable_dns_updates=False for IPA at validation time with a
clear message, since DNS updates are currently required to properly
support kerberized services.

Also roll back the local configuration written during a failed join
(host keytab, kerberos realm, CA certificate, and the IPA config
files). The post-enrollment steps move into _ipa_configure_and_register
so _ipa_join can wrap them and unroll on any failure. Previously a
partial join left that state behind, so the next attempt short-circuited
as already-joined and never retried registration, leaving the server
HEALTHY but with SMB and NFS broken. This also consolidates the rollback
the kerberos start error handler used to perform on its own.

(cherry picked from commit 1d6ea3c)
(cherry picked from commit 4809ec1)
(cherry picked from commit c306952)
(cherry picked from commit 9849c1e)
@bugclerk bugclerk self-assigned this Jul 7, 2026
@bugclerk

bugclerk commented Jul 7, 2026

Copy link
Copy Markdown
Contributor Author

@anodos325 anodos325 merged commit 1d73ddc into release/26.0.0-BETA.3 Jul 7, 2026
4 checks passed
@anodos325 anodos325 deleted the NAS-138474-26.0.0-BETA.3 branch July 7, 2026 14:59
@bugclerk

bugclerk commented Jul 7, 2026

Copy link
Copy Markdown
Contributor Author

JIRA ticket https://ixsystems.atlassian.net/browse/NAS-138474 is targeted to the following versions which have not received their corresponding PRs: 26.0.0-RC.1

@bugclerk

bugclerk commented Jul 7, 2026

Copy link
Copy Markdown
Contributor Author

This PR has been merged and conversations have been locked.
If you would like to discuss more about this issue please use our forums or raise a Jira ticket.

@truenas truenas locked as resolved and limited conversation to collaborators Jul 7, 2026
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants