RHEL Engineering is moving the tracking of its product development work on RHEL 6 through RHEL 9 to Red Hat Jira (issues.redhat.com). If you're a Red Hat customer, please continue to file support cases via the Red Hat customer portal. If you're not, please head to the "RHEL project" in Red Hat Jira and file new tickets here. Individual Bugzilla bugs in the statuses "NEW", "ASSIGNED", and "POST" are being migrated throughout September 2023. Bugs of Red Hat partners with an assigned Engineering Partner Manager (EPM) are migrated in late September as per pre-agreed dates. Bugs against components "kernel", "kernel-rt", and "kpatch" are only migrated if still in "NEW" or "ASSIGNED". If you cannot log in to RH Jira, please consult article #7032570. That failing, please send an e-mail to the RH Jira admins at rh-issues@redhat.com to troubleshoot your issue as a user management inquiry. The email creates a ServiceNow ticket with Red Hat. Individual Bugzilla bugs that are migrated will be moved to status "CLOSED", resolution "MIGRATED", and set with "MigratedToJIRA" in "Keywords". The link to the successor Jira issue will be found under "Links", have a little "two-footprint" icon next to it, and direct you to the "RHEL project" in Red Hat Jira (issue links are of type "https://issues.redhat.com/browse/RHEL-XXXX", where "X" is a digit). This same link will be available in a blue banner at the top of the page informing you that that bug has been migrated.
Bug 1859751 - [RFE] Allow SSSD to use anonymous pkinit for FAST
Summary: [RFE] Allow SSSD to use anonymous pkinit for FAST
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Red Hat Enterprise Linux 9
Classification: Red Hat
Component: sssd
Version: 9.0
Hardware: All
OS: Linux
medium
low
Target Milestone: rc
: ---
Assignee: Sumit Bose
QA Contact: Madhuri
URL:
Whiteboard: sync-to-jira
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2020-07-22 20:45 UTC by Abhijit Roy
Modified: 2022-11-15 13:07 UTC (History)
12 users (show)

Fixed In Version: sssd-2.7.0-1.el9
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
Environment:
Last Closed: 2022-11-15 11:17:20 UTC
Type: Bug
Target Upstream Version:
Embargoed:


Attachments (Terms of Use)


Links
System ID Private Priority Status Summary Last Updated
Github SSSD sssd issues 5961 0 None open [RFE] Allow SSSD to use anonymous pkinit for FAST 2022-01-19 16:29:06 UTC
Red Hat Product Errata RHBA-2022:8325 0 None None None 2022-11-15 11:17:49 UTC

Description Abhijit Roy 2020-07-22 20:45:15 UTC
[RFE] Allow SSSD to use anonymous pkinit for FAST

1. Proposed title of this feature request
   SSSD FAST implementation using Anonymous PKINIT
    
2. What is the nature and description of the request?  
              
For SSSD to use FAST a Kerberos keytab and service principal must exist.   Anonymous PKINIT can be used to create a credential cache to be used to established the FAST session.    I would like sssd to be enhanced to allow for the use on anonymous pkinit to create the FAST session.  
      
3. Please provide us the business requirements for this feature.
            
 Allows for use of FAST/OTP so that system admins can use MFA on a system without first having to create a system keytab.   RH8 deprecated pam_krb5 which allowed for the use of anonymous pkinit, therefore causing issues at our site in using FAST/OTP    
 
 4. Please provide us  functional requirements for this feature
  
RH8 deprecated pam_krb5 which allowed for the use of anonymous pkinit, therefore causing issues at our site in using FAST/OTP

Comment 6 Alexey Tikhonov 2021-08-31 18:34:59 UTC
At this stage this RFE should target RHEL9. Once/if implemented, backport to RHEL8 might be considered.

Comment 7 Alexey Tikhonov 2022-02-10 11:23:46 UTC
Pushed PR: https://github.com/SSSD/sssd/pull/5962

* `master`
    * 7e839befe84995f28b34bf3774ae65813218e047 - krb5: add krb5_fast_use_anonymous_pkinit option
    * 58ab4137c45d3d284cd25ef485614a61456fad05 - krb5_child: add fast-use-anonymous-pkinit option
    * d1ad68fab06cb61d9c935b698c40cf745b54d672 - krb5_child: move FAST TGT request into a function

Comment 9 Sumit Bose 2022-03-10 10:40:34 UTC
Hi,

to test this feature please setup a FreeIPA server with default setting, a trust is AD is not needed. After the setup is finished the following should just work:

# kinit -n
# klist
Ticket cache: KCM:0
Default principal: WELLKNOWN/ANONYMOUS@WELLKNOWN:ANONYMOUS

Valid starting       Expires              Service principal
03/10/2022 10:14:26  03/11/2022 09:39:15  krbtgt/IPA.VM


If you now set

    krb5_fast_use_anonymous_pkinit = True

in the [domain/...] section of sssd.conf, restart SSSD and do a login as IPA user, e.g.

    ssh admin@localhost

you should have a ccache file with the FAST armor ticket like:

# klist /var/lib/sss/db/fast_ccache_IPA.VM 
Ticket cache: FILE:/var/lib/sss/db/fast_ccache_IPA.VM
Default principal: WELLKNOWN/ANONYMOUS@WELLKNOWN:ANONYMOUS

Valid starting       Expires              Service principal
03/10/2022 10:33:45  03/10/2022 10:43:45  krbtgt/IPA.VM


(please note your realm might be different than IPA.VM)

The important part is 'Default principal: WELLKNOWN/ANONYMOUS@WELLKNOWN:ANONYMOUS' which indicates that anonymous pkinit was used. By default (without 'krb5_fast_use_anonymous_pkinit = True') the ccache will have a ticket for the host principal e.g.:

# klist /var/lib/sss/db/fast_ccache_IPA.VM 
Ticket cache: FILE:/var/lib/sss/db/fast_ccache_IPA.VM
Default principal: host/master.client.vm

Valid starting       Expires              Service principal
03/10/2022 10:40:06  03/11/2022 10:10:28  krbtgt/IPA.VM





HTH

bye,
Sumit

Comment 13 Madhuri 2022-05-30 08:15:47 UTC
Verified with automation,

2022-05-30T08:07:32 ok: [master.testrealm.test] => (item=ipa-server) => 
2022-05-30T08:07:32   msg:
2022-05-30T08:07:32   - arch: x86_64
2022-05-30T08:07:32     epoch: null
2022-05-30T08:07:32     name: ipa-server
2022-05-30T08:07:32     release: 8.el9
2022-05-30T08:07:32     source: rpm
2022-05-30T08:07:32     version: 4.9.8
2022-05-30T08:07:32 skipping: [client.testrealm.test] => (item=ipa-server) 
2022-05-30T08:07:32 ok: [master.testrealm.test] => (item=sssd-common) => 
2022-05-30T08:07:32   msg:
2022-05-30T08:07:32   - arch: x86_64
2022-05-30T08:07:32     epoch: null
2022-05-30T08:07:32     name: sssd-common
2022-05-30T08:07:32     release: 2.el9
2022-05-30T08:07:32     source: rpm
2022-05-30T08:07:32     version: 2.7.0


2022-05-30T07:57:39 ============================= test session starts ==============================
2022-05-30T07:57:39 platform linux -- Python 3.9.12, pytest-7.1.1, pluggy-1.0.0 -- /usr/bin/python3
2022-05-30T07:57:39 cachedir: .pytest_cache
...
...
2022-05-30T08:05:47 src/tests/multihost/ipa/test_misc.py::Testipabz::test_anonymous_pkinit_for_fast PASSED [ 66%]
2022-05-30T08:06:36 src/tests/multihost/ipa/test_misc.py::Testipabz::test_anonymous_pkinit_for_fast_false PASSED [ 75%]
...
...

Comment 15 errata-xmlrpc 2022-11-15 11:17:20 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory (sssd bug fix and enhancement update), and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

https://access.redhat.com/errata/RHBA-2022:8325


Note You need to log in before you can comment on or make changes to this bug.