Windows PowerShell मॉड्यूल के लिए सक्रिय निर्देशिका डोमेन को प्रशासित करने, सक्रिय निर्देशिका में वस्तुओं का प्रबंधन करने और एडी कंप्यूटर, उपयोगकर्ताओं, समूहों आदि के बारे में अलग-अलग जानकारी प्राप्त करने के लिए मुख्य उपकरणों में से एक है। किसी भी विंडोज व्यवस्थापक को पता होना चाहिए कि एडी ग्राफिक स्नैप-इन दोनों का उपयोग कैसे करें (आमतौर पर यह एडीयूसी है - सक्रिय निर्देशिका उपयोगकर्ता और कंप्यूटर) और RSAT-AD-PowerShell
के cmdlets दैनिक सक्रिय निर्देशिका प्रशासन कार्यों को करने के लिए मॉड्यूल। इस लेख में हम देखेंगे कि विंडोज पर पॉवरशेल एक्टिव डायरेक्ट्री मॉड्यूल कैसे स्थापित करें, इसकी बुनियादी विशेषताओं और लोकप्रिय cmdlets की खोज करें जो AD के साथ प्रबंधन और बातचीत करने के लिए उपयोगी हैं।
Windows सर्वर पर Powershell सक्रिय निर्देशिका मॉड्यूल स्थापित करना
विंडोज पावरशेल के लिए सक्रिय निर्देशिका पहले से ही विंडोज सर्वर ऑपरेटिंग सिस्टम (विंडोज सर्वर 2008 आर 2 से शुरू) में अंतर्निहित है, लेकिन यह डिफ़ॉल्ट रूप से सक्षम नहीं है।
Windows Server 2016 पर, आप सर्वर प्रबंधक . से PowerShell मॉड्यूल के लिए AD स्थापित कर सकते हैं (भूमिकाएँ और सुविधाएँ जोड़ें -> सुविधाएँ -> दूरस्थ सर्वर व्यवस्थापन उपकरण -> भूमिका व्यवस्थापन उपकरण -> AD DS और AD LDS उपकरण -> Windows PowerShell के लिए सक्रिय निर्देशिका मॉड्यूल )।
आप कमांड का उपयोग करके पावरशेल कंसोल से मॉड्यूल भी स्थापित कर सकते हैं:
Install-WindowsFeature -Name "RSAT-AD-PowerShell" –IncludeAllSubFeature
आप RSAT-AD-PowerShell स्थापित कर सकते हैं न केवल डोमेन नियंत्रकों पर। कोई भी डोमेन सदस्य सर्वर या वर्कस्टेशन भी करेगा। जब आप सक्रिय निर्देशिका डोमेन सेवाएं . परिनियोजित करते हैं तो PowerShell सक्रिय निर्देशिका मॉड्यूल स्वचालित रूप से स्थापित हो जाता है (एडी डीएस) भूमिका (एडी डोमेन नियंत्रक को सर्वर का प्रचार करते समय)।
मॉड्यूल सक्रिय निर्देशिका वेब सेवा . के माध्यम से AD के साथ सहभागिता कर रहा है जो आपके डोमेन नियंत्रक पर स्थापित होना चाहिए (संचार TCP पोर्ट पर किया जाता है 9389 )।
Windows 10 पर PowerShell सक्रिय निर्देशिका मॉड्यूल कैसे स्थापित करें?
आप RSAT-AD-PowerShell स्थापित कर सकते हैं मॉड्यूल न केवल विंडोज सर्वर पर, बल्कि आपके वर्कस्टेशन पर भी। यह मॉड्यूल RSAT . का एक भाग है (रिमोट सर्वर एडमिनिस्ट्रेशन टूल्स) पैकेज आप विंडोज 7, विंडोज 8.1 पर मैन्युअल रूप से डाउनलोड और इंस्टॉल कर सकते हैं। आरएसएटी की स्थापना के बाद, आप कंट्रोल पैनल (कंट्रोल पैनल -> प्रोग्राम्स और फीचर्स -> विंडोज़ सुविधाओं को चालू या बंद करें -> रिमोट सर्वर एडमिनिस्ट्रेशन टूल्स-> रोल एडमिनिस्ट्रेशन टूल्स -> एडी डीएस) से पावरशेल के लिए सक्रिय निर्देशिका मॉड्यूल स्थापित कर सकते हैं। और एडी एलडीएस टूल्स)।
विंडोज 10 बिल्ड 1809 या नए पर RSAT पैकेज को विंडोज इमेज (डिमांड ऑन फीचर के रूप में) में एकीकृत किया गया है, इसलिए आप सक्रिय निर्देशिका मॉड्यूल को स्थापित करने के लिए इस पॉवरशेल कमांड का उपयोग कर सकते हैं:
Add-WindowsCapability –online –Name “Rsat.ActiveDirectory.DS-LDS.Tools~~~~0.0.1.0”
सक्रिय निर्देशिका पावरशेल सीएमडीलेट्स
Windows PowerShell के सक्रिय निर्देशिका मॉड्यूल में AD के साथ सहभागिता करने के लिए बहुत से cmdlets हैं। प्रत्येक नए RSAT संस्करण में पिछले वाले की तुलना में अधिक cmdlets होते हैं। Windows Server 2016 में सक्रिय निर्देशिका के लिए 147 PowerShell cmdlets उपलब्ध हैं।
सक्रिय निर्देशिका मॉड्यूल के cmdlets का उपयोग करने से पहले, आपको इसे अपने PowerShell सत्र (Windows Server 2012 R2/Windows 8.1 और नए मॉड्यूल पर स्वचालित रूप से आयात किया जाता है) में आयात करने की आवश्यकता है।
Import-Module ActiveDirectory
$psSess = New-PSSession -ComputerName DC_or_Comp_with_ADPoSh_installed
Import-Module -PSsession $psSess -Name ActiveDirectory
आप कमांड का उपयोग करके उपलब्ध सक्रिय निर्देशिका cmdlets की पूरी सूची प्रदर्शित कर सकते हैं:
Get-Command –module ActiveDirectory
AD मॉड्यूल में cmdlets की कुल संख्या:
Get-Command –module ActiveDirectory |measure-object|select count
अधिकांश RSAT-AD-PowerShell cmdlets Get-
. से प्रारंभ होते हैं , Set-
या New-
उपसर्ग।
- प्राप्त करें - क्लास cmdlets का उपयोग सक्रिय निर्देशिका से भिन्न जानकारी प्राप्त करने के लिए किया जाता है (Get-ADUser — उपयोगकर्ता गुण, प्राप्त-ADComputer - कंप्यूटर सेटिंग, गेट-एडीग्रुप मेम्बर - समूह सदस्यता, आदि)। उन्हें चलाने के लिए, आपको एक डोमेन व्यवस्थापक होने की आवश्यकता नहीं है। कोई भी डोमेन उपयोगकर्ता AD ऑब्जेक्ट विशेषताओं के मान प्राप्त करने के लिए PowerShell कमांड चला सकता है (गोपनीय लोगों को छोड़कर, जैसे LAPS के साथ उदाहरण में);
- सेट- कक्षा cmdlets का उपयोग सक्रिय निर्देशिका में ऑब्जेक्ट सेटिंग्स को सेट (बदलने) के लिए किया जाता है। उदाहरण के लिए, आप उपयोगकर्ता गुण बदल सकते हैं (सेट-ADUser ), कंप्यूटर सेटिंग्स (सेट-एडीकंप्यूटर ), एक समूह में एक उपयोगकर्ता जोड़ें, आदि। ऐसा करने के लिए, आपके खाते में ऑब्जेक्ट गुणों को संशोधित करने की अनुमति होनी चाहिए (लेख देखें कि सक्रिय निर्देशिका में व्यवस्थापक विशेषाधिकार कैसे सौंपें);
- कमांड जो नया- . से शुरू होते हैं आपको AD ऑब्जेक्ट बनाने की अनुमति देता है (एक उपयोगकर्ता बनाएं — नया-ADUser , एक समूह बनाएं — नया-ADGroup );
- निकालें- cmdlets का उपयोग AD ऑब्जेक्ट को हटाने के लिए किया जाता है।
यहां बताया गया है कि आप किसी भी cmdlet पर कैसे सहायता प्राप्त कर सकते हैं:
get-help Set-ADUser
आप सक्रिय निर्देशिका cmdlets का उपयोग करने के उदाहरण इस प्रकार प्रदर्शित कर सकते हैं:
(get-help New-ADComputer).examples
PowerShell ISE में cmdlet पैरामीटर टाइप करते समय पॉप-अप संकेतों का उपयोग करना सुविधाजनक होता है।
RSAT-AD-PowerShell मॉड्यूल के साथ सक्रिय निर्देशिका व्यवस्थापन
आइए एक व्यवस्थापक के कुछ विशिष्ट कार्यों को देखें जो आप PowerShell cmdlets के लिए सक्रिय निर्देशिका का उपयोग करके कर सकते हैं।
आप WOShub वेबसाइट पर PowerShell cmdlets के लिए AD का उपयोग करने के तरीके के बारे में कुछ उपयोगी उदाहरण पा सकते हैं। विस्तृत निर्देश प्राप्त करने के लिए लिंक का पालन करें।नया-ADUser:AD उपयोगकर्ता बनाना
एक नया AD उपयोगकर्ता बनाने के लिए, आप नए-ADUser . का उपयोग कर सकते हैं सीएमडीलेट। आप निम्न कमांड के साथ एक उपयोगकर्ता बना सकते हैं:
New-ADUser -Name "Mila Beck" -GivenName "Mila" -Surname "Beck" -SamAccountName "mbeck" -UserPrincipalName "[email protected]" -Path "OU=Users,OU=Berlin,OU=DE,DC=woshub,DC=com" -AccountPassword(Read-Host -AsSecureString "Input User Password") -Enabled $true
New-ADUser cmdlet के बारे में विस्तृत जानकारी के लिए (बल्क में उपयोगकर्ता डोमेन खाते बनाने के उदाहरण सहित), यह लेख देखें।
Get-ADComputer:कंप्यूटर गुण प्राप्त करना
विशिष्ट OU (कंप्यूटर का नाम और अंतिम लॉगऑन दिनांक) में कंप्यूटर गुणों के बारे में जानकारी प्रदर्शित करने के लिए, Get-ADComputer cmdlet का उपयोग करें:
Get-ADComputer -SearchBase ‘OU=CA,OU=USA,DC=woshub,DC=com’ -Filter * -Properties * | FT Name, LastLogonDate -Autosize
ऐड-विज्ञापन समूह सदस्य:समूहों में विज्ञापन उपयोगकर्ता जोड़ें
अपने AD डोमेन में किसी मौजूदा सुरक्षा समूह में उपयोगकर्ताओं को जोड़ने के लिए, यह आदेश चलाएँ:
Add-AdGroupMember -Identity LondonSales -Members e.braun, l.wolf
AD समूह में उपयोगकर्ताओं की सूची प्रदर्शित करें और इसे CSV फ़ाइल में निर्यात करें:
Get-ADGroupMember LondonSales -recursive| ft samaccountname| Out-File c:\ps\export_ad_users.csv
PowerShell से AD समूहों को प्रबंधित करने के बारे में अधिक जानें।
सेट-ADAखातापासवर्ड:AD में उपयोगकर्ता पासवर्ड रीसेट करें
PowerShell से AD उपयोगकर्ता पासवर्ड रीसेट करने के लिए, निम्न कमांड चलाएँ:
Set-ADAccountPassword m.lorenz -Reset -NewPassword (ConvertTo-SecureString -AsPlainText “Ne8Pa$$0rd1” -Force -Verbose) –PassThru
विज्ञापन खाते को कैसे अनलॉक, सक्षम और अक्षम करें?
AD उपयोगकर्ता खाते को अक्षम करने के लिए:
Disable-ADAccount m.lorenz
खाता सक्षम करने के लिए:
Enable-ADAccount m.lorenz
डोमेन पासवर्ड नीति द्वारा किसी खाते को ब्लॉक कर दिए जाने के बाद उसे अनलॉक करने के लिए:
Unlock-ADAccount m.lorenz
Search-ADAखाता:निष्क्रिय और अक्षम वस्तुओं को कैसे खोजें?
AD डोमेन में उन सभी कंप्यूटरों को खोजने और अक्षम करने के लिए जिन्होंने 90 दिनों से अधिक समय से लॉग ऑन नहीं किया है, Search-ADAccount cmdlet का उपयोग करें:
$timespan = New-Timespan –Days 90
Search-ADAccount -AccountInactive -ComputersOnly –TimeSpan $timespan | Disable-ADAccount
नई-ADOrganizationalUnit:AD में एक संगठनात्मक इकाई बनाएं
AD में जल्दी से एक विशिष्ट संगठनात्मक इकाई संरचना बनाने के लिए, आप PowerShell स्क्रिप्ट का उपयोग कर सकते हैं। मान लीजिए कि आप राज्यों के नाम के साथ कई OU बनाना चाहते हैं और उनमें विशिष्ट ऑब्जेक्ट कंटेनर बनाना चाहते हैं। ग्राफिकल ADUC स्नैप-इन के माध्यम से मैन्युअल रूप से इस AD संरचना को बनाने में काफी समय लगता है। पावरशेल के लिए एडी मॉड्यूल इसे सेकंड में करने की अनुमति देता है (स्क्रिप्ट लिखने के समय को छोड़कर):
$fqdn = Get-ADDomain
$fulldomain = $fqdn.DNSRoot
$domain = $fulldomain.split(".")
$Dom = $domain[0]
$Ext = $domain[1]
$Sites = ("Nevada","Texas","California","Florida")
$Services = ("Users","Admins","Computers","Servers","Contacts","Service Accounts")
$FirstOU ="USA"
New-ADOrganizationalUnit -Name $FirstOU -Description $FirstOU -Path "DC=$Dom,DC=$EXT" -ProtectedFromAccidentalDeletion $false
foreach ($S in $Sites)
{
New-ADOrganizationalUnit -Name $S -Description "$S" -Path "OU=$FirstOU,DC=$Dom,DC=$EXT" -ProtectedFromAccidentalDeletion $false
foreach ($Serv in $Services)
{
New-ADOrganizationalUnit -Name $Serv -Description "$S $Serv" -Path "OU=$S,OU=$FirstOU,DC=$Dom,DC=$EXT" -ProtectedFromAccidentalDeletion $false
}
}
स्क्रिप्ट चलाने के बाद, सक्रिय निर्देशिका में निम्न OU संरचना दिखाई देती है।
AD कंटेनरों के बीच वस्तुओं को स्थानांतरित करने के लिए, आप Move-ADObject . का उपयोग कर सकते हैं सीएमडीलेट:
$TargetOU = "OU=Sales,OU=Computers,DC=woshub,DC=com"
Get-ADComputer -Filter 'Name -like "SalesPC*"' | Move-ADObject -TargetPath $TargetOU
Get-ADReplicationFailure:AD प्रतिकृति विफलताओं की जाँच करें
Get-ADReplicationFailure cmdlet का उपयोग करके आप AD डोमेन नियंत्रकों के बीच प्रतिकृति की स्थिति की जांच कर सकते हैं:
Get-ADReplicationFailure -Target NY-DC01,NY-DC02
डोमेन में सभी DC के बारे में जानकारी प्राप्त करने के लिए, Get-AdDomainController . का उपयोग करें सीएमडीलेट:
Get-ADDomainController –filter * | select hostname,IPv4Address,IsGlobalCatalog,IsReadOnly,OperatingSystem | format-table –auto
इसलिए, हमने एडी डोमेन को प्रशासित करने के लिए सक्रिय निर्देशिका पावरशेल मॉड्यूल की बुनियादी विशेषताओं पर विचार किया है। मुझे उम्मीद है कि यह आपको मॉड्यूल की अन्य विशेषताओं को और अधिक एक्सप्लोर करने और अधिकांश एडी प्रबंधन कार्यों को स्वचालित करने के लिए प्रोत्साहित करेगा।