<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Kerberos / LDAP-AD (Samba 4) and File Service SSO in Alfresco Forum</title>
    <link>https://connect.hyland.com/t5/alfresco-forum/kerberos-ldap-ad-samba-4-and-file-service-sso/m-p/3743#M1482</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi All !&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I'm currently&amp;nbsp;working on the setup of an Alfresco Community server.&amp;nbsp;I am running version 5.2.0&amp;nbsp;on a freshly installed Ubuntu 16.04 64bits server.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;This server will be used in a&amp;nbsp;network containing a domain (Active Directory type, but managed by Samba 4). I have already setup LDAP&amp;nbsp;and Kerberos auth (web user auth is working correctly), but while startup logs show me everything is alright, I cannot get Kerberos to authenticate my domain users for file service.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Here is the error stack I get when trying to login through netbios from a Windows Client :&lt;/P&gt;&lt;PRE style="padding-left: 30px;"&gt;2017-01-19 09:52:29,760 ERROR [org.alfresco.fileserver] [AlfJLANWorker19] Error from JLAN&lt;BR /&gt;GSSException: Failure unspecified at GSS-API level (Mechanism level: Checksum failed)&lt;BR /&gt; at sun.security.jgss.krb5.Krb5Context.acceptSecContext(Krb5Context.java:856)&lt;BR /&gt; at sun.security.jgss.GSSContextImpl.acceptSecContext(GSSContextImpl.java:342)&lt;BR /&gt; at sun.security.jgss.GSSContextImpl.acceptSecContext(GSSContextImpl.java:285)&lt;BR /&gt; at org.alfresco.jlan.server.auth.kerberos.SessionSetupPrivilegedAction.run(SessionSetupPrivilegedAction.java:102)&lt;BR /&gt; at java.security.AccessController.doPrivileged(Native Method)&lt;BR /&gt; at javax.security.auth.Subject.doAs(Subject.java:360)&lt;BR /&gt; at org.alfresco.filesys.auth.cifs.EnterpriseCifsAuthenticator.doKerberosLogon(EnterpriseCifsAuthenticator.java:1543)&lt;BR /&gt; at org.alfresco.filesys.auth.cifs.EnterpriseCifsAuthenticator.doSpnegoSessionSetup(EnterpriseCifsAuthenticator.java:1427)&lt;BR /&gt; at org.alfresco.filesys.auth.cifs.EnterpriseCifsAuthenticator.access$2(EnterpriseCifsAuthenticator.java:1311)&lt;BR /&gt; at org.alfresco.filesys.auth.cifs.EnterpriseCifsAuthenticator$2.execute(EnterpriseCifsAuthenticator.java:904)&lt;BR /&gt; at org.alfresco.filesys.auth.cifs.EnterpriseCifsAuthenticator$2.execute(EnterpriseCifsAuthenticator.java:1)&lt;BR /&gt; at org.alfresco.repo.transaction.RetryingTransactionHelper.doInTransaction(RetryingTransactionHelper.java:464)&lt;BR /&gt; at org.alfresco.filesys.auth.cifs.CifsAuthenticatorBase.doInTransaction(CifsAuthenticatorBase.java:648)&lt;BR /&gt; at org.alfresco.filesys.auth.cifs.EnterpriseCifsAuthenticator.processAlfrescoSessionSetup(EnterpriseCifsAuthenticator.java:887)&lt;BR /&gt; at org.alfresco.filesys.auth.cifs.EnterpriseCifsAuthenticator.processSessionSetup(EnterpriseCifsAuthenticator.java:689)&lt;BR /&gt; at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)&lt;BR /&gt; at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)&lt;BR /&gt; at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)&lt;BR /&gt; at java.lang.reflect.Method.invoke(Method.java:498)&lt;BR /&gt; at org.alfresco.repo.management.subsystems.ChainingSubsystemProxyFactory$1.invoke(ChainingSubsystemProxyFactory.java:119)&lt;BR /&gt; at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)&lt;BR /&gt; at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204)&lt;BR /&gt; at com.sun.proxy.$Proxy209.processSessionSetup(Unknown Source)&lt;BR /&gt; at org.alfresco.jlan.smb.server.NTProtocolHandler.procSessionSetup(NTProtocolHandler.java:417)&lt;BR /&gt; at org.alfresco.jlan.smb.server.NTProtocolHandler.runProtocol(NTProtocolHandler.java:223)&lt;BR /&gt; at org.alfresco.jlan.smb.server.SMBSrvSession.processPacket(SMBSrvSession.java:1481)&lt;BR /&gt; at org.alfresco.jlan.smb.server.nio.NIOCIFSThreadRequest.runRequest(NIOCIFSThreadRequest.java:149)&lt;BR /&gt; at org.alfresco.jlan.server.thread.ThreadRequestPool$ThreadWorker.run(ThreadRequestPool.java:153)&lt;BR /&gt; at java.lang.Thread.run(Thread.java:745)&lt;BR /&gt;Caused by: KrbException: Checksum failed&lt;BR /&gt; at sun.security.krb5.internal.crypto.ArcFourHmacEType.decrypt(ArcFourHmacEType.java:102)&lt;BR /&gt; at sun.security.krb5.internal.crypto.ArcFourHmacEType.decrypt(ArcFourHmacEType.java:94)&lt;BR /&gt; at sun.security.krb5.EncryptedData.decrypt(EncryptedData.java:175)&lt;BR /&gt; at sun.security.krb5.KrbApReq.authenticate(KrbApReq.java:281)&lt;BR /&gt; at sun.security.krb5.KrbApReq.&amp;lt;init&amp;gt;(KrbApReq.java:149)&lt;BR /&gt; at sun.security.jgss.krb5.InitSecContextToken.&amp;lt;init&amp;gt;(InitSecContextToken.java:108)&lt;BR /&gt; at sun.security.jgss.krb5.Krb5Context.acceptSecContext(Krb5Context.java:829)&lt;BR /&gt; ... 28 more&lt;BR /&gt;Caused by: java.security.GeneralSecurityException: Checksum failed&lt;BR /&gt; at sun.security.krb5.internal.crypto.dk.ArcFourCrypto.decrypt(ArcFourCrypto.java:408)&lt;BR /&gt; at sun.security.krb5.internal.crypto.ArcFourHmac.decrypt(ArcFourHmac.java:91)&lt;BR /&gt; at sun.security.krb5.internal.crypto.ArcFourHmacEType.decrypt(ArcFourHmacEType.java:100)&lt;BR /&gt; ... 34 more&lt;BR /&gt;2017-01-19 09:52:29,762 ERROR [org.alfresco.filesys.auth.cifs.EnterpriseCifsAuthenticator] [AlfJLANWorker19] No SPNEGO response, Kerberos logon failed&lt;/PRE&gt;&lt;P&gt;Here is&amp;nbsp;what I get when starting Alfresco server :&lt;/P&gt;&lt;PRE style="padding-left: 30px;"&gt;2017-01-19 09:51:12,316 DEBUG [org.alfresco.web.app.servlet.KerberosAuthenticationFilter] [localhost-startStop-1] HTTP Kerberos login successful&lt;BR /&gt;2017-01-19 09:51:12,317 DEBUG [org.alfresco.web.app.servlet.KerberosAuthenticationFilter] [localhost-startStop-1] Logged on using principal http/myserver.mydomain@MYREALM&lt;BR /&gt;2017-01-19 09:51:12,394 DEBUG [org.alfresco.repo.webdav.auth.KerberosAuthenticationFilter] [localhost-startStop-1] HTTP Kerberos login successful&lt;BR /&gt;2017-01-19 09:51:12,394 DEBUG [org.alfresco.repo.webdav.auth.KerberosAuthenticationFilter] [localhost-startStop-1] Logged on using principal http/myserver.mydomain@MYREALM&lt;/PRE&gt;&lt;P&gt;Here is my&amp;nbsp;alfresco-global.properties :&lt;/P&gt;&lt;PRE style="padding-left: 30px;"&gt;###############################&lt;BR /&gt;## Common Alfresco Properties #&lt;BR /&gt;###############################&lt;BR /&gt;&lt;BR /&gt;dir.root=/opt/alfresco/alf_data&lt;BR /&gt;&lt;BR /&gt;dir.contentstore=/home/alfresco/contentstore&lt;BR /&gt;dir.contentstore.deleted=/home/alfresco/contentstore.deleted&lt;BR /&gt;&lt;BR /&gt;alfresco.context=alfresco&lt;BR /&gt;alfresco.host=alfresco.public&lt;BR /&gt;alfresco.port=8080&lt;BR /&gt;alfresco.protocol=http&lt;BR /&gt;&lt;BR /&gt;share.context=share&lt;BR /&gt;share.host=alfresco.public&lt;BR /&gt;share.port=8080&lt;BR /&gt;share.protocol=http&lt;BR /&gt;&lt;BR /&gt;cifs.enabled=true&lt;BR /&gt;cifs.serverName=myserver&lt;BR /&gt;cifs.domain=DOMAIN&lt;BR /&gt;cifs.hostannounce=true&lt;BR /&gt;cifs.tcpipSMB.port=1445&lt;BR /&gt;cifs.netBIOSSMB.namePort=1137&lt;BR /&gt;cifs.netBIOSSMB.datagramPort=1138&lt;BR /&gt;cifs.netBIOSSMB.sessionPort=1139&lt;BR /&gt;&lt;BR /&gt;### database connection properties ###&lt;BR /&gt;db.driver=org.postgresql.Driver&lt;BR /&gt;db.username=alfresco&lt;BR /&gt;db.password=is2t&lt;BR /&gt;db.name=alfresco&lt;BR /&gt;db.url=jdbc:postgresql://localhost:5432/${db.name}&lt;BR /&gt;db.pool.max=275&lt;BR /&gt;db.pool.validate.query=SELECT 1&lt;BR /&gt;&lt;BR /&gt;# The server mode. Set value here&lt;BR /&gt;# UNKNOWN | TEST | BACKUP | PRODUCTION&lt;BR /&gt;system.serverMode=UNKNOWN&lt;BR /&gt;&lt;BR /&gt;### FTP Server Configuration ###&lt;BR /&gt;ftp.port=2121&lt;BR /&gt;&lt;BR /&gt;### RMI registry port for JMX ###&lt;BR /&gt;alfresco.rmi.services.port=50500&lt;BR /&gt;&lt;BR /&gt;### External executable locations ###&lt;BR /&gt;ooo.exe=/opt/alfresco/libreoffice/program/soffice.bin&lt;BR /&gt;ooo.enabled=true&lt;BR /&gt;ooo.port=8100&lt;BR /&gt;img.root=/opt/alfresco/common&lt;BR /&gt;img.dyn=${img.root}/lib&lt;BR /&gt;img.exe=${img.root}/bin/convert&lt;BR /&gt;&lt;BR /&gt;jodconverter.enabled=false&lt;BR /&gt;jodconverter.officeHome=/opt/alfresco/libreoffice&lt;BR /&gt;jodconverter.portNumbers=8100&lt;BR /&gt;&lt;BR /&gt;### Initial admin password ###&lt;BR /&gt;alfresco_user_store.adminpassword=verysecret&lt;BR /&gt;&lt;BR /&gt;### E-mail site invitation setting ###&lt;BR /&gt;notification.email.siteinvite=false&lt;BR /&gt;&lt;BR /&gt;### License location ###&lt;BR /&gt;dir.license.external=/opt/alfresco&lt;BR /&gt;&lt;BR /&gt;### Solr indexing ###&lt;BR /&gt;index.subsystem.name=solr4&lt;BR /&gt;dir.keystore=${dir.root}/keystore&lt;BR /&gt;solr.host=localhost&lt;BR /&gt;solr.port.ssl=8443&lt;BR /&gt;&lt;BR /&gt;### Allow extended ResultSet processing&lt;BR /&gt;security.anyDenyDenies=false&lt;BR /&gt;&lt;BR /&gt;### Smart Folders Config Properties ###&lt;BR /&gt;smart.folders.enabled=false&lt;BR /&gt;&lt;BR /&gt;### Remote JMX (Default: disabled) ###&lt;BR /&gt;alfresco.jmx.connector.enabled=false&lt;BR /&gt;&lt;BR /&gt;authentication.chain=kerberos1:kerberos,ldap1:ldap-ad,alfrescoNtlm1:alfrescoNtlm&lt;BR /&gt;&lt;BR /&gt;ntlm.authentication.sso.enabled=false&lt;BR /&gt;ldap.authentication.allowGuestLogin=false&lt;BR /&gt;ldap.authentication.userNameFormat=%s@mydomain&lt;BR /&gt;ldap.authentication.java.naming.provider.url=ldap://myserver.mydomain:389&lt;BR /&gt;ldap.authentication.defaultAdministratorUserNames=someusers&lt;BR /&gt;ldap.synchronization.java.naming.security.principal=alfresco@mydomain&lt;BR /&gt;ldap.synchronization.java.naming.security.credentials=verysecret&lt;BR /&gt;ldap.synchronization.groupSearchBase=ou=Groups,ou=MyOU,dc=my,dc=domain&lt;BR /&gt;ldap.synchronization.userSearchBase=ou=Users,ou=MyOU,dc=my,dc=domain&lt;BR /&gt;ldap.synchronization.personQuery=memberOf=CN=Employees,OU=Groups,OU=MyOU,DC=my,DC=domain&lt;BR /&gt;ldap.synchronization.userIdAttributeName=sAMAccountName&lt;BR /&gt;ldap.synchronization.userFirstNameAttributeName=givenName&lt;BR /&gt;ldap.synchronization.userLastNameAttributeName=sn&lt;BR /&gt;ldap.synchronization.userEmailAttributeName=mail&lt;BR /&gt;ldap.synchronization.groupIdAttributeName=cn&lt;BR /&gt;ldap.synchronization.groupType=group&lt;BR /&gt;ldap.synchronization.personType=user&lt;BR /&gt;ldap.synchronization.groupMemberAttributeName=member&lt;BR /&gt;ldap.synchronization.enableProgressEstimation=true&lt;BR /&gt;&lt;BR /&gt;kerberos.authentication.realm=MYREALM&lt;BR /&gt;kerberos.authentication.sso.enabled=true&lt;BR /&gt;kerberos.authentication.authenticateCIFS=true&lt;BR /&gt;kerberos.authentication.user.configEntryName=alfresco&lt;BR /&gt;kerberos.authentication.cifs.configEntryName=cifsalfresco&lt;BR /&gt;kerberos.authentication.http.configEntryName=httpalfresco&lt;BR /&gt;kerberos.authentication.cifs.password=verysecret&lt;BR /&gt;kerberos.authentication.http.password=verysecret&lt;BR /&gt;kerberos.authentication.defaultAdministratorUserNames=someusers&lt;BR /&gt;kerberos.authentication.cifs.enableTicketCracking=false&lt;BR /&gt;kerberos.authentication.stripUsernameSuffix=true&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;mail.host=mymta.domain&lt;BR /&gt;mail.port=25&lt;BR /&gt;mail.encoding=UTF-8&lt;BR /&gt;mail.smtp.auth=false&lt;/PRE&gt;&lt;P&gt;I have generate my two keytab files using samba-tools (the command is&amp;nbsp;&lt;EM&gt;/usr/local/samba/bin/samba-tool domain exportkeytab --principal myserver.mydomain@MYREALM /tmp/cifsalfresco.keytab&lt;/EM&gt;). Here is the result of a klist -ket :&lt;/P&gt;&lt;PRE style="padding-left: 30px;"&gt;Keytab name: FILE:/etc/keytables/cifsalfresco.keytab&lt;BR /&gt;KVNO Timestamp Principal&lt;BR /&gt;---- ------------------- ------------------------------------------------------&lt;BR /&gt; 2 01/18/2017 09:11:58 cifs/myserver.mydomain@MYREALM (arcfour-hmac)&lt;BR /&gt; 2 01/18/2017 09:11:58 cifs/myserver.mydomain@MYREALM (aes256-cts-hmac-sha1-96)&lt;BR /&gt; 2 01/18/2017 09:11:58 cifs/myserver.mydomain@MYREALM (aes128-cts-hmac-sha1-96)&lt;BR /&gt; 2 01/18/2017 09:11:58 cifs/myserver.mydomain@MYREALM (des-cbc-md5)&lt;BR /&gt; 2 01/18/2017 09:11:58 cifs/myserver.mydomain@MYREALM (des-cbc-crc)&lt;/PRE&gt;&lt;P&gt;Finally, here is my /etc/krb5.conf file :&lt;/P&gt;&lt;PRE style="padding-left: 30px;"&gt;[logging]&lt;BR /&gt; default = FILE:/var/log/krb5libs.log&lt;BR /&gt; kdc = FILE:/var/log/krb5kdc.log&lt;BR /&gt; admin_server = FILE:/var/log/kadmind.log&lt;BR /&gt;&lt;BR /&gt;[libdefaults]&lt;BR /&gt; default_realm = MYREALM&lt;BR /&gt; allow_weak_crypto = yes&lt;BR /&gt; default_tkt_enctypes = rc4-hmac&lt;BR /&gt; default_tgs_enctypes = rc4-hmac&lt;BR /&gt;&lt;BR /&gt;[realms]&lt;BR /&gt; MYREALM = {&lt;BR /&gt; kdc = myadserver.mydomain&lt;BR /&gt; kpasswd_server = myadserver.mydomain&lt;BR /&gt; admin_server = myadserver.mydomain&lt;BR /&gt; }&lt;BR /&gt;&lt;BR /&gt;[domain_realm]&lt;BR /&gt; myadserver.mydomain = MYREALM&lt;BR /&gt; .myadserver.mydomain = MYREALM&lt;/PRE&gt;&lt;P&gt;I can't figure what I am missing here. Any help would be greatly appreciated. Please let me know if more information could be usefull.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks !&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Gilles&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Thu, 19 Jan 2017 11:58:06 GMT</pubDate>
    <dc:creator>gguillotin</dc:creator>
    <dc:date>2017-01-19T11:58:06Z</dc:date>
    <item>
      <title>Kerberos / LDAP-AD (Samba 4) and File Service SSO</title>
      <link>https://connect.hyland.com/t5/alfresco-forum/kerberos-ldap-ad-samba-4-and-file-service-sso/m-p/3743#M1482</link>
      <description>Hi All !I'm currently&amp;nbsp;working on the setup of an Alfresco Community server.&amp;nbsp;I am running version 5.2.0&amp;nbsp;on a freshly installed Ubuntu 16.04 64bits server.This server will be used in a&amp;nbsp;network containing a domain (Active Directory type, but managed by Samba 4). I have already setup LDAP&amp;nbsp;and Kerberos a</description>
      <pubDate>Thu, 19 Jan 2017 11:58:06 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-forum/kerberos-ldap-ad-samba-4-and-file-service-sso/m-p/3743#M1482</guid>
      <dc:creator>gguillotin</dc:creator>
      <dc:date>2017-01-19T11:58:06Z</dc:date>
    </item>
    <item>
      <title>Re: Kerberos / LDAP-AD (Samba 4) and File Service SSO</title>
      <link>https://connect.hyland.com/t5/alfresco-forum/kerberos-ldap-ad-samba-4-and-file-service-sso/m-p/3744#M1483</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Probably it isn't working because Samba&amp;nbsp;wasn't supporting MIT Kerberos. Since a while now they do in a experimental stage. I am currently trying that &lt;img id="smileyhappy" class="emoticon emoticon-smileyhappy" src="https://connect.hyland.com/i/smilies/16x16_smiley-happy.png" alt="Smiley Happy" title="Smiley Happy" /&gt;:&amp;nbsp;&lt;A href="https://wiki.samba.org/index.php/Running_a_Samba_AD_DC_with_MIT_Kerberos_KDC" rel="nofollow noopener noreferrer"&gt;https://wiki.samba.org/index.php/Running_a_Samba_AD_DC_with_MIT_Kerberos_KDC&lt;/A&gt;&lt;BR /&gt;&lt;BR /&gt;Will come back to report my results.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 07 Jun 2019 16:49:58 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-forum/kerberos-ldap-ad-samba-4-and-file-service-sso/m-p/3744#M1483</guid>
      <dc:creator>mmuller88</dc:creator>
      <dc:date>2019-06-07T16:49:58Z</dc:date>
    </item>
  </channel>
</rss>

