Hash 如何让ldap评估明文密码与DES存储密码
我在CentoS 6.9上使用openldap slapd 2.4.40和postgresql9.2.23作为后台sql LDAPHash 如何让ldap评估明文密码与DES存储密码,hash,active-directory,openldap,des,crypt,Hash,Active Directory,Openldap,Des,Crypt,我在CentoS 6.9上使用openldap slapd 2.4.40和postgresql9.2.23作为后台sql LDAPuid和userPassword的用户和密码通过DES编码存储在postgresql中 原始明文为jacifk5 DES编码/加密文本为IfjFxsltK/MPE,存储在数据库中 我可以通过存储的密码查看LDAPSECH结果中的用户信息 ldapsearch -x -b "dc=example,dc=com" -D uid="HDZZZ0R0N,ou=people,
uid
和userPassword
的用户和密码通过DES编码存储在postgresql中
原始明文为jacifk5
DES编码/加密文本为IfjFxsltK/MPE
,存储在数据库中
我可以通过存储的密码查看LDAPSECH结果中的用户信息
ldapsearch -x -b "dc=example,dc=com" -D uid="HDZZZ0R0N,ou=people,dc=example,dc=com" -w IfjFxsltK/MPE '(&(uid= HDZZZ0R0N)(objectClass=*))'
# extended LDIF
#
# LDAPv3
# base <dc=example,dc=com> with scope subtree
# filter: (&(uid= HDZZZ0R0N)(objectClass=*))
# requesting: ALL
#
# user01, people, example.com
dn: uid= HDZZZ0R0N,ou=people,dc=example,dc=com
objectClass: inetOrgPerson
cn:: W+aOkl3lia/nlKPnianjg6Hjg7Pjg4bjg4rjg7PjgrnvvIgzNu+8iVNURw==
sn:: W+aOkl3lia/nlKPnianjg6Hjg7Pjg4bjg4rjg7PjgrnvvIgzNu+8iVNURw==
uid: HDZZZ0R0N
userPassword:: SWZqRnhzbHRLL01QRQ==
是否有人告诉我如何使ldapsearch通过明文解析给定密码,通过DES编码解析存储密码
我想知道的是如何将ldapseach命令行中的明文JacicFk5
转换为hashIfjFxsltK/MPE
,并使其与DB中的IfjFxsltK/MPE
匹配为userPassowrd
是否有适用于ldap.conf
或slapd.conf
的指令
我检查了以下内容
echo "SWZqRnhzbHRLL01QRQ==" |perl -MMIME::Base64 -ne 'print decode_base64($_) . "\n"'
它返回IfjFxsltK/MPE
perl -e 'print("userPassword: {crypt}".crypt("JacicFk5","If")."\n");'
它返回userPassword:{crypt}IfjFxsltK/MPE
perl -e 'print("userPassword: {crypt}".crypt("JacicFk5","If")."\n");'
还有一个信息。
my ldapseach可以通过ownclod为AD server中存储的用户解析密码文本。您想要/需要的是LDAP简单身份验证。请首先注意,以明文存储密码是不安全的 首先,您需要测试您支持/允许的身份验证机制 例如:
tukanos@localhost:~# ldapsearch -H ldap:// -x -LLL -s base -b "" supportedSASLMechanisms
dn:
supportedSASLMechanisms: DIGEST-MD5
supportedSASLMechanisms: CRAM-MD5
supportedSASLMechanisms: NTLM
现在,您需要通过ldapmodify
更改配置。您准备了一个带有配置的LDIF文件(LDIF代表LDAP数据交换格式)
准备配置文件,您可以将其命名为olcSaslSecProps.ldif:
dn: cn=config
replace: olcSaslSecProps
olcSaslSecProps: noanonymous,minssf=0,passcred
属性的含义:
noanonymous ... no anonymous connection allowed
minssf=0 ... that defines your effective encryption strength (0 ... no encryption)
passcred ... that would allow password to work as for credentials
引用
安全强度系数
服务器使用安全强度因子(SSF)来指示
保护的相对强度。SSF为零(0)表示没有
保护措施已经到位。SSF为一(1)表示完整性
保护措施已经到位。SSF大致大于1(>1)
与有效加密密钥长度相关。例如,DES是
56、3DES为112,AES为128、192或256
许多管理控制依赖于与TLS相关的SSF
以及LDAP会话上的SASL保护
安全控制不允许在需要适当保护时进行操作
没有到位。例如:
security ssf=1 update_ssf=112
所有操作和加密都需要完整性保护
用于更新操作(例如添加、删除、,
修改等)。有关详细信息,请参见slapd.conf(5)
现在应用LDIF文件:
ldapmodify -Y EXTERNAL -H ldapi:// -f ./olcSaslSecProps.ldif
现在要重新启动slapd
守护进程:
systemctl restart slapd
如果您现在检查您的配置,您将获得登录
和普通
:
ldapsearch -H ldap:// -x -LLL -s base -b "" supportedSASLMechanisms
dn:
supportedSASLMechanisms: PLAIN
supportedSASLMechanisms: LOGIN
现在,您的搜索应使用普通测试密码:
ldapsearch -x -b "dc=example,dc=com" -D uid="HDZZZ0R0N,ou=people,dc=example,dc=com" -w JacicFk5 '(&(uid= HDZZZ0R0N)(objectClass=*))'
谢谢。我试过了。但是,
ldapsearch-H ldap://-x-LLL-s base-b”支持的saslmechanisms
在应用LDIF前后都不会返回身份验证机制。而且我仍然无法使用原始密码登录。@user1345414除了389
,您是否更改了默认端口?你能试试ldapsearch-hlocalhost-p389-x-b“dc=example,dc=com”-s base-LLL-supportedsaslem机制吗?我试过了。slapd只返回dn:dc=example,dc=com
我还尝试了ldapsearch-LLL-Y EXTERNAL-H ldapi://-b cn=config dn
和slapd返回SASL/EXTERNAL authentication started ldap\u SASL\u interactive\u bind\s:authentication method not supported(7)附加信息:SASL(-4):无可用机制:安全标志与必需的不匹配
@user1345414 Hmm您可以共享配置文件吗slapcat-F/etc/ldap/slapd.d-b cn=config-l config.ldif
(请替换任何敏感信息)您的命令返回5b990171 str2entry:entry-1没有dn slapcat:bad配置目录代码>。但是我有cn=config.ldif文件dn:cn=config对象类:olcGlobal cn:config olcArgsFile:/var/run/openldap/slapd.args olcPidFile:/var/run/openldap/slapd.pid结构对象类:olcGlobal entryUUID:655d9802-393b-1038-89bd-8f0c8273e5e5e3创建者名称:cn=config createTimestamp:20180821030943Z olcPasswordHash:{CRYPT}olcSizeLimit:5000 olcPasswordCryptSaltFormat:“%s”olcsaslsecrops:noanonymous,minssf=0,passcred
我想将LDAP中存储的所有密码转换为明文。我总是用另一种方式来做。由于我的回答对您没有帮助,我将删除它。根据slapd2.4.40的配置文件ppolicy
未启用,除非swich已打开<代码>-启用ppolicy密码策略覆盖否|是| mod[否]
我的是CentOS的软件包。我不能更改。我自己创建了相同版本的slapd,启用了ppolicy。没有任何更改。我现在准备自定义slapd源。有人告诉我哪个源文件最适合添加DES加密,以使creartext密码与存储的密码匹配吗?@tukan,您的信息很重要。你不能删除。