14 קלח - RHEL 7 -ב LDAP ססובמ תומיא תרדגה :RHCSA תרדס


.Red Hat Enterprise Linux 7 תוכרעמ תועצמאב ודגנכ תומיאל חוקל רידגהלו LDAP תרש רידגהל דציכ הארנו (עודמו וב םישמתשמ ןכיה ,הז המ) LDAP תודוסי המכ הוותמב הז רמאמב ליחתנ

.רתוי םיקימעמ םיטרפ תלבקל םוכיסב ראותמה דועיתב ןייעל לכות ךא ,ןאכ ויתודוסי תא קר רוקסנ ,אשונה םצע לשב יכ רוכז ,ףסונב .LDAP ססובמ תומיאב ןיטולחל דקמתנ הז ךירדמב ךא ,םימושיי לש םירחא םישיחרת

.(לשמל ,man ldapadd) עבצאה הצק קחרמב םיאצמנ םיליבקמה םירבסהה ךא ,רוציק םשל LDAP ילכ לש םדא יפדל םירוכזא המכ ריאשהל יתטלחהש ןייצנ ,הביס התואמ

.ליחתנ ואוב ,תאז םע

:RHEL 7 תובית יתשמ תבכרומ ונלש הקידבה תביבס

Server: 192.168.0.18. FQDN: rhel7.mydomain.com
Client: 192.168.0.20. FQDN: ldapclient.mydomain.com

.חוקלכ Kickstart תועצמאב RHEL 7 תונקתה לש היצמוטוא :12 קלחב תנקתומה הנוכמב שמתשהל לכות ,הצרת םא

LDAP גציימ Lightweight Directory Access Protocol (הרבחב םידבועה לכ לש ןופלט ירפסמו תיב תובותכ לש היירפס היהת תרחא המגוד) הצק ישמתשמ לש בר רפסמל ןימז תויהל וא םינוש תומוקממ שיגנ תויהל ךירצש

.וב שמתשהל תואשרה לביקש ימ לכ ידי לע תולק רתיב וילא תשגלו קזחתל ןתינש השוריפ יזכרמ ןפואב (דועו) הזכ עדימ לע הרימש

:רתוי בר טוריפב ןלהל ראותמו ,LDAP לש רתוי טושפ םישרת עיצמ אבה םישרתה

.טוריפב ליעל םישרתל רבסה

    .חוקלהו תרשה תונקתהב ךישמנ ואוב ,תאז םע

    חוקלו LDAP תרש לש הרוצתו הנקתה

    :המאתהב ,תואבה תודוקפב שמתשה ,חוקלהו תרשה תנקתהל .OpenLDAP ידי לע םשוימ RHEL 7, LDAP -ב

    # yum update && yum install openldap openldap-clients openldap-servers
    # yum update && yum install openldap openldap-clients nss-pam-ldapd
    

    :שרופמב ןיוצ ןכ םא אלא ,דבלב תרשב םיאבה םיבלשה תא עצבל שי .םהילע םילכתסמ ונחנאש םירבד המכ שי ,הנקתהה תמלשה רחאל

    :חוקלב ןהו תרשב ןה ,הדמתהב םיאבה םינאילובל תרשפאמ איהש ךכב העירפמ אל SELinux -ש אדוו .1

    # setsebool -P allow_ypbind=0 authlogin_nsswitch_use_ldap=0
    

    .םימיוסמ םימושייב authlogin_nsswitch_use_ldap ב ךרוצ היהיש ןכתייו ,LDAP ססובמ תומיאל allow_ypbind שורדש ןכיה

    :תורישה תא לעפהו לעפה .2

    # systemctl enable slapd.service
    # systemctl start slapd.service
    

    :systemctl תועצמאב םג תורישה תא קיספהל וא שדחמ ליעפהל ,תיבשהל םג לוכי התא יכ רוכז

    # systemctl disable slapd.service
    # systemctl restart slapd.service
    # systemctl stop slapd.service
    

    .(הקד ךות ךכ לע דוע) שרושכ קר ץירהל ןתינש םייביטרטסינימדא םילכ ידי לע ורצונש םיכרע תונשל לגוסמ תויהל לכוי תרשהש תנמ לע var/lib/ldap/תיירפסב קיזחהל ךירצ הזכ שמתשמ ,(ps -e -o pid, unam

    :וכותל slapd רובע המגודל םינותנה דסמ תרוצת ץבוק תא קתעה ,יביסרוקר ןפואב וז היירפס לע תולעבה תא הנשתש ינפל

    # cp /usr/share/openldap-servers/DB_CONFIG.example /var/lib/ldap/DB_CONFIG
    # chown -R ldap:ldap /var/lib/ldap
    

    :המסיס הצקהו OpenLDAP לש ילהנמ שמתשמ רדגה .4

    # slappasswd
    

    :האבה הנומתב גצומש יפכ

    :אבה ןכותה םע LDIF (ldaprootpasswd.ldif) ץבוק רוצו

    dn: olcDatabase={0}config,cn=config
    changetype: modify
    add: olcRootPW
    olcRootPW: {SSHA}PASSWORD
    

    :הפיא

      .(םהל םימיאתמה םיכרעה םה םייתדוקנ לכל ןימימ םיטוחהו תונוכתה םה olcRootPW -ו dn, changetype, add רשאכ) תוגוז גוז :ןייפאמ תגציימ הרוש לכ ,הז ךרעב .LDAP תיירפסל ךרע ףיסוי ldaprootpassw

      . .םדוקה הזב יולת בלש לכ רשאכ ,הז רמאמ ראש ךרואל (cn =) םיצופנ תומש םתואב םישמתשמ ונאש בל םיש ,האלה ךישמנש לככ תאז רוכזל הצרתש ןכתיי

      .האיצי/חראמ/לוקוטורפה תודש קר רתומ םש ,ldap תרשל סחייתמה URI -ה ןויצ ידי לע םיאתמה LDAP ךרע תא ףסוה תעכ .5

      # ldapadd -H ldapi:/// -f ldaprootpasswd.ldif 
      

      :ל המוד תויהל ךירצ טלפה

      :/etc/openldap/schema היירפסהמ תויסיסב LDAP תורדגה המכ אבייו

      # for def in cosine.ldif nis.ldif inetorgperson.ldif; do ldapadd -H ldapi:/// -f /etc/openldap/schema/$def; done
      

      .ולש םינותנה דסמב ךלש ןיימודב שמתשי LDAP םאה .6

      :ךרוצה יפל המסיסהו (dc = םוחתה ביכרב) ךלש ןיימודה תא ףילחהו ,אבה ןכותה םע , ldapdomain.ldif ארקנ וילא ,ףסונ LDIF ץבוק רוצ

      dn: olcDatabase={1}monitor,cn=config
      changetype: modify
      replace: olcAccess
      olcAccess: {0}to * by dn.base="gidNumber=0+uidNumber=0,cn=peercred,cn=external,cn=auth"
        read by dn.base="cn=Manager,dc=mydomain,dc=com" read by * none
      
      dn: olcDatabase={2}hdb,cn=config
      changetype: modify
      replace: olcSuffix
      olcSuffix: dc=mydomain,dc=com
      
      dn: olcDatabase={2}hdb,cn=config
      changetype: modify
      replace: olcRootDN
      olcRootDN: cn=Manager,dc=mydomain,dc=com
      
      dn: olcDatabase={2}hdb,cn=config
      changetype: modify
      add: olcRootPW
      olcRootPW: {SSHA}PASSWORD
      
      dn: olcDatabase={2}hdb,cn=config
      changetype: modify
      add: olcAccess
      olcAccess: {0}to attrs=userPassword,shadowLastChange by
        dn="cn=Manager,dc=mydomain,dc=com" write by anonymous auth by self write by * none
      olcAccess: {1}to dn.base="" by * read
      olcAccess: {2}to * by dn="cn=Manager,dc=mydomain,dc=com" write by * read
      

      :ןמקלדכ ותוא ןעט זאו

      # ldapmodify -H ldapi:/// -f ldapdomain.ldif
      

      : baseldapdomain.ldif ארקנ ותואש ,אבה ץבוקב (:) םייתדוקנ תועצמאב םידרפומ םיכרעו םינייפאמ .ונלש LDAP תיירפסל םיכרע המכ ףיסוהל ןמזה עיגה וישכע .7

      dn: dc=mydomain,dc=com
      objectClass: top
      objectClass: dcObject
      objectclass: organization
      o: mydomain com
      dc: mydomain
      
      dn: cn=Manager,dc=mydomain,dc=com
      objectClass: organizationalRole
      cn: Manager
      description: Directory Manager
      
      dn: ou=People,dc=mydomain,dc=com
      objectClass: organizationalUnit
      ou: People
      
      dn: ou=Group,dc=mydomain,dc=com
      objectClass: organizationalUnit
      ou: Group
      

      :LDAP תיירפסל םיכרעה תא ףסוה

      # ldapadd -x -D cn=Manager,dc=mydomain,dc=com -W -f baseldapdomain.ldif
      

      . ldapgroup.ldif -ב LDAP תצובק רובע תורדגהה תא רוצ זאו ,ldapuser (adduser ldapuser) םשב LDAP שמתשמ רוצ .8

      # adduser ldapuser
      # vi ldapgroup.ldif
      

      .אבה ןכותה תא ףסוה

      dn: cn=Manager,ou=Group,dc=mydomain,dc=com
      objectClass: top
      objectClass: posixGroup
      gidNumber: 1004
      

      :ותוא ןעטו (ldapuser רובע etc/group/-ב GID -ה אוה gidNumber רשאכ

      # ldapadd -x -W -D "cn=Manager,dc=mydomain,dc=com" -f ldapgroup.ldif
      

      :ldapuser ( ldapuser.ldif ) שמתשמל תורדגהה םע LDIF ץבוק ףסוה .9

      dn: uid=ldapuser,ou=People,dc=mydomain,dc=com
      objectClass: top
      objectClass: account
      objectClass: posixAccount
      objectClass: shadowAccount
      cn: ldapuser
      uid: ldapuser
      uidNumber: 1004
      gidNumber: 1004
      homeDirectory: /home/ldapuser
      userPassword: {SSHA}fiN0YqzbDuDI0Fpqq9UudWmjZQY28S3M
      loginShell: /bin/bash
      gecos: ldapuser
      shadowLastChange: 0
      shadowMax: 0
      shadowWarning: 0
      

      :ותוא ןעטו

      # ldapadd -x -D cn=Manager,dc=mydomain,dc=com -W -f ldapuser.ldif
      

      :התע הז תרציש שמתשמה ךרע תא קוחמל ךתורשפאב ,ןכ ומכ

      # ldapdelete -x -W -D cn=Manager,dc=mydomain,dc=com "uid=ldapuser,ou=People,dc=mydomain,dc=com"
      

      :שאה תמוח ךרד תרושקת רשפא .10

      # firewall-cmd --add-service=ldap
      

      .LDAP תועצמאב תומיא עצבל חוקלל רשפאמ ,בושח תוחפ אל ךא ,ןורחא .11

      .(תכרעמ תומיא יבאשמ תרדגהל קשממ) authconfig תורישה ילכב שמתשנ ,הזה יפוסה בלשב ונל רוזעל ידכ

      :חילצמ LDAP תרש לומ תומיאהש רחאל תמייק אל איה םא תרצונ שקובמה שמתשמה לש תיתיבה היירפסה ,האבה הדוקפה תועצמאב

      # authconfig --enableldap --enableldapauth --ldapserver=rhel7.mydomain.com --ldapbasedn="dc=mydomain,dc=com" --enablemkhomedir --update
      

      םוכיס

      .TLS תועצמאב החטבאה תורדגהל תדחוימ בל תמיש ךות ,RHEL 7 לש תכרעמה להנמ ךירדמב LDAP תרוצת - 13 קרפב ןייע ,יחכונה ךירדמב תראותמה הנקתהה תרוצת תא עובקל ידכ .LDAP תרש דגנכ יסיסב תומיא רידגהל דצ

      .הטמל הרעהה ספוט תועצמאב ךל שיש הלאש לכ ריאשהל ססהת לא