המדריך המלא ליצירה והגדרה של אישורי אבטחה לעבודה ב SSL לצורך עבודה עםExchange במערכות SBS

9 בנובמבר 2009

תגובה אחת

מכיוון שהמאמר כתוב בעברית ומכיל במקור הרבה תמונות מומלץ להוריד את הקובץ מהלינק בתחתית העמוד


נתחיל בהסבר פשוט לגבי SSL & Certificate


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


בכדי לשמור על אבטחה מלאה מיקרוסופט "מערימה קשיים" כאשר נדרשים לקבל שירות בפרוטוקול HTTPS משרת והאישור לא עומד באחד משלושת התנאים:


1.      האישור ניתן ע"י גורם שהמערכת תומכת בו (רשום ב Trusted Certificate Publishers  בלשונית Contenet)


2.      האישור תקף (לכל אישור תאריך פקיעה)


3.      שם האתר המספק את השירות מופיע ב SUBJECT


במקרים מסוימים יש צורך רק באישור של המשתמש כי הוא מבין את הסיכון ורוצה להמשיך כמו בגלישה לאתר מאובטח כגון OWA (גם במכשירים ניידים מסוימים כגוןIPHONE ו NOKIA MFE מדגמים חדשים יש אפשרות לאשר "אפשר תעודה לא אמינה תמיד")


במקרים אחרים כמו "RPC OVER HTTPS" ב OUTLOOK המערכת פשוט לא תתחבר ללא הודעה מפורשת


ישנם 2 אפשרויות שימוש ב אישורים


1.      התקנת CERTIFICATE AUTHORITY  בשרת – מאפשר לך ליצור ולנהל (לחדש למחוק להחליף) תעודות כאוות נפשך אבל עבודה בתצורה זו תאלץ אותך להתקין את ה ROOT CERTIFICATE של השרת בכל מחשב או מכשיר נייד שתתקין


2.      שליחת התעודה של האתר לגורם חיצוני מוסמך וקבלת אישור ש"הוסמך" ע"י גורם שרשום ברשימה הקיימת במערכת ההפעלה – עבודה בתצורה זו עולה כ 90$ לשנה  אך פותרת אותך מהצורך להתקין אישורים או לבצע כל הכנה על כל מחשב שאותו תרצה להגדיר.


מה היה לנו ב SBS 2003


כמיטב המסורת של SBS כאשר הרצנו את ה WIZARD של החיבור לאינטרנט הוא יצר לנו Self Signed Certificate  ללא הקמת CERTIFICATE AUTHORITY SERVICE


פיתרון זה היה טוב לעבודה ב OWA וגם באופן מסוים ב RPC OVER HTTPS


ההמלצה שלי לכולם תמיד הייתה להתקין CERTIFICATE AUTHORITY SERVICE וליצור אישור חדש מולו


שם האתר באישור חייב להיות השם החיצוני של האתר (בד"כ השתמשנו ב mail.domainname.co.il)


בשיטה זו הרווחנו:



  1. ניתן לגשת ל http://mail.domainname.co.il/certsrv  ולהוריד את האישור הראשי של השרת וע"י כך לקבל תמיכה בכל אישור שנוצר דרכו.

  2. מענה מעולה למצב של חידוש האישור שתקף לשנתיים (מנהל הרשת נדרש ל 4 קליקים בשרת והאישור מחודש לשנתיים ללא כל הגדרה ושינוי בתחנות הCLIENTS)

או כמובן לרכוש אישור חיצוני


מה חדש ומה חסר ב SBS 2008


ב 2008 מיקרוסופט עלתה מדרגה אחת (אבל רק אחת( קדימה ובתהליך יצירת המערכת היא מתקינה CERTIFICARE AUTHORITY SERVER ומייצרת אישור מולו ב WIZARD של  CONNECT TO THE INTERNET


מה לא עשו ?:



  1. לא התקינו כברירת מחדל את ממשק ה WEB לניהול והורדת ה ROOT CERTIFICATE לכן אני ממליץ בסוף ההתקנה לגשת ל:

 SERVER MANAGER ←ROLES ←ACTIVE DIRECTORY CERTIFICATE SERVER


ולהוסיף את Certificate Authority Web Enrollment



  1. לא הגדירו את אפשרות ה AUTODISCOVER  – הפרק הבא יסביר מה זה ואיך ניתן להגדיר

הגדרת Autodiscover  בשרת עם EXCHANGE 2007 או בכל SBS 2008


התכונה הנ"ל מאפשרת ללקוחות שעובדים עם OL 2007 ומעלה או מכשירים ניידים (כולל Mail For Exchange) בדגמים החדשים לזהות את פרטי שרת הEXCHANGE (שם FQDN ו NETBIOS) בעזרת ה DNS  והאישור של האתר ובכך ע"י הכנסת פרטים בסיסיים שכל משתמש יודע (Email & Password) מתבצעת באופן אוטומטי כל הכנסת הפרמטרים להגדרת  RPC OVER HTTPS


ניגש לעבודה:



  1. כאשר אנו מקימים מערכת ללקוח חדש שקנה או מחזיק שם דומיין יש צורך לעדכן את הרשומות הבאות:


    1. MX שמפנה לשם remote.domainname.co.il  (בהנחה שהלקוח לא משתמש ב mail relay עם סינון של שירות צד שלישי(

**שימו לב להקפיד לעבוד עם השם REMOTE ולא MAIL או כל דבר אחר. SBS  דואג ע"י הגדרות בDNS שהשם יהיה שקוף למשתמש מתוך האירגון ומחוצה לו




    1. A שמפנה את כתובת ה IP של השרת ל remote.domainname.co.il

    2. A שמפנה את כתובת ה IP של השרת ל autodiscover.domainname.co.il  ניתן גם ליצור CNAME

  1. יצירת בקשה ל CERTIFICATE עם שמות DNS מרובים-  פקודת POWERSHELL שמכילה את כל השמות תיצור לנו קובץ *.cer שאותו נוכל לשלוח לספק חיצוני ולקבל (בתשלום כמובן) את האישור לשרת ה IIS או שנשלח אותו ל ACTIVE DIRECTORY CERTIFICATE SERVER  שלנו

הפקודה נראית כך:


New-ExchangeCertificate -GenerateRequest -DomainName mail.contoso.com, autodiscover.contoso.com -FriendlyName contosoinc -KeySize 1024 -PrivateKeyExportable:$True -SubjectName "c=US o=contoso inc, CN=server01.contoso.com" -Path c:\certrequest.txt


הדרך הקלה ביותר ליצור את הפקודה היא כלי שיש באתר בלינק הבא:


https://www.digicert.com/easy-csr/exchange2007.htm



שימו לב שבצד ימין יש הסבר לכל חלון פרטים שיש להכניס


בסיום לוחצים Generate ויש לנו פקודה מוכנה


 


New-ExchangeCertificate -GenerateRequest -Path c:\highnet.csr -KeySize 2048 -SubjectName "c=IL, s=IL, l=Holon, o=Highnet LTD, ou=IT, cn=highnet" -DomainName remote.highnet.co.il, server2k8.highnetltd.local, autodiscover.highnet.co.il -PrivateKeyExportable $True


פתח POWERSHELL (לא לשכוחRun as administrator )


הדבק בקשה זו


ייווצר קובץ ב PATH שרשום בפקודה (c:\highnet.csr)


קובץ זה ניתן:



  • 1. לשלוח לצד שלישי להנפקת אישור ממקור אמין (לאחר קבלת האישור החתום ניתן לעבור ישר לסוף המאמר לפקודת ה POWERSHELL האחרונה)

  • 2. להנפיק לעצמנו תעודה בעזרת שרת ה CERTIFICATEשבשרת SBS2008

אדגים את השיטה השנייה


כאשר אנו יוצרים active directory Enterprise trusted root certificate אנו עובדים בתצורה שבה ב AD מוגדרים ההרשאות מי רשאי להנפיק (enroll) איזו תעודה


כברירת מחדל אין לנו ולשרת הרשאה להנפיק תעודה מסוג web server ולכן יש צורך לתת הרשאה:


הקלד Certificate Authority  בשורת החיפוש והקש ENTER


גש ל Certificate Templates  בתחתית העץ משמאל


לחצן ימני Manage – נפתח ממשק ניהול כל התבניות


הקלק פעמיים על Web Server גש ל Security הוסף domain Users ותן להם הרשאת Enroll


בצע RESTART ל ACTIVE DIRECTORY CERTIFICATE SERVICE


גש ל IIS MANAGEMENT ודאג שהAuthentication  תחת ה CertSrv לא מאפשר Anonymous  ומאפשר Basic Authentication


פתח את הלינק   http://127.0.0.1/certsrv


הכנס שם וסיסמא  (domain\netadmin)


 


הקלק על Request a certificate


 


כעת על  Advanced certificate request


 


שוב על הלינק התחתון base 64 encoded


 


כאן מדביקים את תוכן הקובץ שיצרנו באמצעות פקודת ה SHELL (c:\highnet.cer)


ובוחרים web server  ו -  submit


כל שנותר הוא לשמור את הcertificate במקום מסוים בוא נאמר  c:\certnew.cer


 


כעת שוב ע"י פקודת SHELL פשוטה אנחנו נשתול את האישור במערכת ונחסוך את העבודה עם ה GUI של ה IIS ו ה EXCHANGE


Import-ExchangeCertificate -path c:\certnew.cer | Enable-ExchangeCertificate -Services IIS, SMTP


האישור שיצרנו עבור השרת ושייכנו לאתר ב IIS מכיל את כל הנתונים ב Subject Alternate Name


היכנס לiis manager


פתח את ה default web site


גש ל  sbs web application פתח את ה binding ובחר אישור בשם microsoft exchange


 וודא ששני ה siites עובדים


בזה הסתיים התהליך וניתן לחבר לקוחות באופן קל ומהיר


לא לשכוח שעבור אירגונים בהם השתמשנו בשרת האישורים שלנו יש לשתול את האישור הראשי של השרת בתחנה שבה אנו רוצים להתקין את המערכת


ניתן לגשת לאישור מכל מקום ע"י גלישה ל  http://[IPADDRESS]/certsrv


שימו לב לא לכתוב remote.domainname.co.il אלא את כתובת ה IP החיצונית (מכיוון שה HOST HEADER הנ"ל שמור לאתר של האפליקציות ולא לאתר שבו יושב ה CERTSRV.


נתבקש לתת שם וסיסמא (כל משתמש באירגון יכול להספיק)


 


בוחרים באפשרות האחרונה


 


בוחרים בלינק הראשון


 


פתח או שמור ופתח את האישור


 


לחץ על INSTALL CERTIFICATE


 


שימו לב בהתקנה לבחור למקם את האישור במקום מסוים ולא באופן אוטומטי וכאשר נפתח חלון בחירת המיקום יש לסמן Show physical stores לבחור Trusted Root Certificate Authority ולבחור registry


לאשר את כל המסכים (גם כשמופיע הודעה שנראית כשגיאה)


דרך טובה לבדוק שהאישור הותקן היא לגלוש ל OWA ולראות שלא מקבלים הערה על בעיה בCERTIFICATE


בהצלחה

הוסף תגובה
facebook linkedin twitter email

כתיבת תגובה

האימייל לא יוצג באתר. (*) שדות חובה מסומנים

תגובה אחת

  1. עוז29 במרץ 2010 ב 12:08

    איפה הלינק להורדת הקובץ המצורץ אני לא רואה אותו

    להגיב