OpenLdap安装配置
原创博文http://www.cnblogs.com/elvi/p/7661126.html
# OpenLdap安装配置 # 环境centos6 ##同步时间 ntpdate ntp.shu.edu.cn yum install epel-release #EPEL源 yum install php httpd -y #安装OpenLDAP yum install openldap openldap-* -y yum install nscd nss-pam-ldapd nss-* pcre pcre-* -y #配置ldap cp /usr/share/openldap-servers/slapd.conf.obsolete /etc/openldap/slapd.conf #设置ldap管理员密码 slappasswd -s q1w1 {SSHA}4NuDoOlB50xX/RtgcaTpDa6nQ4Ks7O2d slappasswd -s q1w1 |sed -e "s#{SSHA}#rootpw\t{SSHA}#g" >>/etc/openldap/slapd.conf #设置密码 tail -1 /etc/openldap/slapd.conf #修改dc配置 vim /etc/openldap/slapd.conf #如下参数大概在114行 database bdb #使用bdb数据库 suffix "dc=dev,dc=com" #定义dc,指定搜索的域 rootdn "cn=admin,dc=dev,dc=com" #定义管理员的dn,使用这个dn能登录openldap #优化ldap配置参数 #loglevel 296 #定义日志级别 #cachesize 1000 #换成条目数 checkpoint 2048 10 #表示内存中达到2048k或者10分钟,执行一次checkpoint,即写入数据文件的操做 #配置相关权限 #删除默认权限,将下面的内容都删除 database config access to * by dn.exact="gidNumber=0+uidNumber=0,cn=peercred,cn=external,cn=auth" manage by * none # enable server status monitoring (cn=monitor) database monitor access to * by dn.exact="gidNumber=0+uidNumber=0,cn=peercred,cn=external,cn=auth" read by dn.exact="cn=Manager,dc=my-domain,dc=com" read by * none #添加新的权限(这是2.3的权限设置方式) access to * by self write by anonymous auth by * read #配置syslog记录ldap的服务日志 cp /etc/rsyslog.conf /etc/rsyslog.conf_`date +%Y%m%d`.bak echo "local4.* /var/log/ldap.log" >>/etc/rsyslog.conf /etc/init.d/rsyslog restart #重启rsyslog服务 #配置ldap数据库路径 cp /usr/share/openldap-servers/DB_CONFIG.example /var/lib/ldap/DB_CONFIG chown ldap.ldap /var/lib/ldap/DB_CONFIG chmod 700 /var/lib/ldap/ ll /var/lib/ldap/ egrep -v "\#|^$" /var/lib/ldap/DB_CONFIG slaptest -u #检查配置文件是否正常 #ldap配置查看 egrep -v "\#|^$" /var/lib/ldap/DB_CONFIG slaptest -u egrep -v "^#|^$" /etc/openldap/slapd.conf #赋予配置目录相应权限: chown -R ldap:ldap /var/lib/ldap chown -R ldap:ldap /etc/openldap/ #设置本机ip域名解析 echo "172.16.11.31 dev.com">>/etc/hosts #启动ldap服务 /etc/init.d/slapd start chkconfig slapd on ps aux |grep ldap netstat -tunlp |grep slapd tail /var/log/ldap.log #查看日志文件 #查询一下ldap的内容 ldapsearch -LLL -W -x -H ldap://dev.com -D "cn=admin,dc=dev,dc=com" -b "dc=dev,dc=com" "(uid=*)" #从新生成2.3的配置文件 mv /etc/openldap/slapd.d{,.bak} mkdir /etc/openldap/slapd.d chown -R ldap.ldap /etc/openldap/slapd.d slaptest -f /etc/openldap/slapd.conf -F /etc/openldap/slapd.d/ ll /etc/openldap/slapd.d/ /etc/init.d/slapd restart netstat -tunlp |grep slapd ldapsearch -LLL -W -x -H ldap://dev.com -D "cn=admin,dc=dev,dc=com" -b "dc=dev,dc=com" "(uid=*)" #安装phpldapadmin yum install phpldapadmin -y cp /etc/phpldapadmin/config.php{,.bak} vim /etc/phpldapadmin/config.php #配置用DN登陆397行 $servers->setValue('login','attr','dn'); // $servers->setValue('login','attr','uid'); vim /etc/httpd/conf.d/phpldapadmin.conf #容许从远程访问 Allow from all echo ServerName localhost:80 >>/etc/httpd/conf/httpd.conf #添加本机web 80端口 service httpd restart #浏览器输入:http://IP地址/phpldapadmin/进行访问 cn=admin,dc=dev,dc=com ################################### #建立用户 cd /etc/openldap vim test.ldif ##### dn:dc=dev,dc=com dc:dev objectclass:top objectclass:domain objectclass:dcobject objectclass:organization o:dev,Inc. dn:ou=it, dc=dev, dc=com ou:it objectclass:organizationalUnit dn:cn=test,ou=it,dc=dev,dc=com cn:test sn:Test User objectclass:person ##### ldapadd -x -D "cn=admin,dc=dev,dc=com" -W -f /etc/openldap/test.ldif #搜索操做: ldapsearch -x -b 'dc=dev,dc=com' #删除全部子节点 ldapdelete -x -D 'cn=admin,dc=dev,dc=com' -W -r 'dc=dev,dc=com' ################################### ##建立系统帐号并导入到LDAP,须要migrationtools这个工具 useradd ldap1 passwd ldap1 #w1w1 yum install migrationtools -y cd /usr/share/migrationtools/ vim migrate_common.ph #修改70行左右的dc # Default DNS domain 71 $DEFAULT_MAIL_DOMAIN = "dev.com"; 73 # Default base 74 $DEFAULT_BASE = "dc=dev,dc=com"; #生成文件 ./migrate_base.pl > /tmp/base.ldif ./migrate_passwd.pl /etc/passwd > /tmp/passwd.ldif ./migrate_group.pl /etc/group > /tmp/group.ldif #导入到LDAP ldapadd -x -D "cn=admin,dc=dev,dc=com" -W -f /tmp/base.ldif ldapadd -x -D "cn=admin,dc=dev,dc=com" -W -f /tmp/passwd.ldif ldapadd -x -D "cn=admin,dc=dev,dc=com" -W -f /tmp/group.ldif service slapd restart ################################### #开启OpenLDAP使用的389端口: /etc/init.d/iptables stop /sbin/iptables -I INPUT -p tcp --dport 389 -j ACCEPT /etc/rc.d/init.d/iptables save /etc/init.d/iptables status /etc/init.d/iptables restart