কম্পিউটার টিউটোরিয়াল

PowerShell দিয়ে লোকাল ব্যবহারকারী এবং গ্রুপ পরিচালনা

মাইক্রোসফট gần 받지 Windows লোকাল ব্যবহারকারী এবং গ্রুপ পরিচালনার জন্য একটি স্ট্যান্ডার্ড PowerShell মডিউল যুক্ত করেছে যাকে Microsoft.PowerShell.LocalAccounts নামে ডাকা হয়। আগে এই মডিউলটি ম্যানুয়ালি ডাউনলোড এবং ইম্পোর্ট করতে হতো। এখন LocalAccounts মডিউল উইন্ডোজ সার্ভার ২০১৬ এবং উইন্ডোজ ১০-এ ডিফল্টভাবে PowerShell 5.1-এর অংশ হিসেবে উপলব্ধ। পুরানো উইন্ডোজ সংস্করণে এটি ব্যবহার করতে Windows Management Framework 5.1 ইনস্টল করতে হবে।

LocalAccounts PowerShell মডিউল

LocalAccounts মডিউলে ১৫টি cmdlet রয়েছে। মডিউলের সমস্ত cmdlet-এর তালিকা দেখতে নিচের কমান্ডটি চালান:

Get-Command -Module Microsoft.PowerShell.LocalAccounts

PowerShell দিয়ে লোকাল ব্যবহারকারী এবং গ্রুপ পরিচালনা

  1. Add-LocalGroupMember – লোকাল গ্রুপে ব্যবহারকারী যোগ করা;
  2. Disable-LocalUser – লোকাল ব্যবহারকারী অ্যাকাউন্ট নিষ্ক্রিয় করা;
  3. Enable-LocalUser – অ্যাকাউন্ট সক্রিয় করা (আনলক করা);
  4. Get-LocalGroup – লোকাল গ্রুপ সম্পর্কে তথ্য পাওয়া;
  5. Get-LocalGroupMember – লোকাল গ্রুপের ব্যবহারকারীদের তালিকা দেখা;
  6. Get-LocalUser – লোকাল ব্যবহারকারীর তথ্য দেখা;
  7. New-LocalGroup – নতুন লোকাল গ্রুপ তৈরি করা;
  8. New-LocalUser – লোকাল ব্যবহারকারী তৈরি করা;
  9. Remove-LocalGroup – লোকাল গ্রুপ মুছে ফেলা;
  10. Remove-LocalGroupMember – লোকাল গ্রুপ থেকে সদস্য সরানো;
  11. Remove-LocalUser – লোকাল ব্যবহারকারী মুছে ফেলা;
  12. Rename-LocalGroup – লোকাল গ্রুপের নাম পরিবর্তন করা;
  13. Rename-LocalUser – ব্যবহারকারীর নাম পরিবর্তন করা;
  14. Set-LocalGroup – গ্রুপ সেটিংস পরিবর্তন করা;
  15. Set-LocalUser – ব্যবহারকারী সেটিংস পরিবর্তন করা।

চলুন উইন্ডোজ ১০ চালিত কম্পিউটারে LocalAccounts মডিউলের PowerShell cmdlet ব্যবহার করে লোকাল ব্যবহারকারী বা গ্রুপ পরিচালনার কিছু সাধারণ কাজ দেখি।

PowerShell দিয়ে উইন্ডোজ লোকাল ব্যবহারকারী কীভাবে পরিচালনা করবেন?

উইন্ডোজে বিদ্যমান লোকাল ব্যবহারকারীদের তালিকা দেখান:

Get-LocalUser

PowerShell দিয়ে লোকাল ব্যবহারকারী এবং গ্রুপ পরিচালনা

আপনি দেখতে পাচ্ছেন, কম্পিউটারে ৬টি লোকাল ব্যবহারকারী অ্যাকাউন্ট আছে, এবং 그중 ৪টি নিষ্ক্রিয় (Enabled=False)।

একটি লোকাল অ্যাকাউন্টের সব প্রপার্টি দেখাতে (AD ডোমেন ব্যবহারকারীদের তথ্য দেখানোর Get-ADUser cmdlet-এর মতো), নিচের কমান্ডটি চালান:

Get-LocalUser -Name root | Select-Object *

AccountExpires :
Description :
Enabled : True
FullName :
PasswordChangeableDate : 3/12/2019 10:14:29 PM
PasswordExpires :
UserMayChangePassword : True
PasswordRequired : False
PasswordLastSet : 3/11/2019 10:14:29 PM
LastLogon : 3/11/2019 4:18:17 PM
Name : root
SID : S-1-5-21-2605456602-2293283241-3832290805-1001
PrincipalSource : Local
ObjectClass : User

নির্দিষ্ট ব্যবহারকারীর অ্যাট্রিবিউট পেতে, যেমন পাসওয়ার্ড শেষ পরিবর্তনের তারিখ, নিচের কমান্ডটি চালান:

Get-LocalUser -Name root | Select-Object PasswordLastSet

PowerShell দিয়ে লোকাল ব্যবহারকারী এবং গ্রুপ পরিচালনা

New-LocalUser cmdlet ব্যবহার করে নতুন একটি লোকাল ব্যবহারকারী তৈরি করুন। এই cmdlet নিচের টাইপের অ্যাকাউন্ট তৈরি করতে দেয়:

  • উইন্ডোজ লোকাল অ্যাকাউন্ট;
  • মাইক্রোসফট অ্যাকাউন্ট;
  • Azure AD অ্যাকাউন্ট।

New-LocalUser cmdlet-এ ব্যবহারকারী অ্যাকাউন্ট তৈরি করার সময়, পাসওয়ার্ড প্লেইন টেক্সট হিসেবে Password আর্গুমেন্টে 지정 করা যাবে না। আপনাকে পাসওয়ার্ড ইন্টারঅ্যাক্টিভভাবে অনুরোধ করে সিকিউর স্ট্রিং-এ কনভার্ট করতে হবে:

$UserPassword = Read-Host –AsSecureString

অথবা সরাসরি PoSh কনসোলে পাসওয়ার্ড নির্দিষ্ট করুন:

$UserPassword = ConvertTo-SecureString "H1PH0Ppa$$" -AsPlainText -Force
New-LocalUser John -Password $UserPassword -FullName "Johh Lennon" -Description "Local Account for Remote Access"

AD ডোমেনে ব্যবহারকারী তৈরি করতে New-ADUser cmdlet ব্যবহার করুন।

ব্যবহারকারীর পাসওয়ার্ড পরিবর্তন করতে LocalUser cmdlet ব্যবহার করুন (মান ল আপনি ইতিমধ্যে নতুন পাসওয়ার্ড সিকিউর স্ট্রিং-এ কনভার্ট করেছেন বলে ধরে):

Set-LocalUser -Name john -Password $UserPassword –Verbose

PowerShell দিয়ে লোকাল ব্যবহারকারী এবং গ্রুপ পরিচালনা

"Password never expires" ফ্ল্যাগ সেট করতে নিচের কমান্ডটি চালান:

Set-LocalUser -Name john –PasswordNeverExpires $False

আপনি দেখতে পাচ্ছেন, AD ব্যবহারকারী অবজেক্টের প্রপার্টি পরিচালনার সময় UserAccountControl মান কনভার্ট করার প্রয়োজন নেই।

আপনি মনে রাখেন, উইন্ডোজ ১₀-এ আপনার মাইক্রোসফট অ্যাকাউন্ট ব্যবহার করে লগইন করা যায়। যদি আপনাকে মাইক্রোসফট অ্যাকাউন্টে লগইন করার জন্য নতুন ব্যবহারকারী তৈরি করতে হয়, তবে নিচের কমান্ডটি চালান। (দ্রষ্টব্য: আপনাকে অ্যাকাউন্ট পাসওয়ার্ড নির্দিষ্ট করার দরকার নেই কারণ এটি মাইক্রোসফটে সংরক্ষিত থাকে।)

New-LocalUser -Name "MicrosoftAccount\woshub@outlook.com" -Description "This is a Microsoft account"

আপনার Azure AD অ্যাকাউন্ট سے সম্পর্কিত লোকাল অ্যাকাউন্ট তৈরি করতে (উদাহরণস্বরূপ, আপনি Office 365 ব্যবহার করছেন), নিচের কমান্ডটি চালান:

New-LocalUser -Name "AzureAD\admin@woshub.com" -Description " This is an Azure AD account"

লোকাল ব্যবহারকারী মুছে ফেলতে:

Remove-LocalUser -Name john -Verbose

PowerShell দিয়ে উইন্ডোজ লোকাল গ্রুপ কীভাবে পরিচালনা করবেন?

এখন আপনার কম্পিউটারের লোকাল গ্রুপগুলোর তালিকা দেখান:

Get-LocalGroup

PowerShell দিয়ে লোকাল ব্যবহারকারী এবং গ্রুপ পরিচালনা

নতুন গ্রুপ তৈরি করুন:

New-LocalGroup -Name RemoteSupport -Description 'Remote Support Group'

নতুন গ্রুপে কিছু লোকাল অ্যাকাউন্ট এবং লোকাল অ্যাডমিনিস্ট্রেটরদের গ্রুপ যোগ করুন:

Add-LocalGroupMember -Group 'RemoteSupport' -Member ('john','root','Administrators') -Verbose

টিপ। AD ডোমেন গ্রুপ তৈরি, মুছে ফেলা বা 거기에 ব্যবহারকারী যোগ করার পদ্ধতি জানতে "Managing Active Directory Groups Using PowerShell" আর্টিকেলটি দেখুন।

যদি আপনার কম্পিউটার AD ডোমেনে জয়েন করা থাকে, তবে আপনি আপনার লোকাল গ্রুপে ডোমেন অ্যাকাউন্ট এবং গ্রুপ যোগ করতে পারেন। এজন্য নিচের ফরম্যাটে নির্দিষ্ট করুন: DomainName\jonhl বা DomainName\'domain admins'।

PowerShell দিয়ে লোকাল ব্যবহারকারী এবং গ্রুপ পরিচালনা

পাইপলাইন ব্যবহার করে ব্যবহারকারীকে গ্রুপে যোগ করা যাবে (আমরা ব্যবহারকারীকে লোকাল অ্যাডমিনিস্ট্রেটর গ্রুপে যোগ করব):

Get-Localuser -Name john | Add-LocalGroupMember -Group 'Administrators'

একটি লোকাল গ্রুপের ব্যবহারকারীদের তালিকা দেখান:

Get-LocalGroupMember -Group 'RemoteSupport'

আপনি দেখতে পাচ্ছেন, আমরা শুধু লোকাল অ্যাকাউন্ট ব্যবহার করছি (PrincipalSource – Local)। তবে ডোমেন অ্যাকাউন্ট (domain), মাইক্রোসফট অ্যাকাউন্ট (MicrosoftAccount) বা Azure অ্যাকাউন্ট (AzureAD) ও ব্যবহার করা যাবে।

PowerShell দিয়ে লোকাল ব্যবহারকারী এবং গ্রুপ পরিচালনা

একটি নির্দিষ্ট ব্যবহারকারী কোন গ্রুপগুলোর সদস্য তা দেখতে, কম্পিউটারের প্রতিটি লোকাল গ্রুপ চেক করতে হবে:

foreach ($LocalGroup in Get-LocalGroup)
{
if (Get-LocalGroupMember $LocalGroup -Member john –ErrorAction SilentlyContinue)
{
$LocalGroup.Name
}
}

গ্রুপ থেকে ব্যবহারকারী সরাতে নিচের কমান্ডটি চালান:

Remove-LocalGroupMember -Group 'RemoteSupport' –Member john

রিমোট কম্পিউটারে লোকাল ব্যবহারকারী পরিচালনা করতে, WinRM ব্যবহার করে কানেক্ট করুন এবং Invoke-Command বা Enter-PSSession cmdlet ব্যবহার করুন।

উদাহরণস্বরূপ, রিমোট কম্পিউটারগুলোর একটি লোকাল গ্রুপের অ্যাকাউন্টের তালিকা তৈরি করতে:

$winrm_ssn = new-pssession -computer Lon-Srv01,Lon-Srv02,Lon-Srv03
invoke-command -scriptblock {Get-LocalGroupMember -Group 'RemoteSupport'} -session $winrm_ssn -hidecomputername | select * -exclude RunspaceID | out-gridview -title "LocalAdmins"

  1. ফেসটাইম দিয়ে অ্যান্ড্রয়েড ও উইন্ডোজ ইউজারদের সাথে কল করার পদ্ধতি

  2. উইন্ডোজ ১১/১০-এ লোকাল ইউজার এবং গ্রুপ খোলা

  3. উইন্ডোজ পাওয়ারশেল দিয়ে লোকাল ইউজার ও গ্রুপ ম্যানেজ করার পদ্ধতি

  4. ভিজ্যুয়াল স্টুডিও কোড দিয়ে উইন্ডোজ ১০ ও ১১-এ পাওয়ারশেল স্ক্রিপ্ট বিল্ড ও রান করার বिगিনার গাইড