SWL אדום (V): דביאן וויזי ו ClearOS. אימות SSSD כנגד LDAP מקורי.

שלום חברים!. אנא, אני חוזר ואומר, קרא לפני «מבוא לרשת עם תוכנה חופשית (I): הצגת ClearOS»והורידו את חבילת תמונות ההתקנה שלב אחר שלב של ClearOS (1,1 מגה), כדי להיות מודעים למה שאנחנו מדברים. ללא קריאה זו יהיה קשה לעקוב אחרינו.

הדמון של שירות אבטחת המערכת

התכנית SSSD o שד לשירות אבטחת המערכת, הוא פרויקט של פדורה, שנולד מפרויקט אחר - גם מפדורה - שנקרא FreeIPA. על פי יוצריו שלה, הגדרה קצרה ומתורגמת בחופשיות תהיה:

SSSD הוא שירות המספק גישה לספקי זהות ואימות שונים. ניתן להגדיר אותו עבור דומיין LDAP מקורי (ספק זהות מבוסס LDAP עם אימות LDAP), או עבור ספק זהות LDAP עם אימות Kerberos. SSSD מספק את הממשק למערכת באמצעות NSS y PAM, ו- Back End הניתן להכנסה לחיבור למספר מקורות חשבון שונים.

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

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

רשת לדוגמא

  • בקר תחום, DNS, DHCP: ClearOS Enterprise 5.2sp1.
  • שם הבקר: CentOS
  • שם דומיין: friends.cu
  • בקר IP: 10.10.10.60
  • ---------------
  • גרסת דביאן: שׁוֹרקָנִי.
  • שם הצוות: 7. דביאן
  • כתובת IP: שימוש ב- DHCP

אנו בודקים ששרת LDAP פועל

אנו משנים את הקובץ /etc/ldap/ldap.conf והתקן את החבילה ldap- כלים:

: ~ # nano /etc/ldap/ldap.conf
[----] BASE dc = חברים, dc = cu URI ldap: //centos.amigos.cu [----]
: ~ # aptitude התקן ldap-utils: ~ $ ldapsearch -x -b 'dc = חברים, dc = cu' '(objectclass = *)': ~ $ ldapsearch -x -b dc = חברים, dc = cu 'uid = צעדים
: ~ $ ldapsearch -x -b dc = חברים, dc = cu 'uid = legolas' cn gidNumber

בשתי הפקודות האחרונות, אנו בודקים את זמינותו של שרת OpenLDAP של ClearOS שלנו. בואו נסתכל היטב על תפוקות הפקודות הקודמות.

חשוב: אימתנו גם ששירות הזיהוי בשרת OpenLDAP שלנו פועל כהלכה.

משתמשי רשת-swl-04

אנו מתקינים את חבילת sssd

מומלץ גם להתקין את החבילה אצבע כדי להפוך את ההמחאות לשתיה יותר מאשר ldapsearch:

: ~ # aptitude התקן אצבע sssd

עם סיום ההתקנה, השירות ssd לא מתחיל בגלל קובץ חסר /etc/sssd/sssd.conf. תפוקת ההתקנה משקפת זאת. לכן עלינו ליצור את הקובץ ולהשאיר אותו עם ה- התוכן המינימלי הבא:

: ~ # nano /etc/sssd/sssd.conf
[sssd] config_file_version = 2 services = nss, pam # SSSD לא יתחיל אם לא תגדיר תחומים כלשהם. # הוסף תצורות דומיין חדשות כ- [domain / ], ולאחר מכן הוסף את רשימת הדומיינים (לפי הסדר שברצונך שהם יהיו שאילתה #) למאפיין "דומיינים" למטה ולבטל את התגובה עליו. תחומים = amigos.cu [nss] filter_groups = root_filter_users = root reconnection_retries = 3 [pam] reconnection_retries = 3 # LDAP domain [domain / amigos.cu] id_provider = ldap
auth_provider = ldap
chpass_provider = ldap # ldap_schema ניתן להגדיר ל- "rfc2307", המאחסן שמות חברי קבוצה בתכונה # "memberuid", או ל "rfc2307bis", המאחסן את ה- DN של חברי הקבוצה בתכונה "member" אם אינך יודע ערך זה, שאל את מנהל ה- LDAP שלך. # עובד עם ClearOS ldap_schema = rfc2307
ldap_uri = ldap: //centos.amigos.cu
ldap_search_base = dc = חברים, dc = cu # שים לב שלפעלת ספירה תהיה השפעה מתונה על הביצועים. # כתוצאה מכך, ערך ברירת המחדל לספירה הוא FALSE. # עיין בדף האיש sssd.conf לפרטים מלאים. enumerate = false # אפשר כניסה לא מקוונת על ידי אחסון מקומי של סיסמאות (ברירת מחדל: false). cache_credentials = true
ldap_tls_reqcert = אפשר
ldap_tls_cacert = /etc/ssl/certs/ca-certificates.crt

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

: ~ # chmod 0600 /etc/sssd/sssd.conf
: ~ # שירות sssd מחדש

אם אנו רוצים להעשיר את תוכן הקובץ הקודם, אנו ממליצים לבצע אותו איש sssd.conf ו / או עיין בתיעוד הקיים באינטרנט, החל מהקישורים בתחילת ההודעה. התייעץ גם איש sssd-ldap. החבילה ssd כולל דוגמה ב- /usr/share/doc/sssd/examples/sssd-example.conf, שניתן להשתמש בהם לאימות מול מדריך Active Directory של מיקרוסופט.

כעת אנו יכולים להשתמש בפקודות הניתנות לשתייה אצבע y מקבל:

: ~ $ צעדים באצבע
כניסה: צעדים שם: צעדים אל ריי מדריך: / בית / צעדים מעטפת: / bin / bash מעולם לא התחבר. אין דואר. אין תוכנית.

: ~ $ sudo getent legolas passwd
לגולה: *: 1004: 63000: לגולה האלף: / בית / לגולה: / סל / באש

אנחנו עדיין לא יכולים לאמת כמשתמש בשרת LDAP. לפני שעלינו לשנות את הקובץ /etc/pam.d/common-session, כך שהתיקיה של המשתמש נוצרת באופן אוטומטי כאשר הם מתחילים את ההפעלה שלהם, אם היא לא קיימת, ואז אתחל את המערכת מחדש:

[----]
נדרש סשן pam_mkhomedir.so skel = / etc / skel / umask = 0022

### יש לכלול את השורה שלעיל לפני
# הנה המודולים לכל חבילה (הבלוק "ראשי") [----]

אנו מפעילים מחדש את Wheezy שלנו:

: ~ # אתחול מחדש

לאחר הכניסה, נתק את הרשת באמצעות מנהל החיבורים והתנתק וחזור. מהר יותר כלום. לרוץ בטרמינל ifconfig והם יראו שה- eth0 זה בכלל לא מוגדר.

הפעל את הרשת. אנא צא והיכנס שוב. בדוק שוב עם ifconfig.

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

אל לנו לשכוח להפוך את המשתמש החיצוני הרשום ב- OpenLDAP לחבר בקבוצות הדרושות, תמיד לשים לב למשתמש שנוצר במהלך ההתקנה.

הערה:

הצהיר על אפשרות ldap_tls_reqcert = לעולם לא, בקובץ /etc/sssd/sssd.conf, מהווה סיכון ביטחוני כאמור בדף SSSD - שאלות נפוצות. ערך ברירת המחדל הוא «דרישה«. לִרְאוֹת איש sssd-ldap. עם זאת, בפרק 8.2.5 קביעת תצורה של תחומים מתיעוד פדורה נאמר:

SSSD אינו תומך באימות בערוץ לא מוצפן. כתוצאה מכך, אם ברצונך לבצע אימות כנגד שרת LDAP TLS/SSL or LDAPS נדרש.

SSSD הוא אינו תומך באימות בערוץ לא מוצפן. לכן, אם ברצונך לבצע אימות מול שרת LDAP, יהיה צורך בכך TLS / SLL o LDAP.

אנחנו באופן אישי חושבים שהפתרון התייחס אליו זה מספיק עבור LAN ארגוני, מנקודת מבט אבטחה. דרך הכפר WWW, אנו ממליצים ליישם ערוץ מוצפן באמצעות TLS או «שכבת אבטחה תחבורתית », בין מחשב הלקוח לשרת.

אנו מנסים להשיג זאת מהדור הנכון של אישורים חתומים על עצמם או «חתום על עצמי "בשרת ClearOS, אבל לא הצלחנו. זה למעשה נושא תלוי ועומד. אם מישהו מהקוראים יודע לעשות את זה, מוזמן להסביר את זה!

debian7.amigos.cu


8 תגובות, השאר את שלך

השאירו את התגובה שלכם

כתובת הדוא"ל שלך לא תפורסם. שדות חובה מסומנים *

*

*

  1. אחראי לנתונים: מיגל אנחל גטון
  2. מטרת הנתונים: בקרת ספאם, ניהול תגובות.
  3. לגיטימציה: הסכמתך
  4. מסירת הנתונים: הנתונים לא יועברו לצדדים שלישיים אלא בהתחייבות חוקית.
  5. אחסון נתונים: מסד נתונים המתארח על ידי Occentus Networks (EU)
  6. זכויות: בכל עת תוכל להגביל, לשחזר ולמחוק את המידע שלך.

  1.   אליוטיים 3000 דיג'ו

    מעולה.

    1.    פדריקו דיג'ו

      ברכות ElioTime3000 ותודה על התגובה !!!

    2.    פדריקו דיג'ו

      ברכות eliotime3000 ותודה על ההלל על המאמר !!!

  2.   קוראי דיג'ו

    מְעוּלֶה! ברצוני להעביר מזל טוב לכותב הפרסום על שיתוף הידע הרב שלו ולבלוג על התרת פרסומו.

    תודה רבה לך!

    1.    פדריקו דיג'ו

      תודה רבה על שבח ותגובה !!! כוח שתתן לי להמשיך לחלוק את הידע עם הקהילה, בה כולנו לומדים.

  3.   פנוברביטל דיג'ו

    מאמר טוב! שימו לב שלגבי השימוש באישורים, כאשר אתם מייצרים את האישור עליכם להוסיף לתצורת ldap (cn = config):

    olcLocalSSF: 71
    olcTLSCACertificateFile: / path / to / ca / ​​cert
    olcTLSCertificateFile: / path / to / public / cert
    olcTLSCertificateKeyFile: / path / to / private / key
    olcTLSVerifyClient: נסה
    olcTLSCipherSuite: + RSA: + AES-256-CBC: + SHA1

    בעזרת זה (והפקת האישורים) תהיה לך תמיכה ב- SSL.

    ברכות!

    1.    פדריקו דיג'ו

      תודה על תרומתך !!! עם זאת, אני מפרסם 7 מאמרים על OpenLDAP ב:
      http://humanos.uci.cu/2014/01/servicio-de-directorio-con-ldap-introduccion/
      https://blog.desdelinux.net/ldap-introduccion/
      בהם אני מדגיש את השימוש ב- Start TLS לפני SSL, שמומלץ על ידי openldap.org. ברכות @phenobarbital, ותודה רבה על התגובה.
      האימייל שלי הוא federico@dch.ch.gob.cu, למקרה שתרצה להחליף יותר. הגישה לאינטרנט מאוד איטית עבורי.

    2.    פנוברביטל דיג'ו

      עבור TLS התצורה זהה, וזכור שעם SSL ההובלה נעשית שקופה מעל ערוץ מוצפן, ואילו ב- TLS ניהל משא ומתן על הצפנה דו כיוונית להעברת נתונים; עם TLS ניתן לנהל משא ומתן על לחיצת היד באותה יציאה (389) ואילו עם SSL המשא ומתן נעשה ביציאה חלופית.
      שנה את הדברים הבאים:
      olcLocalSSF: 128
      olcTLSVerifyClient: אפשר
      olcTLSCipherSuite: נורמלי
      (אם אתה פרנואידי לגבי אבטחה אתה משתמש:
      olcTLSCipherSuite: SECURE256:!AES-128-CBC:!ARCFOUR-128:!CAMELLIA-128-CBC:!3DES-CBC:!CAMELLIA-128-CBC)

      והפעל מחדש, תראה מאוחר יותר עם:
      gnutls-cli-debug -p 636 ldap.ipm.org.gt

      פותר את 'ldap.ipm.org.gt' ...
      בודק תמיכה ב- SSL 3.0 ... כן
      בודק האם נדרש% COMPAT ... לא
      בודק תמיכה ב- TLS 1.0 ... כן
      בודק תמיכה ב- TLS 1.1 ... כן
      בודק חיסרון מ- TLS 1.1 ל- ... לא רלוונטי
      בודק תמיכה ב- TLS 1.2 ... כן
      בודק תמיכה במשא ומתן בטוח מחדש ... כן
      בודק אם תמיכה במשא ומתן בטוח מחדש (SCSV) ... כן

      בעזרתו מופעלת גם תמיכה ב- TLS, אתה משתמש ב- 389 (או 636) עבור TLS ו- 636 (ldaps) עבור SSL; הם עצמאיים לחלוטין אחד מהשני ואינך צריך להיות מושבת כדי להשתמש בשני.

      ברכות!