שלום חברים!. אנא, אני חוזר ואומר, קרא לפני «מבוא לרשת עם תוכנה חופשית (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 שלנו פועל כהלכה.
אנו מתקינים את חבילת 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
orLDAPS
נדרש.SSSD הוא אינו תומך באימות בערוץ לא מוצפן. לכן, אם ברצונך לבצע אימות מול שרת LDAP, יהיה צורך בכך TLS / SLL o LDAP.
אנחנו באופן אישי חושבים שהפתרון התייחס אליו זה מספיק עבור LAN ארגוני, מנקודת מבט אבטחה. דרך הכפר WWW, אנו ממליצים ליישם ערוץ מוצפן באמצעות TLS או «שכבת אבטחה תחבורתית », בין מחשב הלקוח לשרת.
אנו מנסים להשיג זאת מהדור הנכון של אישורים חתומים על עצמם או «חתום על עצמי "בשרת ClearOS, אבל לא הצלחנו. זה למעשה נושא תלוי ועומד. אם מישהו מהקוראים יודע לעשות את זה, מוזמן להסביר את זה!
מעולה.
ברכות ElioTime3000 ותודה על התגובה !!!
ברכות eliotime3000 ותודה על ההלל על המאמר !!!
מְעוּלֶה! ברצוני להעביר מזל טוב לכותב הפרסום על שיתוף הידע הרב שלו ולבלוג על התרת פרסומו.
תודה רבה לך!
תודה רבה על שבח ותגובה !!! כוח שתתן לי להמשיך לחלוק את הידע עם הקהילה, בה כולנו לומדים.
מאמר טוב! שימו לב שלגבי השימוש באישורים, כאשר אתם מייצרים את האישור עליכם להוסיף לתצורת 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.
ברכות!
תודה על תרומתך !!! עם זאת, אני מפרסם 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, למקרה שתרצה להחליף יותר. הגישה לאינטרנט מאוד איטית עבורי.
עבור 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; הם עצמאיים לחלוטין אחד מהשני ואינך צריך להיות מושבת כדי להשתמש בשני.
ברכות!