On Mon, Jan 25, 2021 at 04:25:55PM -0000, Rudi Dayan wrote:
> Hello,
> 
> I would like to implement smartcard authentication to Microsoft AD with sssd 
> on Ubuntu 20.04 LTS.
> I am able to login to AD with a password but when I try to use a smartcard, 
> after a minute of timeout the password window pops up and even if I put the 
> correct password, I get the following error : "Authentication failure".
> When I used kinit using a smartcard with the same user the action succeed and 
> I got TGT.
> 
> I would appreciate your help on this subject.
> I have attached the configuration files : krb5.conf ,sssd.conf and the log 
> file : krb5_child.log
> 
> Thank you,
> Rudi
> 
> 
> #####################################
> krb5.conf
> #####################################
> 
> [logging]
>       default = FILE:/var/log/krb5libs.log
> 
> [libdefaults]
>       default_realm = DOMAIN.TEST
> #     dns_lookup_realm = true
> #     dns_lookup_kdc = true
>       ticket_lifetime = 24h # 
>       renew_lifetime  = 7d
> #     forwardable = true
> #     rdns = false
> 
>       pkinit_kdc_hostname = DC.DOMAIN.TEST
> #     pkinit_allow_upn = true
>       pkinit_anchors = DIR:/etc/rootcas/
>       pkinit_pool = DIR:/etc/rootcas/
>       pkinit_identities = PKCS11:/lib/libsadaptor.so
>       default_ccache_name = KEYRING:persistent:%{uid}
>       canonicalize = true
> 
> 
> # The following krb5.conf variables are only for MIT Kerberos.
>       # kdc_timesync = 1
>       # ccache_type = 4
> 
>       # proxiable = true
> 
> # The following encryption type specification will be used by MIT Kerberos
> # if uncommented.  In general, the defaults in the MIT Kerberos code are
> # correct and overriding these specifications only serves to disable new
> # encryption types as they are added, creating interoperability problems.
> #
> # The only time when you might need to uncomment these lines and change
> # the enctypes is if you have local software that will break on ticket
> # caches containing ticket encryption types it doesn't know about (such as
> # old versions of Sun Java).
> 
> #     default_tgs_enctypes = des3-hmac-sha1
> #     default_tkt_enctypes = des3-hmac-sha1
> #     permitted_enctypes = des3-hmac-sha1
> 
> # The following libdefaults parameters are only for Heimdal Kerberos.
>       fcc-mit-ticketflags = true
> 
> [realms]
> 
>       ATHENA.MIT.EDU = {
>               kdc = kerberos.mit.edu
>               kdc = kerberos-1.mit.edu
>               kdc = kerberos-2.mit.edu:88
>               admin_server = kerberos.mit.edu
>               default_domain = mit.edu
>       }
>       ZONE.MIT.EDU = {
>               kdc = casio.mit.edu
>               kdc = seiko.mit.edu
>               admin_server = casio.mit.edu
>       }
>       CSAIL.MIT.EDU = {
>               admin_server = kerberos.csail.mit.edu
>               default_domain = csail.mit.edu
>       }
>       IHTFP.ORG = {
>               kdc = kerberos.ihtfp.org
>               admin_server = kerberos.ihtfp.org
>       }
>       1TS.ORG = {
>               kdc = kerberos.1ts.org
>               admin_server = kerberos.1ts.org
>       }
>       ANDREW.CMU.EDU = {
>               admin_server = kerberos.andrew.cmu.edu
>               default_domain = andrew.cmu.edu
>       }
>         CS.CMU.EDU = {
>                 kdc = kerberos-1.srv.cs.cmu.edu
>                 kdc = kerberos-2.srv.cs.cmu.edu
>                 kdc = kerberos-3.srv.cs.cmu.edu
>                 admin_server = kerberos.cs.cmu.edu
>         }
>       DEMENTIA.ORG = {
>               kdc = kerberos.dementix.org
>               kdc = kerberos2.dementix.org
>               admin_server = kerberos.dementix.org
>       }
>       stanford.edu = {
>               kdc = krb5auth1.stanford.edu
>               kdc = krb5auth2.stanford.edu
>               kdc = krb5auth3.stanford.edu
>               master_kdc = krb5auth1.stanford.edu
>               admin_server = krb5-admin.stanford.edu
>               default_domain = stanford.edu
>       }
>         UTORONTO.CA = {
>                 kdc = kerberos1.utoronto.ca
>                 kdc = kerberos2.utoronto.ca
>                 kdc = kerberos3.utoronto.ca
>                 admin_server = kerberos1.utoronto.ca
>                 default_domain = utoronto.ca
>       }
>               
> 
> [domain_realm]
>       .mit.edu = ATHENA.MIT.EDU
>       mit.edu = ATHENA.MIT.EDU
>       .media.mit.edu = MEDIA-LAB.MIT.EDU
>       media.mit.edu = MEDIA-LAB.MIT.EDU
>       .csail.mit.edu = CSAIL.MIT.EDU
>       csail.mit.edu = CSAIL.MIT.EDU
>       .whoi.edu = ATHENA.MIT.EDU
>       whoi.edu = ATHENA.MIT.EDU
>       .stanford.edu = stanford.edu
>       .slac.stanford.edu = SLAC.STANFORD.EDU
>         .toronto.edu = UTORONTO.CA
>         .utoronto.ca = UTORONTO.CA
> 
> ######################
> sssd.conf
> ######################
> [sssd]
> domains = domain.test
> config_file_version = 2
> services = nss, pam
> debug_level = 10
> 
> [domain/domain.test]
> 
> debug_level = 10
> #
> ad_domain = domain.test
> krb5_realm = DOMAIN.TEST
> realmd_tags = manages-system joined-with-adcli
> access_provider = ad 
> auth_provider = ad
> id_provider = ad
> ldap_id_mapping = True
> #
> # cache_credentials = True
> # krb5_store_password_if_offline = True
> #
> use_fully_qualified_names = False
> default_shell = /bin/bash
> fallback_homedir = /home/%u@%d
> 
> 
> [pam]
> debug_level = 10
> pam_cert_auth = True
> 
> #######################
> krb5-child.log 
> #######################
> 
> Mon Jan 18 17:44:13 2021) [[sssd[krb5_child[75227]]]] [main] (0x0400): 
> krb5_child started.
> (Mon Jan 18 17:44:13 2021) [[sssd[krb5_child[75227]]]] [unpack_buffer] 
> (0x1000): total buffer size: [152]
> (Mon Jan 18 17:44:13 2021) [[sssd[krb5_child[75227]]]] [unpack_buffer] 
> (0x0100): cmd [249] uid [270401103] gid [270400513] validate [true] 
> enterprise principal [true] offline [false] UPN [[email protected]]

Hi,

this is the first run of krb5_child where it is figured out which
authentication methods are available ('cmd [249]'). Do you have runs
with 'cmd [241]', which is the actual authentication, in the logs as
well?

bye,
Sumit

> (Mon Jan 18 17:44:13 2021) [[sssd[krb5_child[75227]]]] [unpack_buffer] 
> (0x0100): ccname: [KEYRING:persistent:270401103] old_ccname: 
> [KEYRING:persistent:270401103] keytab: [/etc/krb5.keytab]
> (Mon Jan 18 17:44:13 2021) [[sssd[krb5_child[75227]]]] [check_use_fast] 
> (0x0100): Not using FAST.
> (Mon Jan 18 17:44:13 2021) [[sssd[krb5_child[75227]]]] [become_user] 
> (0x0200): Trying to become user [270401103][270400513].
> (Mon Jan 18 17:44:13 2021) [[sssd[krb5_child[75227]]]] [main] (0x2000): 
> Running as [270401103][270400513].
> (Mon Jan 18 17:44:13 2021) [[sssd[krb5_child[75227]]]] [set_lifetime_options] 
> (0x0100): No specific renewable lifetime requested.
> (Mon Jan 18 17:44:13 2021) [[sssd[krb5_child[75227]]]] [set_lifetime_options] 
> (0x0100): No specific lifetime requested.
> (Mon Jan 18 17:44:13 2021) [[sssd[krb5_child[75227]]]] 
> [set_canonicalize_option] (0x0100): Canonicalization is set to [true]
> (Mon Jan 18 17:44:13 2021) [[sssd[krb5_child[75227]]]] [main] (0x0400): Will 
> perform pre-auth
> (Mon Jan 18 17:44:13 2021) [[sssd[krb5_child[75227]]]] [tgt_req_child] 
> (0x1000): Attempting to get a TGT
> (Mon Jan 18 17:44:13 2021) [[sssd[krb5_child[75227]]]] [get_and_save_tgt] 
> (0x0400): Attempting kinit for realm [DOMAIN.TEST]
> (Mon Jan 18 17:44:13 2021) [[sssd[krb5_child[75227]]]] 
> [sss_child_krb5_trace_cb] (0x4000): [75227] 1610984653.874510: Getting 
> initial credentials for test_user\@[email protected]
> 
> (Mon Jan 18 17:44:13 2021) [[sssd[krb5_child[75227]]]] 
> [sss_child_krb5_trace_cb] (0x4000): [75227] 1610984653.874512: Sending 
> unauthenticated request
> 
> (Mon Jan 18 17:44:13 2021) [[sssd[krb5_child[75227]]]] 
> [sss_child_krb5_trace_cb] (0x4000): [75227] 1610984653.874513: Sending 
> request (229 bytes) to DOMAIN.TEST
> 
> (Mon Jan 18 17:44:13 2021) [[sssd[krb5_child[75227]]]] 
> [sss_child_krb5_trace_cb] (0x4000): [75227] 1610984653.874514: Sending 
> initial UDP request to dgram 10.0.0.3:88
> 
> (Mon Jan 18 17:44:13 2021) [[sssd[krb5_child[75227]]]] 
> [sss_child_krb5_trace_cb] (0x4000): [75227] 1610984653.874515: Received 
> answer (197 bytes) from dgram 10.0.0.3:88
> 
> (Mon Jan 18 17:44:13 2021) [[sssd[krb5_child[75227]]]] 
> [sss_child_krb5_trace_cb] (0x4000): [75227] 1610984653.874516: Response was 
> from master KDC
> 
> (Mon Jan 18 17:44:13 2021) [[sssd[krb5_child[75227]]]] 
> [sss_child_krb5_trace_cb] (0x4000): [75227] 1610984653.874517: Received error 
> from KDC: -1765328359/Additional pre-authentication required
> 
> (Mon Jan 18 17:44:13 2021) [[sssd[krb5_child[75227]]]] 
> [sss_child_krb5_trace_cb] (0x4000): [75227] 1610984653.874520: 
> Preauthenticating using KDC method data
> 
> (Mon Jan 18 17:44:13 2021) [[sssd[krb5_child[75227]]]] 
> [sss_child_krb5_trace_cb] (0x4000): [75227] 1610984653.874521: Processing 
> preauth types: PA-PK-AS-REQ (16), PA-PK-AS-REP_OLD (15), PA-ETYPE-INFO2 (19), 
> PA-ENC-TIMESTAMP (2)
> 
> (Mon Jan 18 17:44:13 2021) [[sssd[krb5_child[75227]]]] 
> [sss_child_krb5_trace_cb] (0x4000): [75227] 1610984653.874522: Selected etype 
> info: etype aes256-cts, salt "DOMAIN.TESTtest_user", params ""
> 
> (Mon Jan 18 17:44:15 2021) [[sssd[krb5_child[75227]]]] [sss_krb5_responder] 
> (0x4000): Got question [pkinit].
> (Mon Jan 18 17:44:15 2021) [[sssd[krb5_child[75227]]]] [answer_pkinit] 
> (0x4000): [0] Identity 
> [PKCS11:module_name=/lib/libsadaptor.so:slotid=2:token=Crypto Token] flags 
> [0].
> (Mon Jan 18 17:44:15 2021) [[sssd[krb5_child[75227]]]] [answer_pkinit] 
> (0x4000): Setting pkinit_prompting.
> (Mon Jan 18 17:44:16 2021) [[sssd[krb5_child[75227]]]] [sss_krb5_prompter] 
> (0x4000): sss_krb5_prompter name [(null)] banner [(null)] num_prompts [1] 
> EINVAL.
> (Mon Jan 18 17:44:16 2021) [[sssd[krb5_child[75227]]]] [sss_krb5_prompter] 
> (0x4000): Prompt [0][Crypto Token                              PIN].
> (Mon Jan 18 17:44:16 2021) [[sssd[krb5_child[75227]]]] [sss_krb5_prompter] 
> (0x0020): Cannot handle password prompts.
> (Mon Jan 18 17:44:16 2021) [[sssd[krb5_child[75227]]]] 
> [sss_child_krb5_trace_cb] (0x4000): [75227] 1610984656.291326: PKINIT client 
> has no configured identity; giving up
> 
> (Mon Jan 18 17:44:16 2021) [[sssd[krb5_child[75227]]]] 
> [sss_child_krb5_trace_cb] (0x4000): [75227] 1610984656.291327: Preauth module 
> pkinit (16) (real) returned: -1765328360/Preauthentication failed
> 
> (Mon Jan 18 17:44:16 2021) [[sssd[krb5_child[75227]]]] 
> [sss_child_krb5_trace_cb] (0x4000): [75227] 1610984656.291328: PKINIT client 
> ignoring draft 9 offer from RFC 4556 KDC
> 
> (Mon Jan 18 17:44:16 2021) [[sssd[krb5_child[75227]]]] 
> [sss_child_krb5_trace_cb] (0x4000): [75227] 1610984656.291329: Preauth module 
> pkinit (15) (real) returned: -1765328360/Preauthentication failed
> 
> (Mon Jan 18 17:44:16 2021) [[sssd[krb5_child[75227]]]] [sss_krb5_prompter] 
> (0x4000): sss_krb5_prompter name [(null)] banner [(null)] num_prompts [1] 
> EINVAL.
> (Mon Jan 18 17:44:16 2021) [[sssd[krb5_child[75227]]]] [sss_krb5_prompter] 
> (0x4000): Prompt [0][Password for test_user\@[email protected]].
> (Mon Jan 18 17:44:16 2021) [[sssd[krb5_child[75227]]]] [sss_krb5_prompter] 
> (0x0020): Cannot handle password prompts.
> (Mon Jan 18 17:44:16 2021) [[sssd[krb5_child[75227]]]] 
> [sss_child_krb5_trace_cb] (0x4000): [75227] 1610984656.291330: Preauth module 
> encrypted_timestamp (2) (real) returned: -1765328254/Cannot read password
> 
> (Mon Jan 18 17:44:16 2021) [[sssd[krb5_child[75227]]]] 
> [sss_krb5_get_init_creds_password] (0x0020): 1627: 
> [-1765328174][Pre-authentication failed: Preauthentication failed]
> (Mon Jan 18 17:44:16 2021) [[sssd[krb5_child[75227]]]] [get_and_save_tgt] 
> (0x0400): krb5_get_init_creds_password returned [-1765328174] during pre-auth.
> (Mon Jan 18 17:44:16 2021) [[sssd[krb5_child[75227]]]] [k5c_send_data] 
> (0x0200): Received error code 0
> (Mon Jan 18 17:44:16 2021) [[sssd[krb5_child[75227]]]] [pack_response_packet] 
> (0x2000): response packet size: [12]
> (Mon Jan 18 17:44:16 2021) [[sssd[krb5_child[75227]]]] [k5c_send_data] 
> (0x4000): Response sent.
> (Mon Jan 18 17:44:16 2021) [[sssd[krb5_child[75227]]]] [main] (0x0400): 
> krb5_child completed successfully
> _______________________________________________
> sssd-users mailing list -- [email protected]
> To unsubscribe send an email to [email protected]
> 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/[email protected]
_______________________________________________
sssd-users mailing list -- [email protected]
To unsubscribe send an email to [email protected]
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/[email protected]

Reply via email to