Am Fri, Feb 03, 2023 at 07:16:58PM -0000 schrieb r0 nam1 via FreeIPA-users:
> Apologies for my previous thread mess, I've learned to keep it neat.
> 
> In following my previous thread 
> (https://lists.fedorahosted.org/archives/list/freeipa-users@lists.fedorahosted.org/thread/FYZFFHQ573REKTXHJK5DZU3RET76X7LA/)
>  
> 
> I've discovered what I believe to be the issue when trying to login with 
> Smartcards. When running kinit already logged in it can prompt for a pin and 
> successfully use that data to verify the certificate. Then when trying to 
> login from tty1 with pam_sss.so require_cert_auth present, the krb5 child 
> attempts to kinit:
> '''
> DEBUG(SSSDBG_TRACE_FUNC,
>           "Attempting kinit for realm [%s]\n",realm_name);
>     kerr = kr->krb5_get_init_creds_password(kr->ctx, kr->creds, kr->princ,
>                                             password_or_responder(password),
>                                             sss_krb5_prompter, kr, 0, NULL,
>                                             kr->options);
>     if (kr->pd->cmd == SSS_PAM_PREAUTH && kerr != KRB5KDC_ERR_KEY_EXP) {
>         /* Any errors except KRB5KDC_ERR_KEY_EXP are ignored during pre-auth,
>          * only data is collected to be send back to the client.
>          * KRB5KDC_ERR_KEY_EXP must be handled separately to figure out the
>          * possible authentication methods to update the password. */
>         DEBUG(SSSDBG_TRACE_FUNC,
>               "krb5_get_init_creds_password returned [%d] during pre-auth.\n",
>               kerr);
>         return 0;
>     } else {
>         if (kerr != 0) {
>             KRB5_CHILD_DEBUG(SSSDBG_CRIT_FAILURE, kerr);
> '''
> https://github.com/SSSD/sssd/blob/master/src/providers/krb5/krb5_child.c
> 
> Looking at the source code for the process I've come to the conslusion that 
> for SOME REASON, the kinit pin prompt fails after entering my Username, 
> Password, then prompting for a smartcard.
> It seems like p11_child sees the smartcard inserted, lets the krb5_child run, 
> and somehow fails when prompting for a pin. Even though the child 'fails' the 
> login is never denied with any smartcard, one just needs to be present, the 
> side effect of this is that a Kerberos ticket is never granted, but the Login 
> does succeed.

Hi,

for Smartcard authentication with PKINIT SSSD does two runs. First by
running p11_child to check if a Smartcard is present and then calling
krb5_child to check if the KDC offers PKINIT at all. Only if both
conditions are met SSSD will prompt for a Smartcard PIN in the second
run. Otherwise it might ask for other credentials depending which
authentication methods are found by krb5_child.

The snippet you posted above is mainly for the first run which happens
before SSSD would ask for a PIN.

Please add 'debug_level = 9' to the [pam] and [domain/...] section,
restart SSSD, try to login again and send all the logs from
/var/log/sssd for further inspection.

HTH

bye,
Sumit

> 
> Unfortunately that's everything I've been able to find, anyone able to help 
> with the info I've provided?
> _______________________________________________
> FreeIPA-users mailing list -- freeipa-users@lists.fedorahosted.org
> To unsubscribe send an email to freeipa-users-le...@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-le...@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

Reply via email to