通过slapd.confconfiguration使用OpenLDAP for Red Hat Linux进行集中authentication

目前,我正在为使用OpenLDAP for Red Hat Linux设置集中身份validation。

目标 – 为Red Hat Linux Servers设置一个集中的OpenLDAPauthentication,其中客户端可以通过ssh连接,用户pipe理可以在一台服务器上完成。

请不要查找rpm或yum安装no cn = config。 我想用slapd.conf和ldap.conf进行configuration

tar -xvf db-4.7.25.NC.tar.gz ls -ltr cp patch.4.7.25.1 patch.4.7.25.2 patch.4.7.25.3 patch.4.7.25.4 db-4.7.25.NC cd db-4.7.25.NC patch -p0 patch.4.7.25.1 patch -p0 < patch.4.7.25.1 patch -p0 < patch.4.7.25.2 patch -p0 < patch.4.7.25.3 patch -p0 < patch.4.7.25.4 cd build_unix/ ./dist/configure make make install export CPPFLAGS="-I/usr/local/BerkeleyDB.4.7/include" export LDFLAGS="-L/usr/local/BerkeleyDB.4.7/lib" export LD_LIBRARY_PATH=/opt/db-4.7.25.NC/build_unix/.libs vi /etc/profile source /etc/profile 

  cd /opt/ tar -xvzf openldap-2.4.23.tgz openldap-2.4.23 ./configure --with-tls --enable-accesslog --enable-auditlog --enable-dyngroup --enable-dynlist --enable-ppolicy --enable-bdb --enable-syslog --with-cyrus-sasl --with-threads --enable-crypt=yes --enable-ldap=yes --enable-proxycache=yes make depend make make test make install 

  vi /usr/local/etc/openldap/slapd.conf slappasswd my slapd.conf --------------- database bdb suffix "dc=exa,dc=com" rootdn "cn=Manager,dc=exa,dc=com" rootpw {SSHA}PxEhMMYJvFRqT3L4fYYCmevrt22zYeDS directory /usr/local/var/openldap-data ====================================================== root objects for the LDAP database cat exa.ldif dn: dc=exa,dc=sea dc: exa description: Root LDAP entry for exa.sea objectClass: dcObject objectClass: organizationalUnit dn: ou=People,dc=exa,dc=com ou: People description: All people in organisation objectClass: organizationalUnit 

我已经成功地添加了条目,并且可以search数据库,但是当我尝试更改密码时,它提供了错误消息(结果:没有这样的对象(32))

 **cn: uid=naveen,ou=People,dc=exa,dc=com uid: naveen cn: naveen objectClass: account objectClass: posixAccount objectClass: top objectClass: shadowAccount userPassword: {crypt}$1$SBo8cFfd$Nqc9yqobHxwiom/0BLPnf. shadowLastChange: 12502 shadowMax: 99999 shadowWarning: 7 loginShell: /bin/bash uidNumber: 2000 gidNumber: 2000 homeDirectory: /home/naveen** =============================================== [root@localhost bob]# ldappasswd -vx -D "cn=Manager,dc=exa,dc=com" -W - S "uid=naveen,ou=People,dc=exa,dc=com" New password: Re-enter new password: ldap_initialize( <DEFAULT> ) Enter LDAP Password: Result: No such object (32) 

任何人都可以build议我一个更好的方法来使用slapd.conf和客户端configuration对Red Hat Linux进行OpenLDAP身份validation。

客户端configuration –

authconfig-TUI

ldap.conf slapd.conf

================================================== =====================================

我解决了ldappasswd问题。

 [root@localhost opt]# ldappasswd -vx -D "cn=Manager,dc=exa,dc=com" -W -S "cn=John Smith,ou=People,dc=exa,dc=com" New password: Re-enter new password: ldap_initialize( ) Enter LDAP Password: Result: Success (0) [root@localhost opt]# 

请告诉我更好的方式来validation使用OpenLDAP的客户感谢。

在此先感谢纳文

你的问题相当糟糕,纳文。 好像你知道你想做什么,但是你没有真正想过如何去完成它(或研究)。

设置基于LDAP的身份validation的大纲是:

  1. 决定一个目录结构
    你需要弄清楚你的LDAP目录是什么样的。
    像AD部署一样思考(就像我很难说这样的事情)。
  2. 安装一个LDAP服务器
    你应该使用Yum / Apt /无论你的操作系统安装东西的标准方式是这部分。
    除非必须,否则从源头上构build它是没有意义的。
  3. 添加RFC 2307架构,以及其他任何你需要的
    RFC 2307是最小的。 如果使用sudo,可能还需要添加sudo模式,如果使用SSH,则可能需要添加OpenSSH LDAP公钥模式。
  4. configuration你的操作系统
    如果您打算使用OpenSSH-LPK(LDAP公钥)修补程序,请启用它。
    安装pam_ldap / nss_ldap(或pam_ldapd)并将LDAP添加到您的nsswitch.conf文件中。
  5. 填充您的LDAP目录
    添加几个用户和组。
  6. testing利润

有一些教程,这将帮助你,如果你谷歌周围。
RedHat也有一些关于这个主题的文字 ,虽然我不能在我的环境中运行RedHat,但是我不能保证它们的准确性。

您应该在客户端上configurationpamnss-pam-ldapd ,以允许将LDAP目录服务器用作用户,主机,组和其他用户的名称服务信息的主要来源。

现在一切都取决于你的客户端, Fedora和Rhel的“ 部署指南 ”是一个很好的资源。

无论如何,你可以使用system-config-authenticationauthconfig authconfig-tui来configuration它们。

这个命令的作用是将我的fedora 19机器configuration成我的openLdap目录:

authconfig --updateall --passalgo=md5 --enableldap --enableldapauth --ldapserver=myserver.mydomain --ldapbasedn=dc=mycompany --enableldaptls --enableldapstarttls --ldaploadcacert=http://myserver.mydomain/server.pem

对于其他发行版,您必须使用Googlesearchfunction。

这应该可以帮助你 – http://www.gentoo.org/doc/en/ldap-howto.xml