מבוא Active Directory << קורס אונליין חינם
Menu
עברית Русский
מכללת פרקטיקיו
- מתחילים ללמוד חינם -
קורסי תכנות / סייבר / ניהול רשת

מבוא Active Directory

קורסים למנהלי רשת מסלול מנהלי רשת
עם התמחות בשרתי מיקרוסופט
מסלול סייבר והאקינג - Hacking מסלול תקשורת ואבטחת מידע
Cisco CCNA & FortiGate & Checkpoint
מומחה ווירטואליזציה
VMware & Hyper-V
מסלול לינוקס ו-DevOps מומחה ענן של אמזון - AWS מומחה ענן של מיקרוסופט - Azure מומחה ענן של גוגל - GCP מומחה שרתי SCCM - System Center
של מיקרוסופט לארגונים גדולים
קורסי תכנות מסלול Full Stack דוט-נט
יסודות התכנות
מסלול Full Stack דוט-נט
צד שרת - Backend
מסלול Full Stack דוט-נט
צד לקוח - Frontend
מסלול Full Stack Node.JS קורסי תכנות נוספים
Java / Python / PHP
מפתח אפליקציות - אנדרואיד - אייפון מפתח משחקי מחשב - Unity מפתח תוכנות לוונדוס - WinForms מסלול DBA
התמחות במסדי נתונים – SQL
בדיקות תוכנה - QA - אוטומציה בדיקות תוכנה - QA - בדיקות ידניות בדיקות תוכנה - QA - קורסים נוספים המלצות תלמידים על PracticU

בס"ד


מבוא לעבודה בסביבה עסקית


מהו Domain?


עד עתה עסקנו במערכת Windows 7 שנמצאת בסביבה פרטית, קרי Workgroup. בסביבה שכזאת, כל מחשב "אחראי לעצמו". למשל, אם במחשב שלי בבית יש משתמש בשם Oren עם סיסמה כלשהי, אז המשתמש הנ"ל יוכל להיכנס למערכת עם המשתמש שיצרתי בעבורו. כל מחשב ומחשב שומר את הנתונים על המשתמשים וסיסמאותיהם בחלק של ה-Registry שנקרא: SAM (Security Accounts Manager). לעומת זאת, בסביבה של Domain הדברים קורים מעט אחרת. ההחלטה אם משתמש ייכנס למחשב כזה או אחר נמצאת בידי שרת שנקרא Domain Controller ("שליט הדומיין") ובקיצור: DC. שרת DC לא "נולד כזה". בהתחלה הוא היה שרת רגיל לכל דבר ועניין, רק שבשלב מסויים התקינו עליו את תוכנת Active Directory ומאותו הרגע הוא נהיה "השליט". מעכשיו , כל רשימת המשתמשים שרשאים להיכנס למחשבי החברה יירשמו בתוך Active Directory. מי שרשום מקבל אישור כניסה למערכות בארגון, מי שלא רשום נבעט החוצה בבושת פנים. אתם אולי שואלים כיצד מתקינים Active Directory על שרת וזאת אכן שאלה חשובה שנדון בה, אבל לפני שניכנס לפרטים הטכניים, עלינו להבין מעט - מה זה אומר באמת להיות חלק מסביבה של Domain? ננסה כעת להגדיר מהו Domain.


הגדרת ה-Domain:


ניתן להגדיר מהו Domain באופן טכני למדיי. הגדרה טכנית תיראה בערך כך: לפני כך וכך שנים פותח ב-MIT פרוטוקול אוטנטיקצייה (זיהוי משתמשים) בשם Kerberos. מייקרוסופט לקחה את הפרוטוקול הנ"ל וקראה לסביבה המשתמשת בו: Domain. בפשטות יותר, כבר אמרנו ש-Active Directory היא זו שמזהה את המשתמשים של הארגון ונותנת להם אישור כניסה, ומכיוון שהיא עושה זאת באמצעות פרוטוקול Kerberos, אזי נמצא שה-Domain עצמו נבנה מהפרוטוקול הנ"ל.


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




  1. גבול השמות:

    • לכל ארגון יש שם, למשל: Google.com, או Intel.co.il. שם הארגון מקבל גם לעתים את הכינוי: Domain Suffix או DNS Suffix.

    • אנו כבר יודעים שלכל Client בארגון צריך שיהיה שם מחשב ייחודי משלו, למשל: Comp1. כאשר המחשב הוא חלק מארגון, יתווסף שם הארגון (Domain Suffix) לשם המחשב. למשל: Comp1.google.com יהיה המחשב Comp1 בתוך הארגון Google.com.

    • נמצא אם כך שכל מחשב שסיומתו תהיה Google.com שייך בהכרח ל-Domain ששמו: Google.com. כאשר אנו מציגים את שם המחשב במתכונתו המלאה (עם שם הארגון) הוא מקבל את ההגדרה: FQDN שזה Fully Qualified Domain Name, או בעברית שם "דומייני" מלא של המחשב.

    • נמצא ש-Comp1 הינו שם המחשב עצמו; Google.com הוא ה-Domain Suffix; וה-FQDN הוא: Comp1.google.com.

    • עוד דוגמא נפוצה. בהרבה מקרים שרת אינטרנט ייקרא בשם: www. נמצא שה-FQDN שלו בתוך הארגון: Google.com יהיה: www.google.com. נשמע מוכר, לא?



  2. גבול האוטנטיקצייה והאבטחה:

    • כמו שכבר הגדרנו, כל המחשבים שב-Domain יזוהו על-ידי Active Directory. זאת אומרת, ש-Active Directory יכולה לשלוט רק על מחשבים המשוייכים לארגון. כיצד נשייך מחשבים לארגון? על זה נדבר בשיעור אחר.



  3. גבול הרפליקצייה:

    • עד עכשיו דיברנו על מצב שבו יש DC אחד ב-Domain והוא שולט על ה-Domain. אבל מה יקרה אם יש שני DCs ב-Domain?

    • המצב של יותר מ-DC אחד ב-Domain הוא מצב נפוץ מאוד, שכן במידה ואחד נופל השני עדיין מתפקד ועבודת הארגון לא נפגעת.

    • בעיה שזועקת מכאן היא מה יקרה אם יהיה כתוב בשני ה-DCs מידע שונה? למשל, נניח שב-DC אחד יש מידע על משתמש בשם John וב-DC השני המידע לא נמצא. המשתמש John מעוניין להיכנס למחשבי החברה ולהתחיל את יום העבודה. מה יקרה? האם הוא יוכל להיכנס בזכות ה-DC שבו הוא רשום, או שאולי הוא יידחה בגלל ה-DC השני שלא מכיר אותו?

    • למזלנו הבעיה מהסעיף הקודם לא מתרחשת במציאות (על מקרים חריגים עוד נדון בהמשך) מכיוון שברגע שיש שינוי של מידע באחד מה-DCs מיד המידע מועתק ל-DC השני. העתקה שכזאת נקראת רפליקצייה.

    • הטריגרים לקיום רפליקצייה הן:

      1. הוספת אובייקט, כגון הוספת משתמש.

      2. מחיקת אובייקט, כגון מחיקת משתמש.

      3. שינוי ב-Properties של אובייקט.

      4. שינוי מיקומו של אובייקט ב-Active Directory.



    • כך מובטח לנו שהמידע בין כל ה-DCs ב-Domain יהיה זהה ולא יהיה חוסר עקביות לגבי השאלה מי חבר ב-Domain ומי לא.




על עצים ויערות:


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


Tree: כאשר יש לדומיין מסויים תת-דומיין, שמו יורכב משם ייחודי משלו בתחילה ולאחר מכן שם הדומיין שמעליו (Parent Domain). למשל, תחת ה-Domain בשם Google.com יכול להיות דומיין בשם: North.google.com. מחשב בשם comp1 בתת-הדומיין יקבל את ה-FQDN: comp1.North.google.com. שמות "עקביים" שכאלה נקראים בשם: Contiguous Name Space.


מבנה כפי שהגדרנו נקרא עץ, או Tree. כאשר הדומיין הראשון שהעץ יוצא ממנו נקרא: Tree Root (שורש העץ). שמתם לב שהעץ הוא קצת הפוך? ?


Forest:


אבל ניתן גם ליצור Tree חדש לחלוטין, וכך בעצם יש לנו "יער". המונח באנגלית הוא: Forest. בעוד שתתי-דומיינים בתוך Tree מחוייבים להיות עם Contiguous Name Space, בין Trees שונים אין שום דרישה שכזאת. למשל, ייתכן ויהיה לנו דומיין בשם: Google.com ודומיין בשם: Commit.co.il ושניהם שייכים לאותו הארגון – או במלים אחרות, הם באותו ה-Forest.


הדומיין הראשון בכל ה-Forest נקרא: Forest Root.


שאלה: האם ייתכן שדומיין יהיה גם Forest Root וגם Domain Root?


לכאורה, הדבר הוא קשה מאוד. לפחות בין דומיינים באותו Tree אנחנו רואים קשר מסויים, אבל בין דומיינים ב-Forest לא רואים שום קשר. מה, איפוא, בכלל מחבר ביניהם? למה Commit.co.il כן נמצא באותו ה-Forest עם Google.com – בעוד Ebay.com לא נמצא?


התשובה היא: מה שמחבר בין כל הדומיינים ב-Forest – מה שקיים בין Google.com ו-Commit.co.il בודגמא שלנו הוא: Implicit 2-way Transitive Trust!


Implicit 2-way Transitive Trust:


נבאר את המונח דווקא לא לפי הסדר:




  • Trust – כאשר שני דומיינים סומכים האחד על השני. המשמעות היא שמשתמש מדומיין מסויים יוכל להיכנס למערכות של דומיין אחר באותו הארגון, וזאת על אף שהוא לא רשום ב-DC ששולט על אותו הדומיין. והסיבה היא שאע"ג שאינו רשום ב-DC ההוא, עדיין אותו ה-DC סומך על ה-DC שבדומיין שלו, שבו הוא כן רשום – ולכן הוא מקבל בסופו של דבר אישור גישה.

  • Implicit – "משתמע". הכוונה היא שברגע שבו יצרתי Forest כבר קיים ה-Trust הנ"ל. אין לי צורך ליצור אותו, וגם אין לי יכולת להסיר אותו! לא מעוניינים ב-Trust? אל תצרו Forest.

  • 2-way – "דו-כיווני". כשם שדומיין אחד סומך על השני, כך גם להיפך.

  • Transitive – ה-Trust מקיים את כלל הטרנזיטיביות. הרעיון הוא כזה: אם דומיין A סומך על דומיין B, ודומיין B סומך על דומיין C – נמצא שדומיין A סומך על דומיין C.


הקמת DC (התקנת Active Directory) –




  • שימו לב שהשרת מחולק ל-Roles ו-Features. Role הינו "שרת" שניתן להתקנה, ו-Feature היא פונקציה שניתן להוסיף. למשל, שרת DNS יהיה Role והיכולת להשתמש ב-Wi-Fi תהיה Feature. לעתים התקנת שרת תתקין באופן אוטומטי Feature שהשרת משתמש בו.

  • כניסה לשליטה על Roles ו-Features תהיה דרך Server Manager.

  • אחד מה-Roles הינו Active Directory Domain Services או AD DS. ננסה להתקין את ה-Role הנ"ל.

  • אנו שמים לב שאפילו לאחר ההתקנה, עדיין אין לנו Active Directory. הדבר היחיד שהותקן הוא Shell גראפי. אנו זקוקים לו במקרה ואנו רוצים לשלוט דרך השרת על שרת DC אחר.

  • כדי להתקין באמת את Active Directory עלינו להשתמש בתוכנת DCPromo. תוכנה זו תאפשר לנו להגדיר את הדומיין שאנו יוצרים.

  • ניתן להשתמש בתוכנת DCPromo באופן ישיר, גם מבלי להתקין את AD DS Role לפני.

  • אם יש כבר על השרת Active Directory, אז תוכנת DCPromo תעשה את הפעולה ההפוכה – קרי, תמחוק את Active Directory!


תרגיל: התקינו A.D. על שרת חבר בדומיין, כך שיהיו שני DCs בדומיין. הוכיחו כי הוספת משתמש ב-A.D. אחת, תגרור מיד רפליקצייה של המידע ל-A.D. השניה.


סקר שוק נכון לתאריך – 01/09/2011

הסבר קצר על שיטת הלימוד אונליין

צילמנו בסרטונים את כל ההרצאות של הקורס, כי ללמוד בכיתה לא נוח וגם יקר.
קורס בכיתה עולה מעל מ-17 אלף ₪ ואצלנו בסרטונים רק 350 ש"ח לחודש.
אם משהו לא ברור בסרטון תמיד אפשר להתקשר למרצה ולדבר איתו ישירות בטלפון.
המרצה זמין גם בווטסאפ וגם בצ'אט באתר המכללה.


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

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


מה לעשות אם לא מבינים משהו בסרט?

פשוט מאוד, מתקשרים למכללה ומדברים ישירות עם המרצה. אפשר גם להתכתב עם המרצה במייל או בווטסאפ או בצ'אט באתר.


האם יש לכם כיתות לימוד רגילות?

להשכיר כיתה + לשלם משכורת למרצה = 17 אלף ש"ח עלות הקורס לתלמיד.
אצלנו בסרטונים מקבלים אותו חומר לימוד
ואפילו יותר, כי אין מגבלה של זמן למרצה (כמו שיש בכיתה),
בנוסף מקבלים בדיוק אותה תעודה בינלאומית,
כי מבחן הוא מבחן אחיד לכולם המתבצע במרכז בחינות מורשה
והכי חשוב שמקבלים את אותם המרצים, שמלמדים בכיתה רגילה,
רק שצילמנו אותם בסרטונים
והמחיר בסרטונים רק 350 ש"ח ולא 17 אלף כמו בכיתה רגילה.



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

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

בסיום קורס ניתן לקבל תעודות הבאות:
1. תעודה של המכללה - מותנה בהגשת פרוייקט גמר בסוף הקורס
2. תעודת הסמכה בינלאומית של מיקרוסופט העולמית - מותנה במעבר מוצלח של מבחן הסמכה חיצוני של מיקרוסופט (מבחן זה מתבצע כל שבוע במרכז בחינות מורשה בתל-אביב)


מידע כללי:
1. חומר הלימוד מורכב ממאגר עצום ומסודר מאוד של סרטים מקצועיים, הניתנים לצפיה מהבית. מאגר זה כולל הרצאות מוקלטות בעברית בצורה מסודרת ע"י המרצים הטובים ביותר. רשימת הסרטים המלאה נמצאת בתפריט בצד ימין.
2. כל סטודנט במכללה מקבל שם וסיסמה לצורך גישה לשרת הקבצים שלנו.
השרת מכיל את כל התוכנות הדרושות ללימוד וכן חומר עזר
3. הקורסים מועברים בהתאם לסילבוסים של החברות המובילות: Microsoft, Cisco

שרתים ותחנות קצה

בס"ד


שלום כולם, שמי איתמר רוטמנש ואני אשמח להסביר לכם מעט על ההבדלים שבין שרת לבין תחנת קצה, או אם תרצו – ההבדלים שבין Server ו-Client.


הרבה אנשים חושבים שכשאומרים "שרת" המשמעות היא למחשב ענק שמוסתר אי שם במרתפי חברות. האמת היא שהתפיסה הזו לא לגמרי מדוייקת. זה נכון שלעתים נמצא שרתים בחברות שנמצאים בחדרים מקוררים ונעולים (לעתים אפילו עם שומרים חמושים בכניסה במקרים של שרתים צבאיים וכו') – אבל זו אינה המהות האמיתית של מהו שרת.


אז מהו שרת?


שרת הוא כל מחשב (או מכשיר אלקטרוני אחר) שנותן שירות למחשבים אחרים (או למכשירים אלקטרוניים אחרים). המחשבים שמקבלים את השירות מאותו השרת נקראים ה-Clients שלו.


ננסה להבין לעומק את הדבר על ידי דוגמא מהחיים. נניח והחלטתי ללמוד פיזיקה באוניברסיטה. במקרה כזה בוודאי תסכימו איתי שאני ושאר הכיתה נחשבים ל-clients בעוד המרצה נחשב לשרת, שכן הוא מעביר את הידע שלו אלינו ואנחנו מקבלים ממנו מידע. עד לכאן הכול פשוט, אבל בואו נוסיף אלמנט אחד לסיפור. נניח שאחרי שנגמר השיעור אני חוזר לביתי ומתארגן לעבודת הערב. בעבודת הערב שלי אני מאמן ג'ודו – והנה ברגע שאני מגיע לעבודתי פתאום אני השרת (או הסנסאי) והתלמידים שלי הם ה-Clients. אם כך, נשאלת השאלה – מי אני?? שרת או client?


התשובה הברורה היא שאני שניהם!! נכון, אני גם נחשב לשרת וגם נחשב ל-Client – ההבדל הוא רק הסיטואצייה. בכיתת הפיזיקה הייתי Client ובחוג הג'ודו הייתי שרת. מבינים את הרעיון?


עכשיו בואו נתרגם את הרעיון הזה לעולם המחשבים. יכול להיות שמחשב מקבל מידע ממחשב אחר, למשל – אנחנו נכנסים לאתר Gmail ומבקשים לראות את המיילים שלנו. כמובן שברגע זה אנחנו Clients. אבל אם מאוחר יותר מישהו מנסה לקחת מידע מאתנו (למשל חבר שבא עם Disk On Key ורוצה להעביר מוזיקה) – אז אנחנו שרתים.


עד לכאן הכול טוב ויפה, אבל עדיין יש שאלה אחת שיכולה מאוד להציק לאנשי המקצוע. החברות שמייצרות את מערכות ההפעלה (למשל מייקרוסופט), מגדירות את מערכות ההפעלה כמערכות הפעלה של Client או כמערכות הפעלה של Server. אם ניקח את חברת מייקרוסופט כדוגמא – נמצא שמערכת ההפעלה Windows 7 היא Client בעוד מערכת ההפעלה Server 2008 R2 היא מן הסתם (כמרומז בשמה) שרת. היינו אולי חושבים שמערכת הפעלה שמוגדרת כ-Client יודעת רק לבקש מידע ושירותים – אבל זה לא נכון. אפשר להתקין למשל על windows 7 שרת קבצים קטן בשם FTP (File Transfer Protocol) ואז תוכנת ה-Client מתפקדת כ-שרת FTP לכל דבר ומחשבים אחרים (אפילו אולי כאלו שמותקנת עליהם מערכת ההפעלה Server 2008 R2) ניגשים אל המחשב ההוא כדי להעביר קבצים והם נחשבים ל-Clients שלו.


במערכות הפעלה שמוגדרות כשרתים מתרחש סיפור דומה. היינו אולי מצפים שמערכת ההפעלה תתפקד רק כשרת, אבל זה לא המצב. למשל, בדוגמא הקודמת שנתנו – גם מחשב שמותקנת עליו מערכת ההפעלה של Server 2008 R2 יכול לפנות בבקשה להעביר קבצים את Windows 7 שמותקן עליו FTP.


הפתרון לבלבול הוא די פשוט. מערכות הפעלה שמוגדרות כ-Clients נקראות כך משום שרוב הפעולות שהן עושות הן בקשת מידע מצחשבים אחרים. זאת אומרת שרוב הפעילות שלהן היא כ-Clients. לעומת מערכות הפעלה שמוגדרות כ-Servers נקראות כך משום שרוב הפעולות שהן עושות הן לתת מידע למחשבים אחרים. הדבר, כמו שכבר ראינו, לא מונע ממערכת הפעלה מסוג Client לתפקד כשרת לכל דבר במקרים מסויימים ולמערכת הפעלה מסוג Server לתפקד כ-Client לכל דבר במקרים מסויימים.


לסיכום, לא נמצא כמעט בעולם הטכנולוגי שום מקרה בו מחשב יהיה רק שרת או רק Client. המחשבים הם תמיד גם וגם, רק תלוי בסיטואצייה שאליה אנחנו מתייחסים. כך למשל, אפילו בתקשורת בין שני מחשבים שמוגדרים כ-Clients או שני מחשבים שמוגדרים כ-Servers נמצא שתמיד זה שמבקש את המידע מוגדר כ-Client בסיטואצייה הנוכחית יזה שנותן מידע מוגדר כ-Server בסיטואצייה הנוכחית. וזאת ללא קשר כלל למערכת ההפעלה שמותקנת על המחשב.


נקטדה נוספת שאני רוצה להזכיר כבונוס אחרון היא ששרתים (או מחשבים שמותקנת עליהם מערכת ההפעלה של שרת) אינם חייבים להיות מחשבים עם 7000 מעבדים וכמות אסטרונומיות של מקום וזיכרון. את תוכנת Server 2008 ניתן להתקין אפילו בבית, על משחב פשוט שקונים בחנות. החומרות היום חזקות עד כדי כך, שניתן אפילו על מחשב פשוט להתקין כמה וכמה שרתים בעזרת תוכנות וירטואליזצייה כגון VMware. על תוכנות וירטואליזצייה נדון במאמר אחר.