-
Notifications
You must be signed in to change notification settings - Fork 254
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
EL9/CentOS Stream 9 lost offline smart card authentication #7532
Comments
To my untrained eye this seems like it might be relevant:
|
Does it mean you can't auth online? From the attached log:
Check if |
Authentication will work when the system is online. I don't think the local auth policy applies here - all of our users are in AD via an IPA/AD trust. |
Sorry, I meant to say: "when I brought it home" == auth happens offline?
IIRC, if auth happens offline (so can't use PKINIT at your KDC) then it falls back to local auth. |
Right, I can't auth offline. I'm not entirely sure what you mean by "local" auth - it certainly authenticates against cached credentials. All I know is that this has been working for years, and now I'm starting to see this offline failure at times on some of our EL9 system. This is a show-stopper for us and I need to figure out what is going on so we can fix it. |
Did you try to allow smart card auth in |
I added to domain/nwra.com:
But no difference, I still see:
On my other laptop that is working I do see:
So that does seem like the likely culprit. But why is it getting set to False? |
I also tried adding it to domain/nwra.com/ad.nwra.com but got:
|
On working system:
on failing system:
Not sure why we get the Auth types message if I'm setting it explicitly. I suspect this isn't working for sub-domains. |
Okay, here's the difference:
on the working system localSmartcardAuth is TRUE. Why would that be different? |
I changed that in the database and was able to log in. But now need to figure out why it is getting changed. |
Okay, I think I found the trigger. If I authenticate with sudo without a smartcard present, the fact that smartcard authentication was not possible:
gets recorded in the cache database:
|
I also see this with ssd-2.9.4-6.el9_4.1.alma.1 |
I do NOT see this behavior with sssd-2.9.4-4.el8_10.x86_64 |
Sorry for delays with responses (PTO season) and thanks for the investigation. We will need some time to review this. |
Hi, thank you for your report. It is as you have described, if there is not Smartcard inserted and a different authentication method is used the So we either have to find a way to see if the KDC offers pkinit or we should not overwrite bye, |
Any chance I could get access to the redhat issue? Login ID is |
This is an internal tracker, sorry that private URL gets published in public comments. Once RHEL project product ticket (public) will be created, link will be posted here as well. |
The krb5 backend will only returns that Smartcard authentication is available if a Smartcard is present. That means if the user authenticates with a different method and a Smartcard is not present at this time 'sc_allow' will be 'false' and might overwrite a 'true' value written during a previous authentication attempt where a Smartcard was present. To avoid this we only write 'true' values. Since the default if SYSDB_LOCAL_SMARTCARD_AUTH is missing is 'false' local Smartcard authentication (offline) will still only be enabled if online Smartcard authentication was detected. Resolves: SSSD#7532
Hi @opoplawski, I wonder if you can check if the fix from #7602 works for you. You can find a couple of build with the fix at https://copr.fedorainfracloud.org/coprs/g/sssd/pr7602/. Thanks. bye, |
The krb5 backend will only returns that Smartcard authentication is available if a Smartcard is present. That means if the user authenticates with a different method and a Smartcard is not present at this time 'sc_allow' will be 'false' and might overwrite a 'true' value written during a previous authentication attempt where a Smartcard was present. To avoid this we only write 'true' values. Since the default if SYSDB_LOCAL_SMARTCARD_AUTH is missing is 'false' local Smartcard authentication (offline) will still only be enabled if online Smartcard authentication was detected. Resolves: #7532 Reviewed-by: Iker Pedrosa <[email protected]> Reviewed-by: Justin Stephenson <[email protected]> (cherry picked from commit 67ba42c)
Sorry I missed this request. @opoplawski, you still can use a nightly build from https://copr.fedorainfracloud.org/coprs/g/sssd/nightly/ (once it gets rebuild with 67ba42c / b4c4968 ) |
Looks like none of the nightly builds are succeeding. |
Huh...
etc @pbrezina, somehow nightly copr builds are broken (while PR copr builds are working)... |
The tarball is empty, but I don't know why. Pull requests use different code to generate the srpm. Nightly build use |
COPR nigthly use https://github.com/SSSD/sssd/blob/master/.copr/Makefile but if I run it locally it works nicely. |
There's
In the logs, I'm contacting copr maintainers. |
We are also seeing this, when will this patch be released in RHEL9? |
https://issues.redhat.com/browse/RHEL-59876 As batch#0 update with RHEL 9.5 |
We are starting to run into some issues with offline smart card authentication with EL9/CS9 systems. Currently I have a CS9 laptop that when I brought it home I could no longer log in - I get a "Please (re)insert (different) smartcard" message.
sssd-2.9.5-4.el9.x86_64
Config:
sssd_pam.log:
sssd_pam.log
The text was updated successfully, but these errors were encountered: