如何在openldap中添加用户

如何在openldap中添加用户,第1张

一. 目的

本文旨在介绍如何安装OpenLDAP并且设置一个公司内部的集中化的邮件地址薄服务器供客户端查询。基本上,OpenLDAP还应用在其它许多方面,象集中化的用户帐号验证服务器,但邮件地址薄查询是最常用的。

二. 安装

按照编译和安装的步骤,依次运行:

#tar cvfz openldap-stable-20010524.tgz

#cd openldap-2.0.11

#./configure

#make depend

#make

#make test

#make install

我的 *** 作环境是redhat 6.1,如果没有遇到任何错误,最后默认安装LDAP后台程序slapd到目录/usr/local/libexec配置文件在目录/usr/local/etc/openldap/ 并且放各种OpenLDAP工具

ldapadd,ldapdelete,ldapmodify,ldapmodrdn,ldappasswd,ldapsearch 在目录

/usr/local/bin,运行时数据库在/usr/local/var/openldap-ldbm 。

本文基于 OpenLDAP 的安装后整理。

需要注意的是, 在 slaptest 命令生成的文件为 root 用户所有 , 需要用 chown 命令修改其属主, 然后再重启 slapd 服务

可以借助开源工具 migrationtools 将已有的 用户、密码以及用户组添加到openldap中。具体方式如下:

先安装工具

根据实际域名,修改 /usr/share/migrationtools/migrate_common.ph 配置文件中的如下字段

使用工具 migrate_base.pl 生成根域条目并导入到OpenLDAP中:

输入前面设置的 admin 密码即可将根域条目导入。

默认情况下, OpenLDAP 服务端与客户端之间使用明文进行验证、查询等 *** 作。 由于互联网上数据传输存在不安全的因素, 所以需要配置OpenLDAP来支持加密传输数据。

自己创建 CA 证书的基本步骤如下:

其中以下字段需要根据实际情况填写:

并在该路径下生成以下密钥

根据前面 CA 签发自身密钥的输入信息,填入下面的字段

修改配置文件 /etc/openldap/slapd.conf 中的下列配置项

目的:linux系统默认使用自己的Unix用户,我们有时需要多台主机都使用同一个用户,这样的还用户管理就比较麻烦。比较简单的解决方法是配置这些linux主机都使用同一个ldap的用户,这样只需要在ldap中进行用户更改即可,不再需要所有主机都进行更改了。

配置客户端:

a、安装ldap客户端:

yum install nss-pam-ldapd pam_ldap -y 

b、图形化配置:

LANG=C authconfig-tui

或者用命令修改:

authconfig --enablemkhomedir --disableldaptls --enableldap --enableldapauth --ldapserver=ldap://110.1.236.51 --ldapbasedn='dc=yinkp,dc=com' --update

cat /etc/sysconfig/authconfig |grep yes 

1、增加/etc/openldap/ldap.conf

2、修改 /etc/nsswitch.conf中sss为ldap

3、 修改/etc/pam.d/system-auth,/etc/pam.d/password-auth

sed -i 's/pam_sss.so/pam_ldap.so/g' /etc/pam.d/system-auth

sed -i 's/pam_sss.so/pam_ldap.so/g' /etc/pam.d/password-auth

4、修改sssd配置文件:

vi /etc/sssd/sssd.conf

5、修改nslcd配置文件:

vi /etc/nslcd.conf

6、重启nslcd/sssd

service nslcd restart

service sssd restart

验证:

切换为系统中没有,ldap中有的用户。如果OK,则成功。

ldapsearch -x -b 'ou=people,dc=yinkp,dc=com'

批量修改主机使用ldap用户:

分发上面已经配置好的主机上的文件到其它linux主机

注:如果没有分发脚本,也可以一个一个文件scp

deploy.sh /etc/sysconfig/authconfig /etc/sysconfig/ all

deploy.sh /etc/openldap/ldap.conf /etc/openldap/ all

deploy.sh /etc/nsswitch.conf /etc/ all

deploy.sh /etc/pam.d/system-auth /etc/pam.d/ all

deploy.sh /etc/sssd/sssd.conf /etc/sssd/ all

deploy.sh /etc/nslcd.conf /etc/ all

重启nslcd/sssd服务

runRemoteCmd.sh "/bin/systemctl restart  nslcd.service &&/bin/systemctl restart  sssd.service" ldap_client


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/bake/11532042.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-16
下一篇 2023-05-16

发表评论

登录后才能评论

评论列表(0条)

保存