הקמת Active Directory לתשתית ארגונית
אנו מקימים Active Directory מקצה לקצה — החל מעיצוב המבנה ועד אינטגרציה עם שירותים ארגוניים. כאשר AD נופל או מוגדר בצורה שגויה, העובדים לא יכולים לגשת לשום דבר: דוא"ל, VPN או GitLab. ההבדל בין "פריסת דומיין" לבין "הגדרת AD ארגוני" טמון בפרטים: מבנה OU נכון, האצלת הרשאות, מדיניות סיסמאות מפורטת וניטור. עם ניסיון של למעלה מ-10 שנים ויותר מ-50 פרויקטי תשתית AD, אנו מבטיחים אבטחה וסובלנות לתקלות. לפי מיקרוסופט, AD מוגדר כראוי מפחית אירועי אימות ב-70% ומקצר את זמן התגובה לפריצות פי שלושה. למעלה מ-90% מחברות Fortune 500 מסתמכות על Active Directory.
אילו בעיות פותר Active Directory ארגוני?
כניסה יחידה באמצעות Kerberos ו-LDAP היא הבסיס. אבל אם מבנה ה-OU אינו מחושב היטב, GPOs מתנגשים, וצוות התמיכה מקבל הרשאות Domain Admin "לנוחות". אנו מטפלים בשלוש בעיות מרכזיות:
- מבנה OU לא אופטימלי. חברות רבות מעתיקות את תרשים הארגון, שמשתנה — שינוי שמות של OUs בסביבת ייצור הוא כואב. אנו מקבצים אובייקטים לפי סוג: משתמשים, מחשבים, קבוצות, חשבונות שירות. זה יציב יותר וחוסך עד 40% מזמן העברת אובייקטים.
- סיסמאות חלשות והיעדר מדיניות מפורטת. מדיניות סיסמאות אחת לא מתאימה לכולם. מנהלים צריכים סיסמאות של 16+ תווים עם רוטציה תכופה; משתמשים רגילים צריכים לפחות 10. Fine-Grained Password Policy פותר זאת ומפחית אירועי פריצה ב-80%.
-
הרשאות מוגזמות. צוות תמיכה עם Domain Admin הוא פרצה נפוצה. האצלה באמצעות
company.local ├── _ServiceAccounts (технические аккаунты, PasswordNeverExpires) ├── _AdminUsers (администраторы с отдельными аккаунтами) ├── Groups │ ├── Security (группы для GPO и прав доступа) │ └── Distribution (почтовые группы) ├── Computers │ ├── Servers │ │ ├── Production │ │ └── Dev │ └── Workstations │ ├── Moscow │ ├── Remote │ └── _Quarantine (новые машины до проверки) └── Users ├── Moscow ├── Remote └── _Disabled (деактивированные, перед удалением)מעניקה רק פעולות נדרשות: איפוס סיסמה, שחרור חשבון. ללא גישה מיותרת.
מדוע מבנה OU נכון חשוב?
מבנה AD צריך לשקף את המודל התפעולי, לא את תרשים הארגון. תרשים הארגון משתנה — שינוי שמות של OUs בסביבת ייצור הוא כואב בגלל קישורי GPO. קיבוץ לפי סוג אובייקט (משתמשים/מחשבים/קבוצות/חשבונות שירות) הוא יציב יותר. דוגמה:
דוגמה למבנה OU
company.local
├── _ServiceAccounts (технические аккаунты, PasswordNeverExpires)
├── _AdminUsers (администраторы с отдельными аккаунтами)
├── Groups
│ ├── Security (группы для GPO и прав доступа)
│ └── Distribution (почтовые группы)
├── Computers
│ ├── Servers
│ │ ├── Production
│ │ └── Dev
│ └── Workstations
│ ├── Moscow
│ ├── Remote
│ └── _Quarantine (новые машины до проверки)
└── Users
├── Moscow
├── Remote
└── _Disabled (деактивированные, перед удалением)_Quarantine עבור תחנות עבודה הוא נוהג טוב: מכונה חדשה נוחתת שם, מקבלת מדיניות מינימלית, עוברת אימות, ואז עוברת ל-OU המתאים.
כיצד להגדיר Fine-Grained Password Policy?
Default Domain Policy מחיל מדיניות אחת על כולם. Fine-grained מאפשר דרישות שונות לקבוצות שונות — חיוני להפרדה בין משתמשים רגילים למנהלים. אנו מגדירים PSOs נפרדים עם פרמטרים משתנים: למנהלים — אורך 16, היסטוריה 24, נעילה לאחר 3 ניסיונות; למשתמשים — אורך 10, היסטוריה 12, נעילה לאחר 5. זה פי 4 יותר מאובטח מאשר מדיניות אחת, מכיוון שמנהלים לא יכולים להשתמש בסיסמאות חלשות.
הוראות שלב אחר שלב:
- צור PSO למנהלים באמצעות
# Строгая политика для администраторов New-ADFineGrainedPasswordPolicy ` -Name "PSO-Admins" ` -Precedence 10 ` -MinPasswordLength 16 ` -PasswordHistoryCount 24 ` -MinPasswordAge (New-TimeSpan -Days 1) ` -MaxPasswordAge (New-TimeSpan -Days 60) ` -ComplexityEnabled $true ` -LockoutThreshold 3 ` -LockoutDuration (New-TimeSpan -Minutes 30) ` -LockoutObservationWindow (New-TimeSpan -Minutes 30) ` -ReversibleEncryptionEnabled $false Add-ADFineGrainedPasswordPolicySubject ` -Identity "PSO-Admins" ` -Subjects "Domain Admins", "Server Admins" # Базовая политика для пользователей New-ADFineGrainedPasswordPolicy ` -Name "PSO-Users" ` -Precedence 20 ` -MinPasswordLength 10 ` -PasswordHistoryCount 12 ` -MaxPasswordAge (New-TimeSpan -Days 90) ` -ComplexityEnabled $true ` -LockoutThreshold 5 Add-ADFineGrainedPasswordPolicySubject ` -Identity "PSO-Users" ` -Subjects "Domain Users", הגדרdsacls16,# Делегировать сброс паролей в OU Moscow/Users для группы Helpdesk dsacls "OU=Moscow,OU=Users,DC=company,DC=local" /I:S /G ` "COMPANY\Helpdesk:CA;Reset Password;user" dsacls "OU=Moscow,OU=Users,DC=company,DC=local" /I:S /G ` "COMPANY\Helpdesk:CA;Change Password;user" # Разрешить разблокировку аккаунтов dsacls "OU=Moscow,OU=Users,DC=company,DC=local" /I:S /G ` "COMPANY\Helpdesk:WP;lockoutTime;user"24,# Создать read-only аккаунт для LDAP-привязки New-ADUser ` -Name "svc-ldap-readonly" ` -SamAccountName "svc-ldap-readonly" ` -Path "OU=_ServiceAccounts,DC=company,DC=local" ` -AccountPassword (ConvertTo-SecureString "..." -AsPlainText -Force) ` -Enabled $true ` -PasswordNeverExpires $true ` -CannotChangePassword $true ` -Description "LDAP read-only bind account" Set-ADUser "svc-ldap-readonly" ` -SmartcardLogonRequired $false # + через GPO: User Rights Assignment → Deny log on locally3. - החל את ה-PSO על קבוצות מנהלים באמצעות
# Включить расширенный аудит auditpol /set /subcategory:"User Account Management" /success:enable /failure:enable auditpol /set /subcategory:"Directory Service Changes" /success:enable auditpol /set /subcategory:"Logon" /success:enable /failure:enable # Найти заблокированные аккаунты Search-ADAccount -LockedOut | Select-Object Name, SamAccountName, LockedOut # Найти аккаунты с просроченными паролями Search-ADAccount -PasswordExpired | Select-Object Name, SamAccountName # Аккаунты без активности более 90 дней $cutoff = (Get-Date).AddDays(-90) Get-ADUser -Filter {LastLogonDate -lt $cutoff -and Enabled -eq $true} ` -Properties LastLogonDate | Select-Object Name, SamAccountName, LastLogonDate. - צור PSO למשתמשים עם דרישות חלשות יותר (
MinPasswordLength10,LockoutThreshold5). - החל על קבוצת Domain Users.
- ודא שלמדיניות המנהלים יש Precedence גבוה יותר (מספר נמוך יותר).
# Строгая политика для администраторов
New-ADFineGrainedPasswordPolicy `
-Name "PSO-Admins" `
-Precedence 10 `
-MinPasswordLength 16 `
-PasswordHistoryCount 24 `
-MinPasswordAge (New-TimeSpan -Days 1) `
-MaxPasswordAge (New-TimeSpan -Days 60) `
-ComplexityEnabled $true `
-LockoutThreshold 3 `
-LockoutDuration (New-TimeSpan -Minutes 30) `
-LockoutObservationWindow (New-TimeSpan -Minutes 30) `
-ReversibleEncryptionEnabled $false
Add-ADFineGrainedPasswordPolicySubject `
-Identity "PSO-Admins" `
-Subjects "Domain Admins", "Server Admins"
# Базовая политика для пользователей
New-ADFineGrainedPasswordPolicy `
-Name "PSO-Users" `
-Precedence 20 `
-MinPasswordLength 10 `
-PasswordHistoryCount 12 `
-MaxPasswordAge (New-TimeSpan -Days 90) `
-ComplexityEnabled $true `
-LockoutThreshold 5
Add-ADFineGrainedPasswordPolicySubject `
-Identity "PSO-Users" `
-Subjects "Domain Users" כיצד להאציל הרשאות ללא Domain Admin?
בעיה טיפוסית: מהנדסי תמיכה מקבלים הרשאות Domain Admin "כי הם צריכים לאפס סיסמאות". זה מוגזם ולא מאובטח. AD מאפשר להאציל רק את ההרשאות הנדרשות. אנו משתמשים ב-dsacls — גמיש יותר מאשף האצלת השליטה:
# Делегировать сброс паролей в OU Moscow/Users для группы Helpdesk
dsacls "OU=Moscow,OU=Users,DC=company,DC=local" /I:S /G `
"COMPANY\Helpdesk:CA;Reset Password;user"
dsacls "OU=Moscow,OU=Users,DC=company,DC=local" /I:S /G `
"COMPANY\Helpdesk:CA;Change Password;user"
# Разрешить разблокировку аккаунтов
dsacls "OU=Moscow,OU=Users,DC=company,DC=local" /I:S /G `
"COMPANY\Helpdesk:WP;lockoutTime;user"כך, צוות התמיכה מקבל בדיוק את ההרשאות הנדרשות, ללא גישה לאובייקטים אחרים. גישה זו מאובטחת פי 10 מאשר מתן Domain Admin.
אינטגרציית שירותים באמצעות LDAP/Kerberos
יישומים ארגוניים (GitLab, Jira, VPN) מתחברים ל-AD באמצעות LDAP או Kerberos. לאינטגרציית LDAP, יש צורך בחשבון שירות עם הרשאות מינימליות. אנו יוצרים חשבון קריאה בלבד ומגבילים כניסה אינטראקטיבית באמצעות GPO:
# Создать read-only аккаунт для LDAP-привязки
New-ADUser `
-Name "svc-ldap-readonly" `
-SamAccountName "svc-ldap-readonly" `
-Path "OU=_ServiceAccounts,DC=company,DC=local" `
-AccountPassword (ConvertTo-SecureString "..." -AsPlainText -Force) `
-Enabled $true `
-PasswordNeverExpires $true `
-CannotChangePassword $true `
-Description "LDAP read-only bind account"
Set-ADUser "svc-ldap-readonly" `
-SmartcardLogonRequired $false
# + через GPO: User Rights Assignment → Deny log on locally
ניטור וביקורת של AD
אנו מגדירים ביקורת מתקדמת של כל האירועים הקריטיים. זה עוזר לזהות חריגות וחשבונות לא פעילים. לדוגמה, דוחות שבועיים על חשבונות נעולים וחשבונות לא פעילים במשך 90 יום. מומלץ לבצע ביקורת רבעונית, מכיוון שבמסגרת זמן זו מועסקים עובדים חדשים ועוזבים ותיקים.
# Включить расширенный аудит
auditpol /set /subcategory:"User Account Management" /success:enable /failure:enable
auditpol /set /subcategory:"Directory Service Changes" /success:enable
auditpol /set /subcategory:"Logon" /success:enable /failure:enable
# Найти заблокированные аккаунты
Search-ADAccount -LockedOut | Select-Object Name, SamAccountName, LockedOut
# Найти аккаунты с просроченными паролями
Search-ADAccount -PasswordExpired | Select-Object Name, SamAccountName
# Аккаунты без активности более 90 дней
$cutoff = (Get-Date).AddDays(-90)
Get-ADUser -Filter {LastLogonDate -lt $cutoff -and Enabled -eq $true} `
-Properties LastLogonDate | Select-Object Name, SamAccountName, LastLogonDate מה כלול (תוצרים)
לאחר סיום הפרויקט, תקבלו:
- תרשים מבנה OU עם תיאורים.
- גישה לבקרי דומיין (RDP, WinRM) וחשבונות שירות.
- תיעוד על GPO, PSO, האצלה.
- הוראות לצוות תמיכה ומנהלים.
- אחריות לחודש על תקינות פונקציונליות האימות.
- תמיכה לפי בקשה — התאמות וייעוץ.
הזמינו ביקורת AD לפני פריסה או העברה — אנו נזהה פרצות ונכין תוכנית פעולה. עלות טיפוסית: התקנות קטנות מ-$800, בינוניות מ-$3000, ארגוניות מ-$10000. קבלו ייעוץ ממהנדס AD מוסמך.
השוואת גישות לניהול סיסמאות
| פרמטר | Default Domain Policy | Fine-Grained Password Policy |
|---|---|---|
| גמישות | מדיניות אחת לכולם | מדיניות שונה לכל קבוצה |
| אבטחה | בסיסית (אורך 7-14) | ניתנת להגדרה: עד 16+ תווים |
| ניהול | פשוט | דורש הגדרת PSO |
| יישום | כל הדומיין | OU או קבוצות אבטחה |
לוחות זמנים והערכות עלות
| היקף | תיאור | משך |
|---|---|---|
| קטן | עד 50 משתמשים, דומיין אחד, OUs בסיסיים + GPO | 3-5 ימים |
| בינוני | 50-500 משתמשים, האצלה, PSO מפורט, אינטגרציות | 1-2 שבועות |
| ארגוני | 500+ משתמשים, אתרים/דומיינים מרובים, עמידה ברגולציה | מ-3 שבועות |
העלות מחושבת באופן אישי לאחר ביקורת תשתית. צרו קשר להערכה מוקדמת — אנו ננתח את התצורה הנוכחית שלכם ונציע תוכנית אופטימלית. קבלו ייעוץ ממהנדס מוסמך.
למידע נוסף על Active Directory ב-תיעוד הרשמי של מיקרוסופט.







