Thanks, Flo.

 

I believe we now know what the correct values should be for the rid-base and secondary-rid-base, however, we can’t seem to modify the ID range with the missing values we created to cover the legacy NIS users:

 

$ ipa idrange-mod ID.EXAMPLE.COM_legacy_range

ipa: ERROR: This command can not be used to change ID allocation for local IPA domain. Run `ipa help idrange` for more information

 

Nor can we simply delete the range and try again:

 

ipa idrange-del ID.EXAMPLE.COM_legacy_range

ipa: ERROR: invalid 'ipabaseid,ipaidrangesize': range modification leaving objects with ID out of the defined range is not allowed

 

It seems that we are in a chicken or the egg bind here. Below is the output of iprange-find for reference.

 

----------------

3 ranges matched

----------------

  Range name: ID.EXAMPLE.COM _id_range

  First Posix ID of the range: 866800000

  Number of IDs in the range: 200000

  First RID of the corresponding RID range: 1000

  First RID of the secondary RID range: 100000000

  Range type: local domain range

 

  Range name: ID.EXAMPLE.COM _legacy_range

  First Posix ID of the range: 1000

  Number of IDs in the range: 98899

  Range type: local domain range

 

  Range name: ID.EXAMPLE.COM _subid_range

  First Posix ID of the range: 2147483648

  Number of IDs in the range: 2147352576

  First RID of the corresponding RID range: 2147283648

  Domain SID of the trusted domain: S-1-5-21-538032-778436-45698521293

  Range type: Active Directory domain range

----------------------------

Number of entries returned 3

----------------------------

 

From: Florence Blanc-Renaud <flo@redhat.com>
Sent: Monday, January 22, 2024 11:50 PM
To: FreeIPA users list <freeipa-users@lists.fedorahosted.org>
Cc: Dungan, Scott A. <sdungan@caltech.edu>
Subject: Re: [Freeipa-users] Re: Upgrade to FreeIPA 4.9.12 on RHEL 8.9 caused web UI login and ipa command to stop working

 

Hi,

 

On Tue, Jan 23, 2024 at 1:05 AM Dungan, Scott A. via FreeIPA-users <freeipa-users@lists.fedorahosted.org> wrote:

Thanks to Paul for all the leg work on this issue. Based on that, I can confirm that we have the same problem after updating to 4.9.12-11 from 4.9.11-7. Running the oddjob command to add SIDs to the user accounts fails after encountering UIDs outside of the default IPA range. It was able to get the admin account working though. We have 294 users with UIDs in the range of 1001 to 99657. These were migrated from an ancient NIS domain when the IPA domain was provisioned. We tried adding a secondary IPA range that covers that scope:

ipa idrange-add ID.EXAMPLE.COM_legacy_range --base-id=1000 --range-size=98899

And then running the oddjob command again, but we get the sidgen errors still, plus a error about overlapping rid ranges:

[22/Jan/2024:15:09:50.398460268 -0800] - ERR - sidgen_task_thread - [file ipa_sidgen_task.c, line 194]: Sidgen task starts ...
[22/Jan/2024:15:09:50.499604871 -0800] - ERR - find_sid_for_ldap_entry - [file ipa_sidgen_common.c, line 522]: Cannot convert Posix ID [29034] into an unused SID.
[22/Jan/2024:15:09:50.499960197 -0800] - ERR - do_work - [file ipa_sidgen_task.c, line 154]: Cannot add SID to existing entry.
[22/Jan/2024:15:09:50.503257753 -0800] - ERR - sidgen_task_thread - [file ipa_sidgen_task.c, line 199]: Sidgen task finished [32].
[22/Jan/2024:15:09:55.035779436 -0800] - ERR - schema-compat-plugin - warning: no entries set up under cn=computers, cn=compat,dc=id,dc=example,dc=com
[22/Jan/2024:15:09:55.036238563 -0800] - ERR - schema-compat-plugin - Finished plugin initialization.
[22/Jan/2024:15:47:04.969286883 -0800] - ERR - ipa_range_check_pre_op - [file ipa_range_check.c, line 670]: New primary rid range overlaps with existing primary rid range.

I suspect that we may not have added the range correctly. We didn't pass the --rid-base= or --secondary-rid-base= flags/values as we were not sure what these values should be.

 

These values are important in order to generate the SIDs. Please read The role of security and relative identifiers in IdM ID ranges and Security Identifiers to understand how they are used. You need to pick values that do not conflict with the ones for your initial range.

 

flo


Any help would be much appreciated.

Scott

-----Original Message-----
From: Rob Crittenden via FreeIPA-users <freeipa-users@lists.fedorahosted.org>
Sent: Thursday, January 18, 2024 11:25 AM
To: FreeIPA users list <freeipa-users@lists.fedorahosted.org>
Cc: Paul Nickerson <pgn674@gmail.com>; Rob Crittenden <rcritten@redhat.com>
Subject: [Freeipa-users] Re: Upgrade to FreeIPA 4.9.12 on RHEL 8.9 caused web UI login and ipa command to stop working

Paul Nickerson via FreeIPA-users wrote:
> I confirmed that users who had an ipaNTSecurityIdentifier attribute could log in to the web UI, and those that did not have the ipaNTSecurityIdentifier attribute could not.
>
> I found the error in /var/log/dirsrv/slapd-SEMI-EXAMPLE-NET/errors like you said:
> [17/Jan/2024:20:28:09.571195828 +0000] - ERR - sidgen_task_thread - [file ipa_sidgen_task.c, line 194]: Sidgen task starts ...
> [17/Jan/2024:20:28:09.637675948 +0000] - ERR - find_sid_for_ldap_entry - [file ipa_sidgen_common.c, line 522]: Cannot convert Posix ID [1566000023] into an unused SID.
> [17/Jan/2024:20:28:09.658369523 +0000] - ERR - do_work - [file ipa_sidgen_task.c, line 154]: Cannot add SID to existing entry.
> [17/Jan/2024:20:28:09.666726494 +0000] - ERR - sidgen_task_thread - [file ipa_sidgen_task.c, line 199]: Sidgen task finished [32].
>
> I found some nice documentation at
> https://access.redhat.com/solutions/394763
>
> I used this command to see the ranges that I have configured:
> ipa idrange-find
>
> And these two commands to see the UIDs of the users who had not yet been given SIDs (some were inside the existing range; I think you're correct that the process stops at the first error):
> ldapsearch -H ldap://ipa01.semi.example.net:389/ -x -D "cn=Directory
> Manager" -W -b "cn=users,cn=accounts,dc=semi,dc=example,dc=net"
> "(!(ipaNTSecurityIdentifier=*))" uidNumber | grep uidNumber | grep -v
> "# requesting: " | sed 's/uidNumber: //' | sort -n ldapsearch -H
> ldap://ipa01.semi.example.net:389/ -x -D "cn=Directory Manager" -W -b
> "cn=deleted
> users,cn=accounts,cn=provisioning,dc=semi,dc=example,dc=net"
> "(!(ipaNTSecurityIdentifier=*))" uidNumber | grep uidNumber | grep -v
> "# requesting: " | sed 's/uidNumber: //' | sort -n
>
> Here's some documentation on what ID and RID ranges are for:
> https://www.freeipa.org/page/V3/ID_Ranges
>
> After doing a bunch of math and guess and check, I ran this:
> ipa idrange-add SEMI.EXAMPLE.NET_US150777_range --base-id=1441400000
> --range-size=531251000 --rid-base=101000000
> --secondary-rid-base=633000000
>
> That gave me an additional range (confirmed with ipa idrange-find). I ran ipa config-mod --enable-sid --add-sids again, saw no significant errors in /var/log/dirsrv/slapd-SEMI-EXAMPLE-NET/errors, and confirmed that there were 0 users left with no ipaNTSecurityIdentifier.
>
> All users are all set now. Thank you again.

Glad to hear it and thank you for your detailed analysis. I think this will be useful to other users that may run into this.

rob
--
_______________________________________________
FreeIPA-users mailing list -- freeipa-users@lists.fedorahosted.org
To unsubscribe send an email to freeipa-users-leave@lists.fedorahosted.org
Fedora Code of Conduct: https://docs.fedoraproject.org/en-US/project/code-of-conduct/
List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines
List Archives: https://lists.fedorahosted.org/archives/list/freeipa-users@lists.fedorahosted.org
Do not reply to spam, report it: https://pagure.io/fedora-infrastructure/new_issue
--
_______________________________________________
FreeIPA-users mailing list -- freeipa-users@lists.fedorahosted.org
To unsubscribe send an email to freeipa-users-leave@lists.fedorahosted.org
Fedora Code of Conduct: https://docs.fedoraproject.org/en-US/project/code-of-conduct/
List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines
List Archives: https://lists.fedorahosted.org/archives/list/freeipa-users@lists.fedorahosted.org
Do not reply to spam, report it: https://pagure.io/fedora-infrastructure/new_issue