码迷,mamicode.com
首页 > 其他好文 > 详细

ldap 安装

时间:2018-05-08 17:36:13      阅读:160      评论:0      收藏:0      [点我收藏+]

标签:ldap

内容简介

      在centos6系统中安装配置openldap服务,通过migrationtools工具生成基于linux系统账户相关的ldap账户信息以及通过nfs共享方式在客户端自动挂接ldap用户的家目录


环境准备

1,准备两台及以上centos6操作系统主机,一台用于部署服务端其它用于部署客户端接入ldap认证 

2,关闭selinux

3,清空iptables规则 

4,配置好yum源,推荐使用阿里云yum源


ldap服务端安装与配置

[root@ldap-server ~]# yum list | grep openldap
[root@ldap-server ~]# yum install openldap openldap-clients openldap-servers openldap-devel -y

#openldap配置主目录在/etc/openldap下,默认文件目录如下

[root@ldap-server ~]# ll /etc/openldap/
total 28
drwxr-xr-x 2 root root 4096 Jan 10 11:07 certs
-rw-r----- 1 root ldap  121 Nov 10  2015 check_password.conf
-rw-r--r-- 1 root root  280 Nov 10  2015 ldap.conf
drwxr-xr-x 2 root root 4096 Jan 10 11:07 schema
drwx------ 2 ldap ldap 4096 Jan 10 11:10 slapd.d

#生成hash密码稍后用于配置ldap管理员密码,此处设置的密码为123456

[root@ldap-server ~]# slappasswd 
New password: 
Re-enter new password: 
{SSHA}SpiJ+uf0d1j7bRm6XoLJo9EX3Gk5uzzH

#拷贝服务端配置模版至/etc/openldap并配置,主要修改dc=my-domain,dc=com为自己的域名以及配置rootpw用于后续导入系统帐号信息,如下图所示

[root@ldap-server ~]# /bin/cp /usr/share/openldap-servers/slapd.conf.obsolete /etc/openldap/slapd.conf

技术分享图片

#拷贝DB_SAMPLE模版文件文件至/var/lib/ldap

[root@ldap-server ~]# /bin/cp /usr/share/openldap-servers/DB_CONFIG.example /var/lib/ldap/DB_CONFIG
[root@ldap-server ~]# chown ldap. /var/lib/ldap/ -R

#删除默认的ldap配置信息并重新生成相关配置

[root@ldap-server ~]# rm -rf /etc/openldap/slapd.d/*
[root@ldap-server ~]# slaptest -f /etc/openldap/slapd.conf -F /etc/openldap/slapd.d
config file testing succeeded
[root@ldap-server ~]# chown ldap. /etc/openldap/ -R

至此服务配置已经完成,启动ldap服务

[root@ldap-server ~]# service slapd start

Starting slapd:                                            [  OK  ]

[root@ldap-server ~]#


生成系统账户并导入ldap

创建/home/ldapuser为ldap用户家目录的上级目录

创建teacher及student组,gid分别为2000和3000(根据实际情况而定) 生成user01-user10归属teacher组

生成user11-users0归属student组


[root@ldap-server ~]# mkdir -p /home/ldapuser
[root@ldap-server ~]# groupadd teacher -g 2000
[root@ldap-server ~]# groupadd student -g 3000
[root@ldap-server ~]# for i in {01..10};do useradd -g teacher -d /home/ldapuser/user$i user$i;done
[root@ldap-server ~]# for i in {11..20};do useradd -g student -d /home/ldapuser/user$i user$i;done
[root@ldap-server ~]# for i in {01..20};do echo user$i | passwd --stdin user$i;done

提取上述用户在/etc/passwd及/etc/group中的信息至临时文件

[root@ldap-server ~]# mkdir /tmp/ldap
[root@ldap-server ~]# cat /etc/passwd | grep -E 'user[0-9]{2}' > /tmp/ldap/passwd
[root@ldap-server ~]# cat /etc/group | grep -E 'teacher|student' > /tmp/ldap/group
[root@ldap-server ~]# cat /tmp/ldap/passwd

安装migrationtools工具生成相应的ldap信息文件

[root@ldap-server ~]# yum install migrationtools -y


修改/usr/share/migrationtools/migrate_common.ph文件第71和74行信息为自己对应的域名信息,如下图所示

[root@ldap-server ~]#vim /usr/share/migrationtools/migrate_common.ph

技术分享图片

注意:

        根据自己的域名修改

通过migrate_bash.pl生成帐号基础信息文件

通过migrate_passwd.pl和/tmp/ldap/passwd文件生成用户信息文件

通过migrate_group.pl和/tmp/ldap/group文件生成用户信息文件

[root@ldap-server ~]# /usr/share/migrationtools/migrate_base.pl > /tmp/ldap/base.ldif
[root@ldap-server ~]# /usr/share/migrationtools/migrate_passwd.pl /tmp/ldap/passwd > /tmp/ldap/passwd.ldif
[root@ldap-server ~]# /usr/share/migrationtools/migrate_group.pl /tmp/ldap/group > /tmp/ldap/group.ldif

通过ldapadd命令添加上述生成的信息,主要用过下述参数;其中

-D 参数即为/etc/openldap/slapd.conf中定义的rootdn信息

-w password 中的password为上述使用slappasswd命令时的明文密码(能从命令行看见),不能与-W同时使用

-W 后不跟参数密码在敲下命令后根据提示输入(别人看不见),不能与-w同时使用

-x 使用不加密的协议与ldap服务端通信

-X 使用加密的协议与ldap服务端通信

-f 指定要添加的ldif文件路径

[root@ldap-server ~]#ldapadd -D "cn=admin,dc=bj,dc=uplooking,dc=com" -W -x -f /tmp/ldap/base.ldif
[root@ldap-server ~]#ldapadd -D "cn=admin,dc=bj,dc=uplooking,dc=com" -W -x -f /tmp/ldap/passwd.ldif
[root@ldap-server ~]#ldapadd -D "cn=admin,dc=bj,dc=uplooking,dc=com" -W -x -f /tmp/ldap/group.ldif

注意:

        如果有密码可以这样执行

       ldapadd -D "cn=admin,dc=bj,dc=uplooking,dc=com" -w 123456 -f /tmp/ldap/group.ldif


通过ldapsearch查询ldap中的用户组信息

[root@ldap-server ~]#ldapsearch -b "dc=bj,dc=uplooking,dc=com" -x
或者
[root@ldap-server ~]# ldapsearch -b "ou=Group,dc=uplooking,dc=com" -x

安装nfs设置ldap用户家目录为共享

[root@ldap-server ~]# yum install nfs-utils -y
[root@ldap-server ~]# cat /etc/exports
/home/ldapuser *(rw,no_root_squash)
[root@ldap-server ~]# service rpcbind start
Starting rpcbind:                                          [  OK  ]
[root@ldap-server ~]# service nfs start
Starting NFS services:                                     [  OK  ]
Starting NFS quotas:                                       [  OK  ]
Starting NFS mountd:                                       [  OK  ]
Starting NFS daemon:                                       [  OK  ]
[root@ldap-server ~]# chkconfig nfs on
[root@ldap-server ~]# chkconfig rpcbind on


ldap 安装

标签:ldap

原文地址:http://blog.51cto.com/hsuing/2114094

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!