בדיקת התקינות והשכפול של בקר תחום של Active Directory
Active Directory הוא שירות אמין, אך מורכב וקריטי, ויכולת ההפעלה של הרשת הארגונית כולה תלויה בו. מנהל מערכת צריך לבדוק כל הזמן אם Active Directory פועל כראוי. במאמר זה, נעבור על השיטות העיקריות כיצד לבדוק ולאבחן את התקינות של תחום Active Directory, בקרי תחום ושכפול.
כיצד לבדוק את תקינות בקר תחום AD באמצעות Dcdiag?
Dcdiag הוא כלי מוכלל בסיסי לבדיקת תקינות בקר תחום של Active Directory. כדי לבדוק במהירות את המצב של בקר תחום AD, השתמש בפקודה הבאה:
dcdiag /s:DC01הפקודה מפעילה בדיקות שונות מול בקר התחום שצוין ומחזירה מצב עבור כל בדיקה (Passed/Failed).
בדיקות אופייניות:
קישוריות - בודק אם ה- DC רשום ב- DNS, יוצר חיבורי LDAP ו- RPC לבדיקה;
-
פרסום - בודק תפקידים ושירותים המתפרסמים ב-DC;
FRSEvent - בודק אם יש שגיאות של שירות שכפול קבצים (שגיאות שכפול SYSVOL);
FSMOCheck - בודק אם DC יכול להתחבר לשרת KDC, PDC וקטלוג גלובלי;
MachineAccount — בודק אם חשבון DC רשום ב-AD כראוי ואם יחסי האמון בתחום נכונים;
NetLogons - בודק את הרשאות הכניסה כדי לאפשר שכפול להמשיך;
שכפולים - בודק את מצב השכפול בין בקרי הדומיין ואם יש שגיאות;
KnowsOfRoleHolders - בודק את הזמינות של בקרי התחום עם תפקידי FSMO;
שירותים - בודק אם השירותים בבקרי התחום פועלים;
Systemlog - בודק אם יש שגיאות ביומני DC;
וכו.
תוכל למצוא תיאור מלא של כל בדיקות dcdiag הזמינות כאן.
מלבד בדיקות ברירת מחדל, באפשרותך להפעיל בדיקות נוספות של בקר תחום:
טופולוגיה - בודקת אם KCC יצרה טופולוגיה מלאה עבור כל DCs
CheckSecurityError
CutoffServers - מוצא DC שאינו משוכפל מכיוון שהשותף שלו אינו זמין
DNS - 6 בדיקות DNS זמינות (
/DnsBasic,
/DnsForwarders,
/DnsDelegation,
/DnsDymanicUpdate,
/DnsRecordRegistration,
/DnsResolveExtName)
OutboundSecureChannels
VerifyReplicas - בודק אם מחיצות היישום משוכפלות כראוי
VerifyEnterpriseReferences
לדוגמה, כדי לבדוק אם DNS פועל כראוי בכל בקרי התחום, השתמש בפקודה הבאה:
dcdiag.exe /s:DC01 /test:dns /e /vהתוצאה תהיה טבלת סיכום המציגה תוצאות בדיקה על האופן שבו DNS פותר שמות בכל DCs (אם זה בסדר, תראה Pass בכל תא). אם אתה רואה את האפשרות נכשל, עליך להפעיל בדיקה זו מול ה-DC שצוין:
dcdiag.exe /s:DC01 /test:dns /DnsForwarders /vכדי לקבל מידע נוסף מתוצאות הבדיקה של בקר תחום ולשמור אותו בקובץ טקסט, השתמש בפקודה זו:
dcdiag /s:DC01 /v >> c:\ps\dc01_dcdiag_test.logהפקודה הבאה של PowerShell מציגה רק מידע סיכום על בדיקות dcdiag שבוצעו:
Dcdiag /s:DC01 | select-string -pattern '\. (.*) \b(passed|failed)\b test (.*)'כדי לקבל את המצב של כל בקרי התחום, השתמש ב:
dcdiag.exe /s:a-d.site /aאם ברצונך להציג רק את השגיאות שמצאת, השתמש באפשרות /q:
dcdiag.exe /s:dc01 /qבדוגמה שלי, הכלי זיהה כמה שגיאות שכפול:
There are warning or error events within the last 24 hours after the SYSVOL has been shared. Failing SYSVOL replication problems may cause Group Policy problems.
......................... DC01 failed test DFSREventכדי לגרום ל- dcdiag לתקן באופן אוטומטי את שגיאות השמות הראשיים של השירות עבור חשבון DC, השתמש באפשרות /fix:
dcdiag.exe /s:dc01 /fixבדיקת שגיאות שכפול של Active Directory בין DCs
כלי repadmin המוכלל משמש לבדיקת שכפול בתחום Active Directory.
הנה הפקודה הבסיסית לבדיקת שכפול AD:
repadmin /replsumהכלי החזיר את מצב השכפול הנוכחי בין כל DCs. באופן אידיאלי, ערך הדלתא הגדול ביותר צריך להיות פחות משעה אחת (תלוי בטופולוגיית AD ובהגדרות תדירות השכפול הבין-אתרים), ומספר השגיאות=0. בדוגמה שלי, אתם יכולים לראות שאחד השכפולים האחרונים לקח 14 יום, אבל עכשיו זה בסדר.
כדי לבדוק שכפול עבור כל DCs בתחום:
repadmin /replsum *כדי לבדוק שכפול בין אתרים:
repadmin /showismכדי להציג את טופולוגיית השכפול והשגיאות (אם קיימות), הפעל פקודה זו:
repadmin /showreplהפקודה תבדוק את DCs ותחזיר את השעה והתאריך של השכפול המוצלח האחרון עבור כל מחיצת ספרייה (
last attempt xxxx was successful).
כדי להציג מידע שכפול נוסף, השתמש בפקודה זו:
repadmin /showrepl *כדי להפעיל שכפול סיסמה מבקר תחום הניתן לכתיבה לבקר תחום לקריאה בלבד (RODC), נעשה שימוש באפשרות /rodcpwdrepl.
האפשרות /replicate מתחילה את השכפול של מחיצת הספרייה שצוינה ל- DC ספציפי באופן מיידי.
כדי לסנכרן DC שצוין עם כל שותפי השכפול שלו, השתמש בפקודה הבאה:
replmon /syncall <nameDC>כדי להציג את תור השכפול:
repadmin /queueבאופן אידיאלי, תור השכפול צריך להיות ריק.
בדוק מתי נוצר הגיבוי האחרון של בקר התחום הנוכחי:
Repadmin /showbackup *באפשרותך גם לבדוק את מצב השכפול באמצעות PowerShell. לדוגמה, הפקודה הבאה תציג את כל שגיאות השכפול שהיא מוצאת בטבלה Out-GridView:
Get-ADReplicationPartnerMetadata -Target * -Partition * | Select-Object Server,Partition,Partner,ConsecutiveReplicationFailures,LastReplicationSuccess,LastRepicationResult | Out-GridViewהעליתי קובץ script של PowerShell שבו אני משתמש לעתים קרובות כדי לבדוק את מצב השכפול ב-AD למאגר GitHub שלי. קובץ ה- Script יוצר קובץ HTML ויכול לשלוח אותו בדואר אלקטרוני באמצעות ה- cmdlet Send-MailMessage.
https://github.com/maxbakhub/winposh/blob/main/ADHealthCheck.ps1
באפשרותך גם לבדוק את מצב השירותים הבסיסיים של ADDS בבקר תחום באמצעות ה- cmdlet Get-Service:
שירותי תחום של Active Directory (
ntds)
שירותי אינטרנט של Active Directory (
adws) - כל רכיבי ה- cmdlet ממודול AD PowerShell מתחברים לשירות זה
DNS (
dnscacheו
dns)
מרכז הפצת המפתח של Kerberos (
kdc)
שירות הזמן של Windows (
w32time)
נטלוגון (
netlogon)
Get-Service -name ntds,adws,dns,dnscache,kdc,w32time,netlogon -ComputerName dc01לכן, במאמר זה, הצגנו כלים בסיסיים, פקודות וקבצי Script של PowerShell שבהם באפשרותך להשתמש כדי לאבחן את התקינות של תחום Active Directory שלך. באפשרותך להשתמש בהם בכל הגירסאות הנתמכות של Windows Server, כולל בקרי התחום הפועלים במצב Server Core.










