ApacheDS和Kerberos安装程序

时间:2014-04-17 18:16:29

标签: java security authentication kerberos apacheds

我的任务是设置一个ApacheDS 2.0.0 LDAP + Kerberos(包括KDC)服务器,以便在我们的测试环境中使用。我跟着this guide,但是根据该页面的最后一步,我无法使用Kerberos成功验证我的LDAP服务器。

我正在使用Apache Directory Studio

当我选中“需要通过加密的TimeStamp进行预验证”时,我收到错误: javax.security.auth.login.LoginException:解密字段的完整性检查失败(31)

当我取消选中该字段并重新启动服务器时,我得到: javax.security.auth.login.LoginException:校验和失败

我确定我提供的用户名和密码是正确的。可能是什么问题呢?有没有人成功使用Kerberos设置ApacheDS 2.0.0?是否有指南我应该在某个地方?

似乎人们在他们的Kerberos服务器的ApacheDS have yet to document configuration上。

这是我的users.ldif:

version: 1
dn: uid=krbtgt,ou=services,dc=security,dc=example,dc=com
objectClass: top
objectClass: organizationalUnit
objectClass: krb5KDCEntry
objectClass: uidObject
objectClass: krb5Principal
krb5KeyVersionNumber: 0
krb5PrincipalName: krbtgt/EXAMPLE.COM@EXAMPLE.COM
ou: LDAP
uid: krbtgt
krb5Key:: MCGgAwIBEKEaBBjHVICYy3C2UuxkitpXRnZ8PVj4TGgN3xA=
krb5Key:: MBmgAwIBF6ESBBCpxZ7JnL7bycwis7pjrB+1
krb5Key:: MBmgAwIBEaESBBCv2PO7KtoerG8VJaCjGPQD
krb5Key:: MBGgAwIBA6EKBAiXyA7xg0OSzQ==
userPassword:: e1NTSEF9WWVWeFJ5cXBJVVQrT1Mva3l6ZForSU5IajBKT1RXdGNBaWdLR0E9P
 Q==

dn: ou=services,dc=security,dc=example,dc=com
objectClass: top
objectClass: organizationalUnit
ou: services

dn: uid=jsmith,ou=users,dc=security,dc=example,dc=com
objectClass: top
objectClass: krb5KDCEntry
objectClass: inetOrgPerson
objectClass: krb5Principal
objectClass: person
objectClass: organizationalPerson
cn: John Smith
krb5KeyVersionNumber: 1
krb5PrincipalName: jsmith@EXAMPLE.COM
sn: Smith
krb5Key:: MCGgAwIBEKEaBBh/3/6FzQdeRS+/Sssvg7Xyrr96B3lewT4=
krb5Key:: MBmgAwIBF6ESBBCynaCNjbAxJwdWfXMcALRn
krb5Key:: MBmgAwIBEaESBBBMzkq2olx6fnakVd8zcle3
krb5Key:: MBGgAwIBA6EKBAhdv8v9esiwbQ==
uid: jsmith
userPassword:: e2NyeXB0fXJWOFlyaTlTR2tsYWs=

dn: ou=users,dc=security,dc=example,dc=com
objectClass: top
objectClass: organizationalUnit
ou: users

dn: uid=ldap,ou=services,dc=security,dc=example,dc=com
objectClass: top
objectClass: organizationalUnit
objectClass: krb5KDCEntry
objectClass: uidObject
objectClass: krb5Principal
krb5KeyVersionNumber: 0
krb5PrincipalName: ldap/example.net@EXAMPLE.COM
ou: TGT
uid: ldap
krb5Key:: MCGgAwIBEKEaBBioosfqqw3pVAsaLNC12rws8vICSX9kouk=
krb5Key:: MBmgAwIBF6ESBBCXJFfXz9ORAGaUrSCHGzoN
krb5Key:: MBmgAwIBEaESBBA+pN1ipA5mPjNSLYBbuKgy
krb5Key:: MCmgAwIBEqEiBCBCxVPVFGb6miec+4ztUuMilATQNemHh+gxT+KmsqN1RQ==
krb5Key:: MBGgAwIBA6EKBAhMCxySpE8O9w==
userPassword:: e1NTSEF9YUZEazF6bnZyZFVscVFhbEpxc3dIUDBpRlJ4QysyZkUxK2RaZUE9P
 Q==

dn: dc=security,dc=example,dc=com
objectClass: top
objectClass: domain
dc: security

dn: dc=example,dc=com
objectclass: top
objectclass: domain
dc: example

4 个答案:

答案 0 :(得分:0)

请提供版本详细信息和服务器的config.ldif。

P.S:将这些详细信息发布到ApacheDS用户邮件列表将有助于快速响应。原因       在这里,我是唯一监控S​​O的人。

答案 1 :(得分:0)

我在使用Java 1.7.0_60的Windows 7上使用Apache 2.0.0-M17时遇到了完全相同的错误。最后,我设法通过使用纯文本密码而不是密码哈希来克服这个问题。我尝试了不同的密码哈希算法,但它们都没有用,所以最后我放弃了并使用了纯文本密码。

的问候,
Detelin

答案 2 :(得分:0)

我也有完全相同的问题,在Windows7上使用JDK8并在Eclipse Luna上运行Studio。 Apache DS文档缺少许多标有“TODO”的页面,并且在论坛等搜索没有取得太大进展,除了提示它可能按指南解释的方式工作,但仅限于Linux环境而不是Windows?如果您对此有任何进一步的消息,请在此处发布。

答案 3 :(得分:0)

似乎问题是由用户的密码设置引起的。 设置密码时请使用“纯文本”而不​​是其他哈希算法。密码哈希拦截器默认会将SSHA哈希。

如果这无法解决您的问题,请告诉我。