zoukankan      html  css  js  c++  java
  • OpenLdap安装配置

    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	{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
  • 相关阅读:
    hdu 1312 ( Red and Black )
    hdu 1429 ( 胜利大逃亡(续) )
    zjut 小X的苹果
    hdu 1253 ( 胜利大逃亡 )
    许多事
    1198 ( Farm Irrigation )
    hdu 1241 Oil Deposits
    hdu 1242 ( Rescue )
    hdu 1240 ( Asteroids! )
    zoj2966 build the electric system
  • 原文地址:https://www.cnblogs.com/elvi/p/7661126.html
Copyright © 2011-2022 走看看