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