{"id":19557,"date":"2017-05-12T06:44:30","date_gmt":"2017-05-11T22:44:30","guid":{"rendered":"https:\/\/2blog.ilc.edu.tw\/25793\/2017\/05\/12\/%e5%9c%a8-centos-7-x-%e4%b8%8b%e5%ae%89%e8%a3%9d-ldap-server\/"},"modified":"2021-03-18T17:25:02","modified_gmt":"2021-03-18T09:25:02","slug":"%e5%9c%a8-centos-7-x-%e4%b8%8b%e5%ae%89%e8%a3%9d-ldap-server","status":"publish","type":"post","link":"https:\/\/2blog.ilc.edu.tw\/25793\/2017\/05\/12\/%e5%9c%a8-centos-7-x-%e4%b8%8b%e5%ae%89%e8%a3%9d-ldap-server\/","title":{"rendered":"\u5728 CentOS 7.x \u4e0b\u5b89\u88dd LDAP Server"},"content":{"rendered":"<p>\u53c3\u8003\u7db2\u9801\uff1a<br \/><a href=\"http:\/\/linux.onlinedoc.tw\/2016\/05\/centos7rhel7-ldap-server.html\" target=\"_blank\" rel=\"noopener noreferrer\">Linux \uff0e \u7121\u9650: \u5728 CentOS7\/RHEL7 \u4e0a\u5b89\u88dd\u8a2d\u5b9a LDAP Server(\u4e00)<\/a><br \/><a href=\"https:\/\/www.server-world.info\/en\/note?os=CentOS_7&amp;p=openldap\" target=\"_blank\" rel=\"noopener noreferrer\">CentOS 7 : OpenLDAP : Configure LDAP Server : Server World<\/a><br \/><a href=\"http:\/\/crashedbboy.blogspot.tw\/2015\/08\/centos-7-open-ldap.html\" target=\"_blank\" rel=\"noopener noreferrer\">CrashedBboy: CentOS 7 \u521d\u63a2 Open LDAP<\/a><br \/><a href=\"https:\/\/www.unixmen.com\/install-and-configure-ldap-server-in-centos-7\/\" target=\"_blank\" rel=\"noopener noreferrer\">Install And Configure LDAP Server In CentOS 7 | Unixmen<\/a><br \/>1. \u5b89\u88dd LDAP Server<br \/># <span style=\"color: #ff0000\">yum install openldap-servers openldap-clients migrationtools<\/span><\/p>\n<p>2.\u00a0 \u8907\u88fd LDAP \u8cc7\u6599\u5eab\u7bc4\u4f8b\u6a94<br \/># <span style=\"color: #ff0000\">cp \/usr\/share\/openldap-servers\/DB_CONFIG.example \/var\/lib\/ldap\/DB_CONFIG<\/span><\/p>\n<p>3. \u66f4\u6539\u64c1\u6709\u8005\u53ca\u7fa4\u7d44<br \/># <span style=\"color: #ff0000\">chown ldap. \/var\/lib\/ldap\/DB_CONFIG<\/span><br \/>#<span style=\"color: #ff0000\"> ls -l \/var\/lib\/ldap\/DB_CONFIG<\/span><br \/><span style=\"color: #0000ff\">-rw-r&#8211;r&#8211; 1 ldap ldap 845 Mar\u00a0 8 17:56 \/var\/lib\/ldap\/DB_CONFIG<\/span>[@more@]<br \/>4. \u555f\u52d5 LDAP Server<br \/>#\u00a0 <span style=\"color: #ff0000\">systemctl enable slapd.service<\/span><br \/><span style=\"color: #0000ff\">Created symlink from \/etc\/systemd\/system\/multi-user.target.wants\/slapd.service to \/usr\/lib\/systemd\/system\/slapd.service.<\/span><br \/>#\u00a0 <span style=\"color: #ff0000\">systemctl start slapd.service<\/span><\/p>\n<p>\u6aa2\u67e5\u662f\u5426\u6709\u6b63\u5e38\u555f\u52d5<br \/># <span style=\"color: #ff0000\">systemctl status slapd.service<\/span><br \/># <span style=\"color: #ff0000\">ss -nlantu | grep slapd<\/span><br \/><span style=\"color: #0000ff\">tcp\u00a0\u00a0\u00a0 LISTEN\u00a0\u00a0\u00a0\u00a0 0\u00a0\u00a0\u00a0\u00a0\u00a0 128\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 *:<\/span><span style=\"color: #ff0000\">389<\/span>\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<span style=\"color: #0000ff\"> *:*\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 users:((&#8220;<\/span><span style=\"color: #ff0000\">slapd<\/span><span style=\"color: #0000ff\">&#8220;,pid=1080,fd=8))<\/span><br \/><span style=\"color: #0000ff\">tcp\u00a0\u00a0\u00a0 LISTEN\u00a0\u00a0\u00a0\u00a0 0\u00a0\u00a0\u00a0\u00a0\u00a0 128\u00a0\u00a0\u00a0\u00a0\u00a0 :::<\/span><span style=\"color: #ff0000\">389<\/span>\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 <span style=\"color: #0000ff\">:::*\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 users:((&#8220;<\/span><span style=\"color: #ff0000\">slapd<\/span><span style=\"color: #0000ff\">&#8220;,pid=1080,fd=9))<\/span><\/p>\n<p>5. \u8a2d\u5b9a\u7ba1\u7406\u8005\u5bc6\u78bc<br \/>#<span style=\"color: #ff0000\"> \/sbin\/slappasswd<\/span><br \/><span style=\"color: #0000ff\">New password:<\/span><br \/><span style=\"color: #0000ff\">Re-enter new password:<\/span><br \/><span style=\"color: #0000ff\">{SSHA}K7FYIrbIkq2jkgJNEvhigiP3hR+CguaD<\/span><\/p>\n<p># <span style=\"color: #ff0000\">vim chrootpw.ldif<\/span><br \/><span style=\"color: #0000ff\"># specify the password generated above for &#8220;olcRootPW&#8221; section<\/span><\/p>\n<p><span style=\"color: #0000ff\">dn: olcDatabase={0}config,cn=config<\/span><br \/><span style=\"color: #0000ff\">changetype: modify<\/span><br \/><span style=\"color: #0000ff\">add: olcRootPW<\/span><br \/><span style=\"color: #0000ff\">olcRootPW: {SSHA}K7FYIrbIkq2jkgJNEvhigiP3hR+CguaD<\/span><\/p>\n<p># <span style=\"color: #ff0000\">\/bin\/ldapadd -Y EXTERNAL -H ldapi:\/\/\/ -f chrootpw.ldif<\/span><br \/><span style=\"color: #0000ff\">SASL\/EXTERNAL authentication started<\/span><br \/><span style=\"color: #0000ff\">SASL username: gidNumber=0+uidNumber=0,cn=peercred,cn=external,cn=auth<\/span><br \/><span style=\"color: #0000ff\">SASL SSF: 0<\/span><br \/><span style=\"color: #0000ff\">modifying entry &#8220;olcDatabase={0}config,cn=config&#8221;<\/span><\/p>\n<p>6. \u532f\u5165\u57fa\u672c\u7684 schemas<br \/>#<span style=\"color: #ff0000\"> \/bin\/ldapadd -Y EXTERNAL -H ldapi:\/\/\/ -f \/etc\/openldap\/schema\/cosine.ldif<\/span><br \/><span style=\"color: #0000ff\">SASL\/EXTERNAL authentication started<\/span><br \/><span style=\"color: #0000ff\">SASL username: gidNumber=0+uidNumber=0,cn=peercred,cn=external,cn=auth<\/span><br \/><span style=\"color: #0000ff\">SASL SSF: 0<\/span><br \/><span style=\"color: #0000ff\">adding new entry &#8220;cn=cosine,cn=schema,cn=config&#8221;<\/span><\/p>\n<p># <span style=\"color: #ff0000\">\/bin\/ldapadd -Y EXTERNAL -H ldapi:\/\/\/ -D &#8220;cn=config&#8221; -f \/etc\/openldap\/schema\/nis.ldif<\/span><br \/><span style=\"color: #0000ff\">SASL\/EXTERNAL authentication started<\/span><br \/><span style=\"color: #0000ff\">SASL username: gidNumber=0+uidNumber=0,cn=peercred,cn=external,cn=auth<\/span><br \/><span style=\"color: #0000ff\">SASL SSF: 0<\/span><br \/><span style=\"color: #0000ff\">adding new entry &#8220;cn=nis,cn=schema,cn=config&#8221;<\/span><\/p>\n<p># <span style=\"color: #ff0000\">\/bin\/ldapadd -Y EXTERNAL -H ldapi:\/\/\/ -f \/etc\/openldap\/schema\/inetorgperson.ldif<\/span><br \/><span style=\"color: #0000ff\">SASL\/EXTERNAL authentication started<\/span><br \/><span style=\"color: #0000ff\">SASL username: gidNumber=0+uidNumber=0,cn=peercred,cn=external,cn=auth<\/span><br \/><span style=\"color: #0000ff\">SASL SSF: 0<\/span><br \/><span style=\"color: #0000ff\">adding new entry &#8220;cn=inetorgperson,cn=schema,cn=config&#8221;<\/span><\/p>\n<p>7. \u8a2d\u5b9a LDAP \u8cc7\u6599\u5eab<br \/># <span style=\"color: #ff0000\">cat chdomain.ldif<\/span><br \/><span style=\"color: #0000ff\">dn: olcDatabase={2}hdb,cn=config<\/span><br \/><span style=\"color: #0000ff\">changetype: modify<\/span><br \/><span style=\"color: #0000ff\">replace: olcSuffix<\/span><br \/><span style=\"color: #0000ff\">olcSuffix: dc=ilc,dc=edu,dc=tw<\/span><\/p>\n<p><span style=\"color: #0000ff\">dn: olcDatabase={2}hdb,cn=config<\/span><br \/><span style=\"color: #0000ff\">changetype: modify<\/span><br \/><span style=\"color: #0000ff\">replace: olcRootDN<\/span><br \/><span style=\"color: #0000ff\">olcRootDN: cn=Manager,dc=ilc,dc=edu,dc=tw<\/span><\/p>\n<p><span style=\"color: #0000ff\">dn: olcDatabase={2}hdb,cn=config<\/span><br \/><span style=\"color: #0000ff\">changetype: modify<\/span><br \/><span style=\"color: #0000ff\">replace: olcRootPW<\/span><br \/><span style=\"color: #0000ff\">olcRootPW: {SSHA}K7FYIrbIkq2jkgJNEvhigiP3hR+CguaD<\/span><\/p>\n<p><span style=\"color: #0000ff\">dn: cn=config<\/span><br \/><span style=\"color: #0000ff\">changetype: modify<\/span><br \/><span style=\"color: #0000ff\">replace: olcLogLevel<\/span><br \/><span style=\"color: #0000ff\">olcLogLevel: -1<\/span><\/p>\n<p><span style=\"color: #0000ff\">dn: olcDatabase={1}monitor,cn=config<\/span><br \/><span style=\"color: #0000ff\">changetype: modify<\/span><br \/><span style=\"color: #0000ff\">replace: olcAccess<\/span><br \/><span style=\"color: #0000ff\">olcAccess: {0}to * by dn.base=&#8221;gidNumber=0+uidNumber=0,cn=peercred,cn=external,cn=auth&#8221; read by dn.base=&#8221;cn=Manager,dc=ilc,dc=edu,dc=tw&#8221; read by * none<\/span><\/p>\n<p><span style=\"color: #0000ff\">dn: olcDatabase={2}hdb,cn=config<\/span><br \/><span style=\"color: #0000ff\">changetype: modify<\/span><br \/><span style=\"color: #0000ff\">add: olcAccess<\/span><br \/><span style=\"color: #0000ff\">olcAccess: {0}to attrs=userPassword,shadowLastChange by<\/span><br \/><span style=\"color: #0000ff\">\u00a0 dn=&#8221;cn=Manager,dc=srv,dc=world&#8221; write by anonymous auth by self write by * none<\/span><br \/><span style=\"color: #0000ff\">olcAccess: {1}to dn.base=&#8221;&#8221; by * read<\/span><br \/><span style=\"color: #0000ff\">olcAccess: {2}to * by dn=&#8221;cn=Manager,dc=ilc,dc=edu,dc=tw&#8221; write by * read<\/span><\/p>\n<p># <span style=\"color: #ff0000\">\/bin\/ldapmodify -Y EXTERNAL -H ldapi:\/\/\/ -f chdomain.ldif<\/span><br \/><span style=\"color: #0000ff\">SASL\/EXTERNAL authentication started<\/span><br \/><span style=\"color: #0000ff\">SASL username: gidNumber=0+uidNumber=0,cn=peercred,cn=external,cn=auth<\/span><br \/><span style=\"color: #0000ff\">SASL SSF: 0<\/span><br \/><span style=\"color: #0000ff\">modifying entry &#8220;olcDatabase={2}hdb,cn=config&#8221;<\/span><\/p>\n<p><span style=\"color: #0000ff\">modifying entry &#8220;olcDatabase={2}hdb,cn=config&#8221;<\/span><\/p>\n<p><span style=\"color: #0000ff\">modifying entry &#8220;olcDatabase={2}hdb,cn=config&#8221;<\/span><\/p>\n<p><span style=\"color: #0000ff\">modifying entry &#8220;cn=config&#8221;<\/span><\/p>\n<p><span style=\"color: #0000ff\">modifying entry &#8220;olcDatabase={1}monitor,cn=config&#8221;<\/span><\/p>\n<p><span style=\"color: #0000ff\">modifying entry &#8220;olcDatabase={2}hdb,cn=config&#8221;<\/span><\/p>\n<p>8. \u5efa\u7acb\u6240\u9808\u7db2\u57df\u7684 LDIF \u6a94\u6848<br \/># <span style=\"color: #ff0000\">vim base.ldif<\/span><br \/><span style=\"color: #0000ff\">dn: dc=ilc,dc=edu,dc=tw<\/span><br \/><span style=\"color: #0000ff\">objectClass: top<\/span><br \/><span style=\"color: #0000ff\">objectclass: domain<\/span><br \/><span style=\"color: #0000ff\">dc: ilc<\/span><\/p>\n<p><span style=\"color: #0000ff\">dn: cn=Manager,dc=ilc,dc=edu,dc=tw<\/span><br \/><span style=\"color: #0000ff\">objectClass: organizationalRole<\/span><br \/><span style=\"color: #0000ff\">cn: Manager<\/span><br \/><span style=\"color: #0000ff\">description: Directory Manager<\/span><\/p>\n<p><span style=\"color: #0000ff\">dn: ou=tces,dc=ilc,dc=edu,dc=tw<\/span><br \/><span style=\"color: #0000ff\">objectClass: top<\/span><br \/><span style=\"color: #0000ff\">objectClass: organizationalUnit<\/span><br \/><span style=\"color: #0000ff\">ou: tces<\/span><\/p>\n<p><span style=\"color: #0000ff\">dn: ou=teacher,ou=tces,dc=ilc,dc=edu,dc=tw<\/span><br \/><span style=\"color: #0000ff\">objectClass: top<\/span><br \/><span style=\"color: #0000ff\">objectClass: organizationalUnit<\/span><br \/><span style=\"color: #0000ff\">ou: teacher<\/span><\/p>\n<p><span style=\"color: #0000ff\">dn: ou=student,ou=tces,dc=ilc,dc=edu,dc=tw<\/span><br \/><span style=\"color: #0000ff\">objectClass: top<\/span><br \/><span style=\"color: #0000ff\">objectClass: organizationalUnit<\/span><br \/><span style=\"color: #0000ff\">ou: student<\/span><\/p>\n<p><span style=\"color: #0000ff\">dn: ou=s0101,ou=student,ou=tces,dc=ilc,dc=edu,dc=tw<\/span><br \/><span style=\"color: #0000ff\">objectClass: top<\/span><br \/><span style=\"color: #0000ff\">objectClass: organizationalUnit<\/span><br \/><span style=\"color: #0000ff\">ou: s0101<\/span><\/p>\n<p># <span style=\"color: #ff0000\">\/bin\/ldapadd -x -D cn=Manager,dc=ilc,dc=edu,dc=tw -W -f base.ldif<\/span><br \/><span style=\"color: #0000ff\">Enter LDAP Password:<\/span><br \/><span style=\"color: #0000ff\">adding new entry &#8220;dc=ilc,dc=edu,dc=tw&#8221;<\/span><\/p>\n<p><span style=\"color: #0000ff\">adding new entry &#8220;cn=Manager,dc=ilc,dc=edu,dc=tw&#8221;<\/span><\/p>\n<p><span style=\"color: #0000ff\">adding new entry &#8220;ou=tces,dc=ilc,dc=edu,dc=tw&#8221;<\/span><\/p>\n<p><span style=\"color: #0000ff\">adding new entry &#8220;ou=teacher,ou=tces,dc=ilc,dc=edu,dc=tw&#8221;<\/span><\/p>\n<p><span style=\"color: #0000ff\">adding new entry &#8220;ou=student,ou=tces,dc=ilc,dc=edu,dc=tw&#8221;<\/span><\/p>\n<p><span style=\"color: #0000ff\">adding new entry &#8220;ou=s0101,ou=student,ou=tces,dc=ilc,dc=edu,dc=tw&#8221;<\/span><\/p>\n<p>9. \u4fee\u6539 migrationtools \u8a2d\u5b9a\u6a94<br \/># <span style=\"color: #ff0000\">cp \/usr\/share\/migrationtools\/migrate_common.ph \/usr\/share\/migrationtools\/migrate_common.ph.$(date +%F)<\/span><br \/># <span style=\"color: #ff0000\">sed -i &#8216;\/DEFAULT_MAIL_DOMAIN\/s\/padl.com\/ilc.edu.tw\/&#8217; \/usr\/share\/migrationtools\/migrate_common.ph<\/span><br \/># <span style=\"color: #ff0000\">sed -i &#8216;\/DEFAULT_BASE\/s\/dc=padl,dc=com\/dc=ilc,dc=edu,dc=tw\/&#8217; \/usr\/share\/migrationtools\/migrate_common.ph<\/span><br \/># <span style=\"color: #ff0000\">sed -i &#8216;s\/$EXTENDED_SCHEMA = 0;\/$EXTENDED_SCHEMA = 1;\/&#8217; \/usr\/share\/migrationtools\/migrate_common.ph<\/span><\/p>\n<p>10. \u7531 Server \u53d6\u51fa\u6240\u8981\u7684\u8cc7\u6599<br \/># <span style=\"color: #ff0000\">grep ^s0101 \/etc\/passwd &gt; \/root\/ldap_users_utf8<\/span><br \/># <span style=\"color: #ff0000\">grep ^s0101 \/etc\/group &gt; \/root\/ldap_groups<\/span><br \/># <span style=\"color: #ff0000\">\/bin\/piconv -f utf8 -t big5 \/root\/ldap_users_utf8 &gt; \/root\/ldap_users_big5<\/span><\/p>\n<p>#<span style=\"color: #ff0000\"> \/usr\/share\/migrationtools\/migrate_passwd.pl \/root\/ldap_users_big5 &gt; \/root\/users_big5.ldif<\/span><br \/># <span style=\"color: #ff0000\">\/usr\/share\/migrationtools\/migrate_group.pl \/root\/ldap_groups &gt; \/root\/groups.ldif<\/span><br \/># <span style=\"color: #ff0000\">piconv -f big5 -t utf8 \/root\/users_big5.ldif &gt; \/root\/users_utf8.ldif<\/span><\/p>\n<p>11. \u9032\u884c\u532f\u5165 <br \/># <span style=\"color: #ff0000\">\/bin\/ldapadd -x -D cn=Manager,dc=ilc,dc=edu,dc=tw -W -f groups.ldif<\/span><br \/># <span style=\"color: #ff0000\">\/bin\/ldapadd -x -D cn=Manager,dc=ilc,dc=edu,dc=tw -W -f users_utf8.ldif<\/span><\/p>\n<p>12. \u6e2c\u8a66\u662f\u5426\u53ef\u4ee5\u67e5\u8a62\u7684\u5230 <br \/>#<span style=\"color: #ff0000\"> \/usr\/bin\/ldapsearch -x -b &#8220;ou=s0101,ou=student,ou=tces,dc=ilc,dc=edu,dc=tw&#8221; uid=s0101129<\/span><\/p>\n<p>13. \u9632\u706b\u7246\u8a2d\u5b9a<br \/># <span style=\"color: #ff0000\">\/bin\/firewall-cmd &#8211;permanent &#8211;add-service=ldap<\/span><br \/># <span style=\"color: #ff0000\">\/bin\/firewall-cmd &#8211;reload<\/span><br \/>\u6216<br \/># <span style=\"color: #ff0000\">iptables -A INPUT -p tcp -s 192.168.1.0\/24 &#8211;syn -m state &#8211;state NEW &#8211;dport 389 -j ACCEPT<\/span><\/p>\n","protected":false},"excerpt":{"rendered":"<p>\u53c3\u8003\u7db2\u9801\uff1aLinux \uff0e \u7121\u9650: \u5728 CentOS7\/RHEL7 \u4e0a\u5b89\u88dd\u8a2d\u5b9a LDAP Server(\u4e00)Ce &hellip; <\/p>\n<p class=\"link-more\"><a href=\"https:\/\/2blog.ilc.edu.tw\/25793\/2017\/05\/12\/%e5%9c%a8-centos-7-x-%e4%b8%8b%e5%ae%89%e8%a3%9d-ldap-server\/\" class=\"more-link\">\u95b1\u8b80\u5168\u6587<span class=\"screen-reader-text\">\u3008\u5728 CentOS 7.x \u4e0b\u5b89\u88dd LDAP Server\u3009<\/span><\/a><\/p>\n","protected":false},"author":55,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[117,115],"tags":[],"class_list":["post-19557","post","type-post","status-publish","format-standard","hentry","category-c-78462","category-c-78460"],"meta_key":{"_pingme":["1"],"_encloseme":["1"],"lt_post_id":["688049"]},"_links":{"self":[{"href":"https:\/\/2blog.ilc.edu.tw\/25793\/wp-json\/wp\/v2\/posts\/19557"}],"collection":[{"href":"https:\/\/2blog.ilc.edu.tw\/25793\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/2blog.ilc.edu.tw\/25793\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/2blog.ilc.edu.tw\/25793\/wp-json\/wp\/v2\/users\/55"}],"replies":[{"embeddable":true,"href":"https:\/\/2blog.ilc.edu.tw\/25793\/wp-json\/wp\/v2\/comments?post=19557"}],"version-history":[{"count":1,"href":"https:\/\/2blog.ilc.edu.tw\/25793\/wp-json\/wp\/v2\/posts\/19557\/revisions"}],"predecessor-version":[{"id":21069,"href":"https:\/\/2blog.ilc.edu.tw\/25793\/wp-json\/wp\/v2\/posts\/19557\/revisions\/21069"}],"wp:attachment":[{"href":"https:\/\/2blog.ilc.edu.tw\/25793\/wp-json\/wp\/v2\/media?parent=19557"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/2blog.ilc.edu.tw\/25793\/wp-json\/wp\/v2\/categories?post=19557"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/2blog.ilc.edu.tw\/25793\/wp-json\/wp\/v2\/tags?post=19557"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}