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

উইন্ডোজ সার্ভার کور কনফিগার ও ম্যানেজ করার বেসিক কমান্ড

এই আর্টিকেলে, আমি উইন্ডোজ সার্ভার کور কনফিগার ও ম্যানেজ করার জন্য ব্যবহৃত বেসিক cmd এবং পাওয়ারশেল কমান্ডগুলো বর্ণনা করার চেষ্টা করেছি। আমি মনে করি এই গাইড नौসিখিয়ে এবং অভিজ্ঞ সিস্টেম অ্যাডমিনিস্ট্রেটর উভয়ের জন্য রেফারেন্স হিসেবে উপযোগী হবে।

Server Core উইন্ডোজ সার্ভার ইনস্টলেশন মোডের একটি বিশেষ রূপ যেখানে অধিকাংশ গ্রাফিক্যাল টুল এবং স্ন্যাপ-ইন নেই। আপনি Server Core-কে কমান্ড প্রম্পট বা রিমোটলি (Windows Admin Center বা অন্যান্য টুল ব্যবহার করে) ম্যানেজ করতে পারেন।

Windows Server Core-এর সুবিধা:

  • কম রিসোর্স প্রয়োজন;
  • উন্নত স্থিতিশীলতা এবং সিকিউরিটি; কম আপডেট প্রয়োজন (কোড এবং ব্যবহৃত কম্পোনেন্ট কম হওয়ায়);
  • ইনফ্রাস্ট্রাকচার রোল সার্ভার হিসেবে ব্যবহারের জন্য আদর্শ (অ্যাক্টিভ ডিরেক্টরি ডোমেন কন্ট্রোলার, DHCP সার্ভার, Hyper-V হোস্ট, SMB ফাইল সার্ভার, ইত্যাদি)।

Server Core সাধারণ ফিজিক্যাল বা ভার্চুয়াল উইন্ডোজ সার্ভার ইনস্ট্যান্স হিসেবে লাইসেন্সড (Hyper-V Server-এর মত সম্পূর্ণ ফ্রি নয়)।

উইন্ডোজ সার্ভার ২০১৬/২০১৯ کور মোডে ইনস্টল করতে, আপনাকে সাধারণ ইনস্টলেশন সিলেক্ট করতে হবে। আপনি যদি Windows Server (Desktop Experience) সিলেক্ট করেন, তবে GUI ভার্সন ইনস্টল হবে (পূর্বের উইন্ডোজ সার্ভার ভার্সনে এটিকে Server with a GUI বলা হতো)।

উইন্ডোজ সার্ভার ২০১৬/২০১৯-এ ফুল GUI এবং کور মোডের মধ্যে রিইনস্টলেশন ছাড়া সুইচ করা যাবে না।

Windows Server Core ইনস্টলেশন শেষ হলে, আপনাকে লোকাল অ্যাডমিনিস্ট্রেটর পাসওয়ার্ড সেট করতে বলা হবে।

Server Core-এ লগ অন করলে কমান্ড প্রম্পট দেখা যাবে (cmd.exe)। আপনি যদি এর বদলে পাওয়ারশেল কনসোল চালু করতে চান, তবে রেজিস্ট্রিতে কিছু পরিবর্তন করুন। নিচের কমান্ডগুলো চালান:

Powershell.exe
Set-ItemProperty -Path 'HKLM:\Software\Microsoft\Windows NT\CurrentVersion\WinLogon' -Name Shell -Value 'PowerShell.exe'

এবং আপনার সার্ভার রিস্টার্ট করুন:

Restart-Computer -Force

যদি ভুলবশত কমান্ড প্রম্পট উইন্ডো বন্ধ হয়ে যায়, তবে Ctrl+Alt+Delete চাপুন, টাস্ক ম্যানেজার খুলুন -> File -> Run -> এবং cmd.exe (বা PowerShell.exe) চালান।

SCONFIG ব্যবহার করে উইন্ডোজ সার্ভার کور কনফিগার করা

আপনি বিল্ট-ইন sconfig স্ক্রিপ্ট ব্যবহার করে Server Core-এর বেসিক কনফিগারেশন করতে পারেন। শুধু আপনার কনসোলে sconfig কমান্ড চালান। আপনি কিছু আইটেম সহ একটি মেনু দেখবেন:

Server Configuration মেনু ব্যবহার করে আপনি নিচের কাজগুলো করতে পারেন:

  • কম্পিউটারকে ডোমেন বা ওয়ার্কগ্রুপে যোগ করা
  • কম্পিউটার নাম (হোস্টনেম) পরিবর্তন করা
  • লোকাল অ্যাডমিনিস্ট্রেটর যোগ করা
  • রিমোট ম্যানেজমেন্ট এবং ICMP রেসপন্স অনুমতি/নিষিদ্ধ করা
  • Windows Update সেটিংস কনফিগার করা
  • Windows আপডেট ইনস্টল করা
  • RDP সক্ষম/নিষিদ্ধ করা
  • নেটওয়ার্ক অ্যাডাপ্টার সেটিংস কনফিগার করা (IP ঠিকানা, গেটওয়ে, DNS সার্ভার)
  • তারিখ এবং সময় সেট করা
  • টেলিমেট্রি সেটিংস পরিবর্তন করা
  • আপনার উইন্ডোজ সার্ভার ইনস্ট্যান্স এক্টিভেট করা
  • লগ অফ, রিস্টার্ট বা শাট ডাউন করা

sconfig-এ প্রতিটি আইটেমের একটি নম্বর রয়েছে। আপনি যে আইটেমটি খুলতে চান, তার number টাইপ করে Enter চাপুন।

sconfig মেনুর কিছু আইটেমের সাব-আইটেম রয়েছে। একটি সেটিং-এ যেতে আপনাকে এর নম্বরের ওপর ইনপুট দিতে হবে।

আমরা sconfig-এর সকল সেটিংস বর্ণনা করব না, কারণ এগুলো সহজে বোঝা যায়। য conocidas, অধিকাংশ কেসে, অ্যাডমিনিস্ট্রেটররা নতুন Server Core হোস্ট কনফিগার করার জন্য ভিন্ন পাওয়ারশেল স্ক্রিপ্ট ব্যবহার করতে পছন্দ করেন। এটি সহজ এবং দ্রুত, বিশেষ করে ম্যাস ডিপ্লয়মেন্ট সিনেরিওতে।

পাওয়ারশেল ব্যবহার করে Server Core কনফিগার করার বেসিক কমান্ড

চলে Server Core কনফিগার করতে ব্যবহৃত বেসিক পাওয়ারশেল কমান্ডগুলো দেখি।

আপনার উইন্ডোজ সার্ভার বিল্ড এবং পাওয়ারশেল ভার্সন সম্পর্কে তথ্য পেতে:

Get-ComputerInfo | select WindowsProductName, WindowsVersion, OsHardwareAbstractionLayer
$PSVersionTable

Server Core রিস্টার্ট করতে এই পাওয়ারশেল কমান্ড চালান:

Restart-Computer

Server Core কনসোল থেকে লগ অফ করতে নিচের কমান্ড ব্যবহার করুন: logoff

পাওয়ারশেল দিয়ে Server Core-এ নেটওয়ার্ক সেটিংস কনফিগার করা

এখন আপনাকে পাওয়ারশেল দিয়ে নেটওয়ার্ক সেটিংস কনফিগার করতে হবে (ডিফল্টভাবে, উইন্ডোজ DHCP থেকে IP ঠিকানা পাওয়ার জন্য কনফিগার্ড থাকে)। নেটওয়ার্ক অ্যাডাপ্টারগুলোর তালিকা দেখান:

Get-NetIPConfiguration

আপনার নেটওয়ার্ক অ্যাডাপ্টার ইন্টারফেসের ইনডেক্স (InterfaceIndex) নির্দিষ্ট করুন যেটি আপনি পরিবর্তন করতে চান এবং নতুন IP ঠিকানা এবং DNS সার্ভার সেট করুন:

New-NetIPaddress -InterfaceIndex 4 -IPAddress 192.168.1.100 -PrefixLength 24 -DefaultGateway 192.168.1.1
Set-DNSClientServerAddress –InterfaceIndex 4 -ServerAddresses 192.168.1.11,192.168.101.11

বর্তমান নেটওয়ার্ক সেটিংস চেক করুন:

Get-NetIPConfiguration

যদি আপনি IP ঠিকানা রিসেট করে DHCP থেকে IP ঠিকানা পাওয়ার মোডে ফিরে যাওয়া চান, তবে নিচের কমান্ড চালান:

Set-DnsClientServerAddress –InterfaceIndex 4 –ResetServerAddresses
Set-NetIPInterface –InterfaceIndex 4 -Dhcp Enabled

নেটওয়ার্ক অ্যাডাপ্টার সক্ষম/নিষিদ্ধ করতে:

Disable-NetAdapter -Name “Ethernet0”
Enable-NetAdapter -Name “Ethernet 0”

আপনার নেটওয়ার্ক অ্যাডাপ্টারের জন্য IPv6 সাপোর্ট সক্ষম, নিষিদ্ধ, বা স্ট্যাটাস চেক করতে:

Disable-NetAdapterBinding -Name "Ethernet0" -ComponentID ms_tcpip6
Enable-NetAdapterBinding -Name "Ethernet0" -ComponentID ms_tcpip6
Get-NetAdapterBinding -ComponentID ms_tcpip6

পাওয়ারশেল বা সিস্টেম সংযোগের জন্য winhttp প্রক্সি সার্ভার কনফিগার করতে:

netsh Winhttp set proxy <servername>:<port number>

তারিখ/সময় কীভাবে সেট করবেন?

আপনি গ্রাফিক্যাল টুল intl.cpl বা পাওয়ারশেল ব্যবহার করে তারিখ, সময়, বা টাইম জোন সেট করতে পারেন:

Set-Date -Date "07/21/2021 09:00"
Set-TimeZone "Central Europe Standard Time”

কম্পিউটার নাম সেট করা, ডোমেনে যোগ করা, এবং Server Core এক্টিভেট করা

কম্পিউটার নাম (হোস্টনেম) পরিবর্তন করতে:

Rename-Computer -NewName be-srv01 -PassThru

আপনার অন-প্রিমিসেস অ্যাক্টিভ ডিরেক্টরি ডোমেনে সার্ভার যোগ করতে:

Add-Computer -DomainName "corp.woshub.com" -Restart

আপনি যদি লোকাল অ্যাডমিনিস্ট্রেটর গ্রুপে অতিরিক্ত ব্যবহারকারী যোগ করতে চান, তবে গ্রুপ পলিসি কনফিগার করুন বা ম্যানুয়ালি যোগ করুন:

Add-LocalGroupMember -Group "Administrators" -Member "corp\jsmith"

উইন্ডোজ সার্ভার এক্টিভেট করতে আপনার প্রোডাক্ট কী দিন:

slmgr.vbs –ipk <productkey>
slmgr.vbs –ato

অথবা আপনি KMS সার্ভারে আপনার হোস্ট এক্টিভেট করতে পারেন। উদাহরণস্বরূপ, KMS হোস্টে উইন্ডোজ সার্ভার کور ২০১৯ স্ট্যান্ডার্ড এক্টিভেট করতে:

slmgr /ipk N69G4-B89J2-4G8F4-WWYCC-J464C
slmgr /skms kms.corp.woshub.com:1688
slmgr /ato

Windows Server Core-এর রিমোট অ্যাডমিনিস্ট্রেশন সক্ষম করা

Server Core-এ RDP-এর মাধ্যমে রিমোট অ্যাক্সেস অনুমতি দিতে:

cscript C:\Windows\System32\Scregedit.wsf /ar 0

রিমোট ম্যানেজমেন্ট অনুমতি দিতে:

Configure-SMRemoting.exe –Enable
Enable-NetFirewallRule -DisplayGroup “Windows Remote Management”

বর্তমান রিমোট ম্যানেজমেন্ট সেটিংস দেখতে:

Configure-SMRemoting.exe -Get

Win-RM পাওয়ারশেল রিমোটিং এর জন্য সক্ষম করতে:

Enable-PSRemoting –force

আপনি Windows Server Core চলমান একটি সার্ভারকে অন্য সার্ভার থেকে (ServerManager.exe ব্যবহার করে), ব্রাউজারের মাধ্যমে Windows Admin Center (WAC), যেকোনো ওয়ার্কস্টেশন থেকে RSAT ব্যবহার করে, RDP, পাওয়ারশেল রিমোটিং, বা SSH (বর্তমান উইন্ডোজ ভার্সনে বিল্ট-ইন SSH সার্ভার রয়েছে) ব্যবহার করে রিমোটলি ম্যানেজ করতে পারেন।

Server Core-এ উইন্ডোজ ফায়ারওয়াল কনফিগার করা

পাওয়ারশেল দিয়ে Windows Defender Firewall কনফিগার করার তথ্য এই আর্টিকেলে পাওয়া যাবে। আমি এখানে শুধু কিছু বেসিক কমান্ড দেখাচ্ছি।

সকল প্রোফাইলের জন্য Windows Defender Firewall সক্ষম করতে:

Set-NetFirewallProfile -Profile Domain,Public,Private -Enabled True

নেটওয়ার্ক টাইপ পাবলিক থেকে প্রাইভেটে পরিবর্তন করতে:

Get-NetConnectionProfile | Set-NetConnectionProfile -NetworkCategory Private

Windows Firewall সম্পূর্ণ নিষিদ্ধ করতে (প্রস্তাবিত নয়):

Get-NetFirewallProfile | Set-NetFirewallProfile -enabled false

রিমোট ম্যানেজমেন্ট টুলস ব্যবহার করে সংযোগ অনুমতি দিতে:

Enable-NetFireWallRule -DisplayName “Windows Management Instrumentation (DCOM-In)”
Enable-NetFireWallRule -DisplayGroup “Remote Event Log Management”
Enable-NetFireWallRule -DisplayGroup “Remote Service Management”
Enable-NetFireWallRule -DisplayGroup “Remote Volume Management”
Enable-NetFireWallRule -DisplayGroup “Remote Scheduled Tasks Management”
Enable-NetFireWallRule -DisplayGroup “Windows Firewall Remote Management”
Enable-NetFirewallRule -DisplayGroup "Remote Administration"

উইন্ডোজ সার্ভার کور-এ আপডেট ইনস্টল করা

আপডেট অপশন ম্যানেজ করতে উইন্ডোজ আপডেট গ্রুপ পলিসি ব্যবহার করা ভালো। যাপিত, আপনি ম্যানুয়ালি আপডেট সেটিংস সেট করতে পারেন।

অটোমেটিক আপডেট নিষিদ্ধ করতে:
Set-ItemProperty -Path HKLM:\Software\Policies\Microsoft\Windows\WindowsUpdate\AU -Name AUOptions -Value 1
উপলব্ধ আপডেট অটোমেটিক ডাউনলোড করতে:
Set-ItemProperty -Path HKLM:\Software\Policies\Microsoft\Windows\WindowsUpdate\AU -Name AUOptions -Value 3
ইনস্টল করা আপডেটের তালিকা পেতে:
Get-Hotfix
অথবা
wmic qfe list
ম্যানুয়ালি উইন্ডোজ আপডেট ইনস্টল করতে, আপনি wusa টুল ব্যবহার করতে পারেন:
wusa kbnamexxxxx.msu /quiet

কমান্ড প্রম্পট থেকে আপডেট ইনস্টল এবং ম্যানেজ করতে, পাওয়ারশেলের জন্য PSWindowsUpdate মডিউল ব্যবহার করা সুবিধাজনক।

Windows Core রোল, সার্ভিস, এবং প্রসেস ম্যানেজমেন্ট

Windows Server Core-এ উপলব্ধ সকল রোলের তালিকা পেতে নিচের পাওয়ারশেল কমান্ড চালান:

Get-WindowsFeature

Windows-এ ইনস্টল করা সকল রোল এবং ফিচারের তালিকা পেতে (এভাবে আপনি দ্রুত বুঝতে পারেন সার্ভারটি কিসের জন্য ব্যবহৃত হচ্ছে):

Get-WindowsFeature | Where-Object {$_. installstate -eq "installed"} | ft Name,Installstate

উদাহরণস্বরূপ, DNS রোল ইনস্টল করতে এই কমান্ড চালান:

Install-WindowsFeature DNS -IncludeManagementTools

Windows-এ সকল সার্ভিসের তালিকা পেতে:

Get-Service

সকল স্টপ করা সার্ভিস দেখতে:

Get-Service | Where-Object {$_.status -eq “stopped”}

একটি সার্ভিস রিস্টার্ট করতে:

Restart-Service -Name spooler

পাওয়ারশেল দিয়ে সার্ভিস ম্যানেজমেন্ট সম্পর্কে আরও জানুন।

প্রসেস ম্যানেজ করতে, আপনি টাস্ক ম্যানেজার (taskmgr.exe) বা পাওয়ারশেল Processes মডিউল ব্যবহার করতে পারেন:

Get-Process cmd, wuaucl* | Select-Object ProcessName, StartTime, MainWindowTitle, Path, Company|ft

উপযোগী উইন্ডোজ সার্ভার کور কমান্ড

শেষে, আমি কিছু উপযোগী পাওয়ারশেল কমান্ড এবং স্ক্রিপ্ট দেখাচ্ছি যা আমি Server Core ম্যানেজ করতে ঘন ঘন ব্যবহার করি।

ফিজিক্যাল ডিস্কের স্ট্যাটাস এবং স্বাস্থ্য সম্পর্কে তথ্য (ডিফল্ট Storage ডিস্ক ম্যানেজমেন্ট মডিউল ব্যবহার করা হয়):

Get-PhysicalDisk | Sort Size | FT FriendlyName, Size, MediaType, SpindleSpeed, HealthStatus, OperationalStatus -AutoSize

ফ্রি ডিস্ক স্পেস সম্পর্কে তথ্য:

Get-WmiObject -Class Win32_LogicalDisk | 
Select-Object -Property DeviceID, VolumeName, @{Label='FreeSpace (Gb)'; expression={($_.FreeSpace/1GB).ToString('F2')}}, 
@{Label='Total (Gb)'; expression={($_.Size/1GB).ToString('F2')}}, 
@{label='FreePercent'; expression={[Math]::Round(($_.freespace / $_.size) * 100, 2)}}|ft

আপনার সার্ভারোর После ১০টি রিবুটের তথ্য:

Get-EventLog system | where-object {$_.eventid -eq 6006} | select -last 10

ইনস্টল করা প্রোগ্রামের তালিকা:

Get-ItemProperty HKLM:\Software\Wow6432Node\Microsoft\Windows\CurrentVersion\Uninstall\* | Select-Object DisplayName, DisplayVersion, Publisher, InstallDate | Format-Table –AutoSize

এক্সটার্নাল ওয়েবসাইট থেকে ZIP ফাইল ডাউনলোড এবং এক্সট্র্যাক্ট করতে:

Invoke-WebRequest https://servername/file.zip -outfile file.zip
Expand-Archive -path '.\file.zip' -DestinationPath C:\Users\Administrator\Documents\

এক ডিরেক্টরি থেকে সকল ফাইল রিমোট কম্পিউটারে নেটওয়ার্কের মাধ্যমে কপি করতে, Copy-Item সিএমডলেট ব্যবহার করতে পারেন:

$session = New-PSSession -ComputerName be-dc01
Copy-Item -Path "C:\Logs\*" -ToSession $session -Destination "C:\Logs\" -Recurse -Force

ডিভাইস ড্রাইভার ইনস্টল করতে:

Pnputil –i –a c:\install\hpspp\hpdp.inf

মাইক্রোসফট একটি বিশেষ প্যাকেজ অফার করে, Server Core App Compatibility Feature on Demand (FOD), যা উইন্ডোজ کور সার্ভার ২০১৯-এ কিছু গ্রাফিক্যাল টুল এবং স্ন্যাপ-ইন ইনস্টল করার অনুমতি দেয় (MMC, Eventvwr, Hyper-V Manager, PerfMon, Resmon, Explorer.exe, Device Manager, Powershell ISE)। আপনি FOD ISO ফাইল হিসেবে ডাউনলোড করতে পারেন যদি আপনার মাইক্রোসফট সাবস্ক্রিপশন সক্রিয় থাকে। আপনি এটিকে নিচেরভাবে ইনস্টল করতে পারেন:

Add-WindowsCapability -Online -Name ServerCore.AppCompatibility~~~~0.0.1.0

Server Core App Compatibility Feature on Demand ইনস্টলেশন আপনার Server Core-এ প্রায় ২০০ MB অতিরিক্ত RAM ব্যবহার করবে।

এই আর্টিকেলে, আমি Windows Server Core অ্যাডমিনিস্ট্রেট করার জন্য সবচেয়ে উপযোগী কমান্ডগুলো সংগ্রহ করার চেষ্টা করেছি। সময়-सময়ে, আমি আর্টিকেলটি আপডেট করব এবং নতুন কমান্ড যোগ করব যদি সেগুলো দৈনন্দিন কাজের জন্য প্রয়োজনীয় লাগে।

  1. উইন্ডোজ ১০-এ TFTP সার্ভার সেটআপ ও কনফিগারেশন গাইড

  2. Windows 10-এ XAMPP ইনস্টল ও কনফিগারেশন: PHP ডেভেলপমেন্টের জন্য গাইড

  3. উইন্ডোজ ১০-এ FTP সার্ভার সেটআপ ও পরিচালনার ধাপে ধাপে গাইড

  4. Windows 10, 8.1 এবং 7-এ সিকিউর FTP সার্ভার সেটআপ — ধাপে ধাপে গাইড (২০২২ আপডেট)