راه اندازی Active Directory روی Windows Server 2025
نصب AD DS روی Windows Server 2025 از اولین domain controller تا DC دوم؛ نام دامنه، DNS، همگام سازی زمان، OU و کاربر، Group Policy، LAPS و بکاپ system state.
در این صفحه
- طراحی پیش از نصب
- نام دامنه
- یک domain و دست کم دو DC
- سطح عملکرد (functional level)
- پیش نیازهای سرور
- نصب نقش AD DS
- ساخت forest و اولین domain controller
- بررسی سلامت بعد از نصب
- تنظیم DNS
- اضافه کردن domain controller دوم
- نقشهای FSMO
- همگام سازی زمان
- ساختار OU، کاربر و گروه
- عضو کردن کلاینت به دامنه
- Group Policy پایه
- امنیت پایهی دامنه
- بکاپ domain controller
- چرا snapshot جای بکاپ را نمیگیرد
- مشکلات رایج
برای راه اندازی Active Directory روی Windows Server 2025 نقش AD DS را نصب میکنید، سرور را با Install-ADDSForest به اولین domain controller (DC) یک forest جدید تبدیل میکنید و بلافاصله یک DC دوم کنارش میگذارید. نتیجهی این راهنما دامنهی corp.example.com با دو DC، DNS یکپارچه با AD، زمان هماهنگ، ساختار OU، سیاست رمز عبور، LAPS و بکاپ روزانهی system state است. نام دامنه و IP سرورها را پیش از نصب قطعی کنید؛ تغییر بعدی آنها سنگین است.
طراحی پیش از نصب
نام دامنه
نام اولین دامنه نام کل forest هم هست. مایکروسافت توصیه میکند یک پیشوند تازه (مثل corp) به دامنهی ثبت شدهی سازمان اضافه کنید.
| نام | وضعیت | دلیل |
|---|---|---|
corp.example.com |
پیشنهادی | زیردامنهی یک دامنهی ثبت شده؛ یکتا است و با DNS عمومی تداخل ندارد |
example.com |
پردردسر | همان نام سایت عمومی است؛ DNS داخلی باید رکوردهای سایت را هم نگه دارد |
corp.local |
توصیه نمیشود | مایکروسافت پسوندهای ثبت نشده مثل .local را توصیه نمیکند؛ .local در RFC 6762 برای mDNS رزرو شده است |
corp |
استفاده نکنید | نام تک بخشی (single-label) پشتیبانی درستی ندارد |
اگر پیشوند ۱۵ نویسه یا کمتر باشد، همان پیشوند نام NetBIOS دامنه میشود (CORP).
یک domain و دست کم دو DC
برای بیشتر سازمانها یک forest با یک domain کافی است؛ شعبهها را با site مدل کنید، نه با دامنهی جدا. با یک DC تنها، خرابی همان سرور ورود کاربران، DNS و Group Policy را از کار میاندازد. مایکروسافت دست کم دو DC در هر دامنه، روی دو host مجازی سازی جدا، را توصیه میکند.
سطح عملکرد (functional level)
| سطح | DCهای مجاز | نکته |
|---|---|---|
| Windows Server 2025 | فقط Windows Server 2025 | پیش نیاز قابلیت پایگاه دادهی 32k |
| Windows Server 2016 | Windows Server 2016 تا 2025 | اگر DC قدیمیتر هم در forest خواهید داشت |
forest جدید در Windows Server 2025 باید دست کم سطح Windows Server 2016 داشته باشد. اگر همهی DCها 2025 هستند، سطح 2025 را انتخاب کنید.
قابلیت اختیاری پایگاه دادهی 32k
forest جدید در Windows Server 2025 با پایگاه دادهای ساخته میشود که صفحهی 32k را پشتیبانی میکند، ولی در حالت 8k کار میکند. قابلیت Database 32k pages feature محدودیتهای قدیمی را کم میکند؛ مثلاً attribute چندمقداری تا حدود 3200 مقدار میگیرد. شرطها: همهی DCها 2025 و سطح دامنه و forest برابر 2025. فعال کردنش در کل forest اعمال میشود و برگشت پذیر نیست؛ بکاپهای 8k قبلی جز با بازیابی کامل forest بیاستفاده میشوند. بیشتر سازمانها به آن نیاز ندارند.
پیش نیازهای سرور
- IP ثابت: به DC آدرس DHCP ندهید. زیرشبکهی سرورها را از قبل طراحی کنید (آموزش subnetting).
- نام نهایی سرور: نام را پیش از نصب AD DS بگذارید؛ تغییر نام DC بعداً دردسر دارد.
- به روزرسانی و ساعت: آخرین به روزرسانیها را نصب و منطقهی زمانی و ساعت را تنظیم کنید.
- دیسک: پایگاه داده، لاگ و SYSVOL را روی ReFS نگذارید. در ماشین مجازی، مایکروسافت یک دیسک مجازی جدا روی کنترلر SCSI برای این فایلها توصیه میکند.
New-NetIPAddress -InterfaceAlias "Ethernet" -IPAddress 10.10.10.11 -PrefixLength 24 -DefaultGateway 10.10.10.1
Set-DnsClientServerAddress -InterfaceAlias "Ethernet" -ServerAddresses 10.10.10.11
Rename-Computer -NewName "DC01" -Restartنصب نقش AD DS
Server Manager: در Manage → Add Roles and Features نقش Active Directory Domain Services را انتخاب و نصب کنید، سپس در صفحهی آخر Promote this server to a domain controller را بزنید.
PowerShell:
Install-WindowsFeature -Name AD-Domain-Services -IncludeManagementToolsبدون -IncludeManagementTools ابزارهایی مثل Active Directory Users and Computers و dcdiag نصب نمیشوند. این مرحله ریبوت نمیخواهد.
ساخت forest و اولین domain controller
در ویزارد، Add a new forest را انتخاب و corp.example.com را وارد کنید. در صفحهی Domain Controller Options سطح عملکرد را بگذارید، DNS server را تیک بزنید و رمز DSRM را وارد کنید. دکمهی View script در صفحهی Review Options دستور PowerShell معادل را نشان میدهد.
معادل PowerShell:
Install-ADDSForest `
-DomainName "corp.example.com" `
-DomainNetbiosName "CORP" `
-DomainMode Win2025 `
-ForestMode Win2025 `
-InstallDns `
-DatabasePath "D:\NTDS" -LogPath "D:\NTDS" -SysvolPath "D:\SYSVOL"دستور رمز DSRM را دو بار میپرسد و در پایان سرور را ریبوت میکند. Test-ADDSForestInstallation با همین پارامترها فقط پیش نیازها را میسنجد. اگر DC قدیمیتر از 2025 خواهید داشت، به جای Win2025 مقدار WinThreshold (سطح 2016) را بدهید. بعد از نصب، DNS کارت شبکهی اولین DC خودکار روی 127.0.0.1 تنظیم میشود.
بررسی سلامت بعد از نصب
dcdiag /q
repadmin /replsummary
Get-ADDomain | Select-Object DNSRoot, NetBIOSName, DomainMode, PDCEmulator
Resolve-DnsName -Type SRV _ldap._tcp.dc._msdcs.corp.example.comdcdiag /q فقط خطاها را نشان میدهد؛ خروجی خالی یعنی مشکلی نیست. رکورد SRV، که کلاینتها DC را با آن پیدا میکنند، باید DC01.corp.example.com را برگرداند. در خروجی repadmin بعد از اضافه شدن DC دوم، ستون fails باید صفر باشد.
تنظیم DNS
- Forwarder: برای نامهای اینترنتی، DNS سرور بالادست را forwarder کنید:
Add-DnsServerForwarder -IPAddress 192.0.2.53 - Reverse zone:
Add-DnsServerPrimaryZone -NetworkId "10.10.10.0/24" -ReplicationScope Forest - کلاینتها و سرورهای عضو: فقط IP خود DCها را به عنوان DNS بگیرند (گزینهی 6 در DHCP). DNS عمومی را DNS دوم نگذارید؛ کلاینت گاهی سراغ آن میرود و DC را پیدا نمیکند.
اضافه کردن domain controller دوم
روی سرور دوم (Windows Server 2025، IP ثابت 10.10.10.12، DNS روی 10.10.10.11):
Install-WindowsFeature -Name AD-Domain-Services -IncludeManagementTools
Install-ADDSDomainController -DomainName "corp.example.com" -InstallDns -Credential (Get-Credential "CORP\Administrator")بعد از ریبوت، repadmin /replsummary و repadmin /showrepl را روی هر دو DC اجرا کنید. تا وقتی replication در دو جهت سالم نیست، DC جدید را به DNS خودش ارجاع ندهید. بعد از آن، روی هر DC، DNS اول را IP آن یکی DC و DNS دوم را 127.0.0.1 بگذارید. اگر DCها مجازیاند، آنها را روی دو host جدا اجرا کنید (مقایسهی VMware، Proxmox و Hyper-V).
نقشهای FSMO
پنج کار در AD فقط روی یک DC انجام میشود:
| نقش | دامنهی اثر | کار |
|---|---|---|
| Schema Master | forest | تغییر schema |
| Domain Naming Master | forest | اضافه و حذف دامنه |
| RID Master | domain | تخصیص بازهی RID برای ساخت اشیا |
| PDC Emulator | domain | منبع زمان، تغییر رمز و قفل حساب |
| Infrastructure Master | domain | به روز نگه داشتن ارجاعهای بین دامنهای |
netdom query fsmo
Move-ADDirectoryServerOperationMasterRole -Identity "DC02" -OperationMasterRole PDCEmulator,RIDMaster,InfrastructureMasterدر دامنهی کوچک همهی نقشها روی DC01 بمانند و پیش از خاموشی طولانی آن منتقل شوند. گرفتن اجباری نقش (seize، با -Force) فقط وقتی مجاز است که DC دارندهی نقش برای همیشه از دست رفته باشد.
همگام سازی زمان
Kerberos به طور پیش فرض حداکثر ۵ دقیقه اختلاف ساعت را میپذیرد. در سلسله مراتب پیش فرض، کلاینتها زمان را از DC میگیرند، DCها از PDC Emulator و PDC Emulator دامنهی ریشه باید به یک منبع بیرونی وصل شود. فقط روی همین سرور:
w32tm /config /manualpeerlist:"ntp1.example.com,0x8 ntp2.example.com,0x8 ntp3.example.com,0x8" /syncfromflags:manual /reliable:yes /update
Restart-Service w32time
w32tm /resync
w32tm /query /statusمایکروسافت سه منبع یا بیشتر را پیشنهاد میکند. همگام سازی با NTP اینترنتی (UDP 123) احراز هویت ندارد؛ اگر منبع زمان داخلی دارید، از آن استفاده کنید. اگر نقش PDC را منتقل کردید، همین دستور را روی DC جدید اجرا کنید و DC قبلی را با w32tm /config /syncfromflags:domhier /reliable:no /update برگردانید. در Hyper-V، گزینهی Time synchronization در Integration Services ماشین DC را خاموش کنید.
ساختار OU، کاربر و گروه
GPO را نمیتوان به containerهای پیش فرض Users و Computers لینک کرد. یک ساختار OU ساده بسازید:
corp.example.com
├── Corp
│ ├── Users
│ ├── Computers
│ ├── Servers
│ └── Groups
└── Admin
├── Accounts
└── Groups$base = "DC=corp,DC=example,DC=com"
New-ADOrganizationalUnit -Name "Corp" -Path $base
"Users","Computers","Servers","Groups" | ForEach-Object {
New-ADOrganizationalUnit -Name $_ -Path "OU=Corp,$base"
}
New-ADGroup -Name "GG-Finance" -GroupScope Global -GroupCategory Security -Path "OU=Groups,OU=Corp,$base"
New-ADUser -Name "Sara Ahmadi" -GivenName "Sara" -Surname "Ahmadi" `
-SamAccountName "s.ahmadi" -UserPrincipalName "s.ahmadi@corp.example.com" `
-Path "OU=Users,OU=Corp,$base" `
-AccountPassword (Read-Host -AsSecureString "Initial password") `
-ChangePasswordAtLogon $true -Enabled $true
Add-ADGroupMember -Identity "GG-Finance" -Members "s.ahmadi"
redircmp "OU=Computers,OU=Corp,$base"دسترسی را به گروه بدهید، نه به تک تک کاربران. redircmp کامپیوترهای تازه عضو شده را به جای container پیش فرض در OU مشخص شده میگذارد.
عضو کردن کلاینت به دامنه
DNS کلاینت باید روی DCها باشد. اول بررسی کنید کلاینت DC را پیدا میکند، بعد عضوش کنید:
nltest /dsgetdc:corp.example.com
Add-Computer -DomainName "corp.example.com" -OUPath "OU=Computers,OU=Corp,DC=corp,DC=example,DC=com" -Credential "CORP\adm.sahmadi" -RestartGroup Policy پایه
- سیاست رمز دامنه فقط از GPO لینک شده به ریشهی دامنه (Default Domain Policy) اعمال میشود، در مسیر Computer Configuration → Policies → Windows Settings → Security Settings → Account Policies. پیش فرض حداقل طول رمز هفت نویسه است؛ آن را به ۱۴، بیشترین مقدار معمول این تنظیم، برسانید و Account Lockout Policy را هم تنظیم کنید.
- سیاست جدا برای گروههای خاص با Fine-Grained Password Policy:
New-ADFineGrainedPasswordPolicy -Name "PSO-Admins" -Precedence 10 -MinPasswordLength 16 -ComplexityEnabled $true -PasswordHistoryCount 24 -LockoutThreshold 5 -LockoutDuration "0.00:30:00" -LockoutObservationWindow "0.00:30:00"
Add-ADFineGrainedPasswordPolicySubject -Identity "PSO-Admins" -Subjects "GG-Tier0-Admins"- قفل صفحه: یک GPO بسازید و به OU کامپیوترها لینک کنید، سپس در Local Policies → Security Options مقدار Interactive logon: Machine inactivity limit را مثلاً 900 ثانیه بگذارید:
New-GPO -Name "Workstation Baseline" | New-GPLink -Target "OU=Computers,OU=Corp,DC=corp,DC=example,DC=com"روی کلاینت، gpupdate /force سیاست را فوری اعمال و gpresult /r GPOهای اعمال شده را نشان میدهد.
امنیت پایهی دامنه
- حساب مدیر جدا: هر مدیر یک حساب روزمرهی بدون دسترسی ویژه و یک حساب مدیریتی جدا (مثل
adm.sahmadi) دارد. با عضو Domain Admins فقط روی DCها و سیستمهای مدیریتی وارد شوید، نه روی کامپیوتر کاربران. - لایه بندی (tiering): DCها و هر چیزی که آنها را کنترل میکند، مثل host مجازی سازی و سیستم بکاپ آنها، در بالاترین سطح حساسیتاند. به گفتهی مایکروسافت، دسترسی مدیر روی host میزبان DC همارز Domain Admin است. مدل فعلی مایکروسافت (enterprise access model) جایگزین مدل tier قدیمی شده، ولی همین اصل را دارد.
- گروه Protected Users: اعضا نمیتوانند با NTLM احراز هویت کنند، delegation ندارند، رمزشان روی دستگاه cache نمیشود و TGT آنها ۴ ساعت اعتبار دارد. حسابهای مدیر را بعد از تست اضافه کنید؛ حساب سرویس و کامپیوتر را هرگز.
- Windows LAPS: رمز Administrator محلی هر کامپیوتر را یکتا میکند، دورهای عوض میکند و در AD نگه میدارد. در Windows Server 2025 داخلی است و به Windows Server 2019 و 2022 با به روزرسانی ۱۱ آوریل ۲۰۲۳ اضافه شد. رمز DSRM خود DCها را هم مدیریت میکند:
Update-LapsADSchema
Set-LapsADComputerSelfPermission -Identity "OU=Computers,OU=Corp,DC=corp,DC=example,DC=com"
Get-LapsADPassword -Identity "PC01" -AsPlainTextسیاستها در Computer Configuration → Policies → Administrative Templates → System → LAPS هستند؛ حداقل Configure password backup directory را روی Active Directory بگذارید.
- پروتکلهای قدیمی: SMBv1 از Windows Server 2019 به بعد پیش فرض نصب نیست (
Get-WindowsOptionalFeature -Online -FeatureName SMB1Protocolباید Disabled بدهد) و NTLMv1 در Windows Server 2025 حذف شده است. در Windows Server 2025 دامنهی جدید LDAP signing را اجباری میکند، امضای SMB خروجی اجباری است و KDC دیگر TGT با RC4 صادر نمیکند. اگر پرینتر، NAS یا نرم افزار قدیمی به همین دلیل وصل نشد، دستگاه را به روز کنید، نه این که امنیت DC را پایین بیاورید.
بکاپ domain controller
بکاپ پشتیبانی شدهی AD، بکاپ system state با ابزار سازگار با AD مثل Windows Server Backup است:
Install-WindowsFeature -Name Windows-Server-Backup
wbadmin start systemstatebackup -backuptarget:E: -quietاز دست کم دو DC روزانه بکاپ بگیرید و یک نسخه را بیرون از همان سرور و همان سایت نگه دارید (قاعدهی بکاپ ۳-۲-۱). عمر مفید بکاپ AD برابر tombstone lifetime است که در forestهای جدید ۱۸۰ روز است؛ بکاپ قدیمیتر از آن را نمیتوان روی یک دامنهی زنده بازگرداند. بازیابی با بوت در حالت DSRM انجام میشود؛ یک بار آن را در محیط تست تمرین کنید.
چرا snapshot جای بکاپ را نمیگیرد
از Windows Server 2012 به بعد، DC مجازی روی hypervisorی که VM-GenerationID را پشتیبانی میکند (مثل Hyper-V) برگشت به snapshot را تشخیص میدهد: شناسهی پایگاه داده (invocationID) را عوض میکند، بازهی RID فعلی را دور میریزد و SYSVOL را به صورت non-authoritative از DCهای دیگر همگام میکند. این سازوکار فقط جلوی USN rollback و خراب شدن replication را میگیرد؛ تغییرات replicate نشدهی آن DC بعد از snapshot برای همیشه از دست میرود. مایکروسافت snapshot را جایگزین بکاپ نمیداند و برای DC مجازی میگوید snapshot نگیرید و دیسک مجازی را کپی یا clone نکنید.
مشکلات رایج
- خطای «domain controller could not be contacted» هنگام عضویت: تقریباً همیشه DNS است. DNS کلاینت را فقط روی DCها بگذارید و
nltest /dsgetdc:corp.example.comرا دوباره اجرا کنید. - خطای Kerberos هنگام ورود: اختلاف ساعت بیش از ۵ دقیقه است. با
w32tm /query /sourceمنبع زمان کلاینت، DC و PDC را ببینید. - خطای replication: DNS هر DC، ارتباط شبکه بین DCها و زمان را بررسی کنید؛ جزئیات در
repadmin /showreplاست. - GPO اعمال نمیشود: شیء احتمالاً در container پیش فرض
ComputersیاUsersمانده؛ آن را به OU منتقل کنید.
منابع
- Microsoft Learn — Install Active Directory Domain Services on Windows Server learn.microsoft.com
- Microsoft Learn — Install-ADDSForest (ADDSDeployment) learn.microsoft.com
- Microsoft Learn — What's new in Windows Server 2025 learn.microsoft.com
- Microsoft Learn — Active Directory Domain Services Functional Levels learn.microsoft.com
- Microsoft Learn — Enable Database 32k pages optional feature learn.microsoft.com
- Microsoft Learn — Selecting the Forest Root Domain learn.microsoft.com
- Microsoft Learn — Recommendations for DNS client settings learn.microsoft.com
- Microsoft Learn — Windows Time Service Tools and Settings learn.microsoft.com
- Microsoft Learn — Maximum tolerance for computer clock synchronization learn.microsoft.com
- Microsoft Learn — Minimum password length learn.microsoft.com
- Microsoft Learn — Windows LAPS overview learn.microsoft.com
- Microsoft Learn — Get started with Windows LAPS and Windows Server Active Directory learn.microsoft.com
- Microsoft Learn — Protected Users Security Group learn.microsoft.com
- Microsoft Learn — Safely virtualizing Active Directory Domain Services learn.microsoft.com
- Microsoft Learn — Virtualizing domain controllers with Hyper-V learn.microsoft.com
- Microsoft Learn — AD Forest Recovery, Backing up the System State data learn.microsoft.com
- Microsoft Learn — Features removed or no longer developed in Windows Server learn.microsoft.com