Windows PowerShell মডিউলের জন্য সক্রিয় ডিরেক্টরি ডোমেন পরিচালনা, অ্যাক্টিভ ডিরেক্টরিতে অবজেক্টগুলি পরিচালনা এবং AD কম্পিউটার, ব্যবহারকারী, গোষ্ঠী ইত্যাদি সম্পর্কে বিভিন্ন তথ্য পাওয়ার অন্যতম প্রধান সরঞ্জাম। যেকোনো উইন্ডোজ অ্যাডমিনিস্ট্রেটরকে অবশ্যই জানতে হবে কিভাবে AD গ্রাফিক স্ন্যাপ-ইন উভয়ই ব্যবহার করতে হয় (সাধারণত এটি ADUC – সক্রিয় ডিরেক্টরি ব্যবহারকারী এবং কম্পিউটার) এবং RSAT-AD-PowerShell
এর cmdlets দৈনিক সক্রিয় ডিরেক্টরি প্রশাসনিক কার্য সম্পাদনের জন্য মডিউল। এই নিবন্ধে আমরা কিভাবে Windows এ PowerShell অ্যাক্টিভ ডিরেক্টরি মডিউল ইনস্টল করতে হয় তা দেখব, এর মৌলিক বৈশিষ্ট্যগুলি এবং জনপ্রিয় cmdletগুলি আবিষ্কার করব যা AD পরিচালনা এবং ইন্টারঅ্যাক্ট করতে উপযোগী।
উইন্ডোজ সার্ভারে পাওয়ারশেল অ্যাক্টিভ ডিরেক্টরি মডিউল ইনস্টল করা হচ্ছে
Windows PowerShell-এর জন্য অ্যাক্টিভ ডিরেক্টরিটি ইতিমধ্যেই Windows সার্ভার অপারেটিং সিস্টেমে অন্তর্নির্মিত (Windows Server 2008 R2 থেকে শুরু), কিন্তু এটি ডিফল্টরূপে সক্ষম নয়৷
Windows Server 2016 এ, আপনি সার্ভার ম্যানেজার থেকে PowerShell মডিউলের জন্য AD ইনস্টল করতে পারেন (ভুমিকা এবং বৈশিষ্ট্য যোগ করুন -> বৈশিষ্ট্য -> দূরবর্তী সার্ভার প্রশাসন সরঞ্জাম -> ভূমিকা প্রশাসন সরঞ্জাম -> AD DS এবং AD LDS সরঞ্জামগুলি -> Windows PowerShell-এর জন্য সক্রিয় ডিরেক্টরি মডিউল )।
আপনি কমান্ডটি ব্যবহার করে PowerShell কনসোল থেকে মডিউলটি ইনস্টল করতে পারেন:
Install-WindowsFeature -Name "RSAT-AD-PowerShell" –IncludeAllSubFeature
আপনি RSAT-AD-PowerShell ইনস্টল করতে পারেন শুধু ডোমেইন কন্ট্রোলারে নয়। যেকোন ডোমেইন মেম্বার সার্ভার বা এমনকি একটি ওয়ার্কস্টেশনও করবে। পাওয়ারশেল অ্যাক্টিভ ডিরেক্টরি মডিউলটি স্বয়ংক্রিয়ভাবে ইনস্টল হয়ে যায় যখন আপনি অ্যাক্টিভ ডিরেক্টরি ডোমেন পরিষেবাগুলি স্থাপন করেন (AD DS) ভূমিকা (যখন সার্ভারকে AD ডোমেন কন্ট্রোলারে উন্নীত করা হয়)।
মডিউলটি Active Directory Web Service এর মাধ্যমে AD এর সাথে ইন্টারঅ্যাক্ট করছে যেটি আপনার ডোমেন কন্ট্রোলারে ইনস্টল করা আবশ্যক (টিসিপি পোর্টের মাধ্যমে যোগাযোগ করা হয় 9389 )।
Windows 10 এ PowerShell অ্যাক্টিভ ডিরেক্টরি মডিউল কিভাবে ইনস্টল করবেন?
আপনি RSAT-AD-PowerShell ইনস্টল করতে পারেন মডিউল শুধুমাত্র উইন্ডোজ সার্ভারে নয়, আপনার ওয়ার্কস্টেশনেও। এই মডিউলটি RSAT-এর একটি অংশ (রিমোট সার্ভার অ্যাডমিনিস্ট্রেশন টুলস) প্যাকেজ আপনি উইন্ডোজ 7, উইন্ডোজ 8.1 এ ম্যানুয়ালি ডাউনলোড এবং ইনস্টল করতে পারেন। RSAT ইনস্টল করার পরে, আপনি কন্ট্রোল প্যানেল থেকে PowerShell-এর জন্য সক্রিয় ডিরেক্টরি মডিউল ইনস্টল করতে পারেন (কন্ট্রোল প্যানেল -> প্রোগ্রাম এবং বৈশিষ্ট্য -> উইন্ডোজ বৈশিষ্ট্যগুলি চালু বা বন্ধ করুন -> রিমোট সার্ভার অ্যাডমিনিস্ট্রেশন টুলস-> রোল অ্যাডমিনিস্ট্রেশন টুলস -> AD DS এবং AD LDS টুলস)।
Windows 10 বিল্ড 1809 বা তার পরবর্তীতে RSAT প্যাকেজটি Windows ইমেজে (ফিচার অন ডিমান্ড হিসাবে) একত্রিত করা হয়েছে, তাই আপনি সক্রিয় ডিরেক্টরি মডিউলটি ইনস্টল করতে এই PowerShell কমান্ডটি ব্যবহার করতে পারেন:
Add-WindowsCapability –online –Name “Rsat.ActiveDirectory.DS-LDS.Tools~~~~0.0.1.0”
Active Directory PowerShell Cmdlets
Windows PowerShell-এর জন্য অ্যাক্টিভ ডিরেক্টরি মডিউলে AD-এর সাথে ইন্টারঅ্যাক্ট করার জন্য প্রচুর cmdlet আছে। প্রতিটি নতুন RSAT সংস্করণে আগেরটির চেয়ে বেশি cmdlets রয়েছে৷ Windows Server 2016-এ সক্রিয় ডিরেক্টরির জন্য 147টি PowerShell cmdlet পাওয়া যায়৷
অ্যাক্টিভ ডিরেক্টরি মডিউলের 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 মডিউলে cmdlet এর মোট সংখ্যা:
Get-Command –module ActiveDirectory |measure-object|select count
বেশিরভাগ RSAT-AD-PowerShell cmdlets শুরু হয় Get-
থেকে , Set-
অথবা New-
উপসর্গ।
- পান – ক্লাস cmdlets সক্রিয় ডিরেক্টরি থেকে বিভিন্ন তথ্য পেতে ব্যবহার করা হয় (Get-ADUser — ব্যবহারকারীর বৈশিষ্ট্য, Get-ADComputer – কম্পিউটার সেটিংস, Get-ADGroupMember - গ্রুপ সদস্যপদ, ইত্যাদি)। এগুলি চালানোর জন্য, আপনাকে ডোমেন অ্যাডমিন হতে হবে না। যেকোন ডোমেন ব্যবহারকারী AD অবজেক্ট অ্যাট্রিবিউটের মান পেতে পাওয়ারশেল কমান্ড চালাতে পারে (গোপনীয়গুলি ব্যতীত, যেমন LAPS-এর উদাহরণে);
- সেট- ক্লাস cmdlets অ্যাক্টিভ ডিরেক্টরিতে অবজেক্ট সেটিংস সেট (পরিবর্তন) করতে ব্যবহৃত হয়। উদাহরণস্বরূপ, আপনি ব্যবহারকারীর বৈশিষ্ট্য পরিবর্তন করতে পারেন (Set-ADUser ), কম্পিউটার সেটিংস (Set-ADComputer ), একটি গোষ্ঠীতে একজন ব্যবহারকারীকে যোগ করুন, ইত্যাদি। এটি করার জন্য, আপনার অ্যাকাউন্টে অবজেক্টের বৈশিষ্ট্যগুলি সংশোধন করার অনুমতি থাকতে হবে (অ্যাক্টিভ ডিরেক্টরিতে প্রশাসকের বিশেষাধিকার কীভাবে অর্পণ করা যায় নিবন্ধটি দেখুন);
- কমান্ড যা নতুন- দিয়ে শুরু হয় আপনাকে AD বস্তু তৈরি করার অনুমতি দেয় (একজন ব্যবহারকারী তৈরি করুন — New-ADUser , একটি গ্রুপ তৈরি করুন — New-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 ব্যবহারকারী তৈরি করতে, আপনি New-ADUser ব্যবহার করতে পারেন৷ cmdlet। আপনি নিম্নলিখিত কমান্ড দিয়ে একজন ব্যবহারকারী তৈরি করতে পারেন:
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-ADCcomputer:কম্পিউটার প্রপার্টি পাওয়া
নির্দিষ্ট OU (কম্পিউটার নাম এবং শেষ লগঅন তারিখ) কম্পিউটারের বৈশিষ্ট্য সম্পর্কে তথ্য প্রদর্শন করতে, Get-ADComputer cmdlet ব্যবহার করুন:
Get-ADComputer -SearchBase ‘OU=CA,OU=USA,DC=woshub,DC=com’ -Filter * -Properties * | FT Name, LastLogonDate -Autosize
Add-AdGroupMember:গ্রুপে AD ব্যবহারকারী যোগ করুন
আপনার 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 গ্রুপ পরিচালনা সম্পর্কে আরও জানুন।
সেট-ADAccountPassword:AD এ একটি ব্যবহারকারীর পাসওয়ার্ড রিসেট করুন
PowerShell থেকে একটি AD ব্যবহারকারীর পাসওয়ার্ড পুনরায় সেট করার জন্য, নিম্নলিখিত কমান্ডটি চালান:
Set-ADAccountPassword m.lorenz -Reset -NewPassword (ConvertTo-SecureString -AsPlainText “Ne8Pa$$0rd1” -Force -Verbose) –PassThru
কিভাবে AD অ্যাকাউন্ট আনলক, সক্ষম এবং নিষ্ক্রিয় করবেন?
AD ব্যবহারকারী অ্যাকাউন্ট নিষ্ক্রিয় করতে:
Disable-ADAccount m.lorenz
একটি অ্যাকাউন্ট সক্রিয় করতে:
Enable-ADAccount m.lorenz
একটি ডোমেন পাসওয়ার্ড নীতি দ্বারা ব্লক করার পরে একটি অ্যাকাউন্ট আনলক করতে:
Unlock-ADAccount m.lorenz
অনুসন্ধান-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 কাঠামো তৈরি করা বেশ সময়সাপেক্ষ। PowerShell-এর জন্য 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 ব্যবহার করতে পারেন৷ cmdlet:
$TargetOU = "OU=Sales,OU=Computers,DC=woshub,DC=com"
Get-ADComputer -Filter 'Name -like "SalesPC*"' | Move-ADObject -TargetPath $TargetOU
গেট-এডির প্রতিলিপি ব্যর্থতা:এডি প্রতিলিপি ব্যর্থতা পরীক্ষা করুন
Get-ADReplicationFailure cmdlet ব্যবহার করে আপনি AD ডোমেন কন্ট্রোলারের মধ্যে প্রতিলিপির অবস্থা পরীক্ষা করতে পারেন:
Get-ADReplicationFailure -Target NY-DC01,NY-DC02
ডোমেনের সমস্ত DC সম্পর্কে তথ্য পেতে, Get-AdDomainController ব্যবহার করুন cmdlet:
Get-ADDomainController –filter * | select hostname,IPv4Address,IsGlobalCatalog,IsReadOnly,OperatingSystem | format-table –auto
সুতরাং, আমরা AD ডোমেন পরিচালনার জন্য অ্যাক্টিভ ডিরেক্টরি পাওয়ারশেল মডিউলের মৌলিক বৈশিষ্ট্য বিবেচনা করেছি। আমি আশা করি এটি আপনাকে মডিউলের অন্যান্য বৈশিষ্ট্যগুলি আরও অন্বেষণ করতে এবং AD পরিচালনার বেশিরভাগ কাজ স্বয়ংক্রিয় করতে উত্সাহিত করবে৷