Centos下LDAP服务器的部署安装
OpenLDAP是轻量目录访问协议,在我们工作中会经常使用到。下面是小编跟大家分享的是Centos下LDAP服务器的部署安装,欢迎大家来阅读学习~
Centos下LDAP服务器的部署安装
工具/原料
Centos7
ldap administrator
虚拟机
方法/步骤
1一、openldap安装,确保安装好centos7.0的虚拟机能正常上互联网。
# yum install -y openldap-* openldap-clients openldap-servers migrationtools freeradius-ldap freeradius-utils
2配置 OpenLDAP:
#vim /etc/openldap/slapd.d/cn=config/olcDatabase={2}hdb.ldif
olcSuffix: dc=baidu,dc=cn
olcRootDN: cn=admin,dc=baidu,dc=cn
添加一行:
olcRootPW: 123456 #密码根据自己需要修改
3配置监控数据库文件:
#vim /etc/openldap/slapd.d/cn=config/olcDatabase={1}monitor.ldif
olcAccess: {0}to * by dn.base="gidNumber=0+uidNumber=0,cn=peercred,cn=extern
al,cn=auth" read by dn.base="cn=admin,dc=baidu,dc=cn" read by * none
拷贝LDAP数据库配置文件到指定目录并赋予权限:
#cp /usr/share/openldap-servers/DB_CONFIG.example /var/lib/ldap/DB_CONFIG
# chown -R ldap.ldap /var/lib/ldap
测试配置文件是否正确
slaptest -u
[root@localhost ~]# slaptest -u
57e4dcb4 ldif_read_file: checksum error on "/etc/openldap/slapd.d/cn=config/olcDatabase={1}monitor.ldif"
57e4dcb4 ldif_read_file: checksum error on "/etc/openldap/slapd.d/cn=config/olcDatabase={2}hdb.ldif"
config file testing succeeded
开启和启用slapd在启动服务,并确认:
#systemctl start slapd //启动
# systemctl enable slapd //开机自动启动
#netstat -lt | grep ldap //确认是否启动
tcp 0 0 0.0.0.0:ldap 0.0.0.0:* LISTEN
tcp6 0 0 [::]:ldap [::]:* LISTEN
LDAP服务器的配置,添加需要schema模式:
# cd /etc/openldap/schema/
# ldapadd -Y EXTERNAL -H ldapi:/// -D "cn=config" -f cosine.ldif
# ldapadd -Y EXTERNAL -H ldapi:/// -D "cn=config" -f nis.ldif
# ldapadd -Y EXTERNAL -H ldapi:/// -D "cn=config" -f collective.ldif
# ldapadd -Y EXTERNAL -H ldapi:/// -D "cn=config" -f corba.ldif
# ldapadd -Y EXTERNAL -H ldapi:/// -D "cn=config" -f core.ldif
# ldapadd -Y EXTERNAL -H ldapi:/// -D "cn=config" -f duaconf.ldif
# ldapadd -Y EXTERNAL -H ldapi:/// -D "cn=config" -f dyngroup.ldif
# ldapadd -Y EXTERNAL -H ldapi:/// -D "cn=config" -f inetorgperson.ldif
# ldapadd -Y EXTERNAL -H ldapi:/// -D "cn=config" -f java.ldif
# ldapadd -Y EXTERNAL -H ldapi:/// -D "cn=config" -f misc.ldif
# ldapadd -Y EXTERNAL -H ldapi:/// -D "cn=config" -f openldap.ldif
# ldapadd -Y EXTERNAL -H ldapi:/// -D "cn=config" -f pmi.ldif
# ldapadd -Y EXTERNAL -H ldapi:/// -D "cn=config" -f ppolicy.ldif
[root@localhost ~]# cd /etc/openldap/schema/
[root@localhost schema]# ldapadd -Y EXTERNAL -H ldapi:/// -D "cn=config" -f ppolicy.ldif
SASL/EXTERNAL authentication started
SASL username: gidNumber=0+uidNumber=0,cn=peercred,cn=external,cn=auth
SASL SSF: 0
adding new entry "cn=ppolicy,cn=schema,cn=config"
[root@localhost schema]# ldapadd -Y EXTERNAL -H ldapi:/// -D "cn=config" -f pmi.ldif
SASL/EXTERNAL authentication started
SASL username: gidNumber=0+uidNumber=0,cn=peercred,cn=external,cn=auth
SASL SSF: 0
adding new entry "cn=pmi,cn=schema,cn=config"
使用迁移工具来创建LDAP:
#cd /usr/share/migrationtools/
# vim migrate_common.ph
//在61行
$NAMINGCONTEXT{'group'} = "ou=Groups";
//在 71行
$DEFAULT_MAIL_DOMAIN = "baidu.cn";
//在74行,
$DEFAULT_BASE = "dc=baidu,dc=cn";
//在90行
$EXTENDED_SCHEMA = 1;
:wq!
生成一个ldif文件并导入ladp数据库:
cd /usr/share/migrationtools/
# ./migrate_base.pl > /root/base.ldif
#ldapadd -x -W -D "cn=admin,dc=baidu,dc=cn" -f /root/base.ldif
输入密码: //第二步里面设置的密码
在liunx系统中建立一些用户并设置密码:
#mkdir /home/guests
#useradd -d /home/guests/ldapuser1 ldapuser1
#useradd -d /home/guests/ldapuser2 ldapuser2
#useradd -d /home/guests/ldapuser3 ldapuser3
#echo 'baidu@123' | passwd --stdin ldapuser1
#echo 'baidu@123' | passwd --stdin ldapuser2
#echo 'baidu@123' | passwd --stdin ldapuser3
从/etc/shadow过滤掉这些用户、组、密码:
#getent passwd | tail -n 6 > /root/users
#getent shadow | tail -n 6 > /root/shadow
# getent group | tail -n 6 > /root/groups
使用migrationtools ldif文件创建这些用户:
#cd /usr/share/migrationtools
#vim migrate_passwd.pl
找到188行 /etc/shadow 改成 /root/shadow
# ./migrate_passwd.pl /root/users > users.ldif
# ./migrate_group.pl /root/groups > groups.ldif
上传这些用户和组ldif文件到LDAP数据库:
#cd /usr/share/migrationtools
# ldapadd -x -W -D "cn=admin,dc=baidu,dc=cn" -f users.ldif
输入密码
# ldapadd -x -W -D "cn=admin,dc=baidu,dc=cn" -f groups.ldif
输入密码
最后,使用ladp administrator软件可以看到ldap目录已经看到了,如下图:
Centos下LDAP