উইন্ডোজ সার্ভার ২০১৬/২০১৯ এবং উইন্ডোজ ১০ (বিল্ড ১৭০৯ থেকে শুরু) এ Server Message Block 1.0 (SMBv1) নেটওয়ার্ক প্রোটোকল ডিফল্টলি ডিজেবল থাকে যা শেয়ার্ড ফোল্ডার এক্সেস করতে ব্যবহৃত হয়। অধিকাংশ ক্ষেত্রে এই প্রোটোকল লিগ্যাসি সিস্টেমে হোস্ট করা শেয়ার্ড ফোল্ডার এক্সেস করার জন্য প্রয়োজন, যেমন আর সাপোর্ট না করা উইন্ডোজ XP, উইন্ডোজ সার্ভার ২০০৩ এবং পুরনো OS। এই আর্টিকেলে আমরা দেখব কিভাবে উইন্ডোজ ১০ এবং উইন্ডোজ সার্ভার ২০১৬/২০১৯-এ SMBv1 ক্লায়েন্ট এবং সার্ভার সাপোর্ট ইনেবল বা ডিজেবল করা যায়।
যদি আপনার নেটওয়ার্কে কোনো SMB 1.x ক্লায়েন্ট না থাকে, তবে সব উইন্ডোজ ডিভাইসে SMBv1 সম্পূর্ণরূপে ডিজেবল করা উচিত। SMB 1.0 ডিজেবল করলে এই লিগ্যাসি প্রোটোকলের ব্যাপক সুরক্ষা লুজ থেকে উইন্ডোজ কম্পিউটারগুলো রক্ষা করা যায় (SMBv1-এর সবচেয়ে বিখ্যাত পাবলিক এক্সপ্লويت হল EternalBlue)। ফলস্বরূপ, নেটওয়ার্ক শেয়ার এক্সেস করার সময় আপনার ডিভাইসগুলো SMB প্রোটোকলের নতুন, আরও দক্ষ, নিরাপদ এবং ফাংশনাল ভার্সন ব্যবহার করবে।
পূর্বের একটি আর্টিকেলে আমরা ক্লায়েন্ট- এবং সার্ভার-সাইড SMB ভার্সন কম্প্যাটিবিলিটি টেবিল দেখিয়েছিলাম। টেবিল অনুযায়ী, পুরনো ক্লায়েন্ট ভার্সন (XP, Server 2003 এবং কিছু *nix ক্লায়েন্ট) শুধু SMB v1.0 প্রোটোকল ব্যবহার করে নেটওয়ার্ক শেয়ার্ড ফোল্ডার এক্সেস করতে পারে। আপনার নেটওয়ার্কে এমন ক্লায়েন্ট না থাকলে, ফাইল সার্ভার (AD ডোমেন কন্ট্রোলার সহ) এবং ক্লায়েন্ট ডেস্কটপে SMB 1.0 সম্পূর্ণরূপে ডিজেবল করা যাবে।
উইন্ডোজ ১০ এবং উইন্ডোজ সার্ভার ২০১৬-এ SMBv1 প্রোটোকল দুটি আলাদা কম্পোনেন্টে ভাগ করা হয়েছে — SMB ক্লায়েন্ট এবং SMB সার্ভার, যেগুলো স্বতন্ত্রভাবে ইনেবল/ডিজেবল করা যায়।
সামগ্রী:
- SMB v1.0経由 শেয়ার্ড ফোল্ডার এক্সেস ऑডিট করা
- উইন্ডোজ সার্ভার ২০১৬/২০১৯-এ SMB 1.0 ইনেবল/ডিজেবল করা
- উইন্ডোজ ১০-এ SMBv1 ইনেবল/ডিজেবল কীভাবে করবেন?
- গ্রুপ পলিসি経由 SMBv1 ক্লায়েন্ট ও সার্ভার ডিজেবল করা
SMB v1.0経由 শেয়ার্ড ফোল্ডার এক্সেস ऑডিট করা
SMB ফাইল সার্ভার সাইডে SMB 1.0 ড্রাইভার ডিজেবল বা সম্পূর্ণরূপে রিমুভ করার আগে, আপনার নেটওয়ার্কে কোনো লিগ্যাসি ক্লায়েন্ট এটি ব্যবহার করছে কিনা তা নিশ্চিত করার jó। এর জন্য SMB v1.0経由 ফাইল সার্ভার এক্সেসের ऑডিট নিচের পাওয়ারশেল কমান্ড দিয়ে সক্ষম করুন:
Set-SmbServerConfiguration –AuditSmb1Access $true
কয়েক দিন পর সার্ভারে Event Viewer খুলুন, লগ চেক করুন Applications and Services → Microsoft → Windows → SMBServer → Audit এবং দেখুন কোনো ক্লায়েন্ট SMB1 ব্যবহার করে ফাইল সার্ভার এক্সেস করেছে কিনা।
টিপ. এই ইভেন্ট লগ থেকে ইভেন্টের তালিকা নিচের পাওয়ারশেল কমান্ড দিয়ে দেখতে পারেন:
Get-WinEvent -LogName Microsoft-Windows-SMBServer/Audit
আমাদের উদাহরণে, SMBServer সোর্স থেকে EventID 3000 সহ একটি ইভেন্ট লоге পাওয়া গেল। ইভেন্টটি ইঙ্গিত দেয় যে ক্লায়েন্ট 192.168.1.10 SMB1 প্রোটোকল ব্যবহার করে সার্ভার এক্সেস করার চেষ্টা করছে।
SMB1 access Client Address: 192.168.1.10 Guidance: This event indicates that a client attempted to access the server using SMB1. To stop auditing SMB1 access, use the Windows PowerShell cmdlet Set-SmbServerConfiguration.

নেটওয়ার্কে এই কম্পিউটার বা ডিভাইসটি খুঁজে বের করুন এবং OS বা ফার্মওয়্যার আপডেট করে nieuwere SMB প্রোটোকল ভার্সন: SMBv2 বা SMBv3 সাপোর্ট করা ভার্সনে আনার চেষ্টা করুন।
আমাদের কেসে আমরা এই তথ্য উপেক্ষা করব, কিন্তু মনে রাখবেন যে পরে এই ক্লায়েন্ট এই SMB সার্ভারে শেয়ার্ড ফোল্ডার এক্সেস করতে পারবে না।
উইন্ডোজ সার্ভার ২০১৬/২০১৯-এ SMB 1.0 ইনেবল/ডিজেবল করা
উইন্ডোজ সার্ভার ২০১৬ বিল্ড ১৭০৯ থেকে এবং উইন্ডোজ সার্ভার ২০১৯-এ SMBv1 ডিফল্টলি ডিজেবল থাকে। উইন্ডোজ সার্ভার-এর nieuwere ভার্সনগুলিতে SMBv1 ক্লায়েন্ট প্রোটোকল সাপোর্ট ইনেবল করতে আলাদা SMB 1.0/CIFS File Sharing Support ফিচার ইনস্টল করতে হবে।
Server Manager বা পাওয়ারশেল ব্যবহার করে SMBv1 ফিচার ইনস্টল করতে পারেন।

SMBv1 ইনেবল করা হয়েছে কিনা পাওয়ারশেল কমান্ড দিয়ে যাচাই করুন:
Get-WindowsFeature | Where-Object {$_.name -eq "FS-SMB1"} | ft Name,Installstate
FS-SMB1 ফিচার ইনস্টল করতে:
Install-WindowsFeature FS-SMB1
SMBv1 ক্লায়েন্ট ফিচার আনইনস্টল করতে (রিবুট প্রয়োজন):
Uninstall-WindowsFeature –Name FS-SMB1 –Remove
SMB1Protocol ফিচারও রিমুভ করার আরেকটি পাওয়ারশেল কমান্ড:
Disable-WindowsOptionalFeature -Online -FeatureName SMB1Protocol -Remove
আপনার সার্ভার SMBv1.0 ক্লায়েন্ট এক্সেস হ্যান্ডেল করতে পারতে হলে FS-SMB1 কম্পোনেন্টের পাশাপাশি SMB ফাইল সার্ভার লেভেলেও SMBv1 সাপোর্ট ইনেবল করতে হবে। আপনার সার্ভারে নেটওয়ার্ক শেয়ার জন্য SMBv1 এক্সেস ইনেবল আছে কিনা চেক করতে:
Get-SmbServerConfiguration

লাইন “EnableSMB1Protocol: True” মানে এই সার্ভারের শেয়ার্ড ফোল্ডার SMBv1 প্রোটোকল ব্যবহার করে এক্সেস করা যাবে। উইন্ডোজ সার্ভারে SMBv1 সার্ভার সাপোর্ট ডিজেবল করতে পাওয়ারশেল কমান্ড:
Set-SmbServerConfiguration -EnableSMB1Protocol $false -Force
এখন Get-SmbServerConfiguration কমান্ডলেট ব্যবহার করে নিশ্চিত করুন SMB1 সার্ভার ডিজেবল।

সার্ভারে SMBv1 সাপোর্ট ইনেবল করতে কমান্ড:
Set-SmbServerConfiguration -EnableSMB1Protocol $True -Force
উইন্ডোজ ৭/৮ এবং উইন্ডোজ সার্ভার ২০০৮ R2/২০১২-এ SMB 1.0 ক্লায়েন্ট ডিজেবল করতে সার্ভিস এবং SMBv1 অ্যাক্সেস ড্রাইভার ডিজেবল করতে হবে কমান্ডগুলো দিয়ে:
sc.exe config lanmanworkstation depend= bowser/mrxsmb20/nsi
sc.exe config mrxsmb10 start= disabled

উইন্ডোজ ১০-এ SMBv1 ইনেবল/ডিজেবল কীভাবে করবেন?
যে কথা বলা হয়েছে, উইন্ডোজ ১০-এর সব নতুন বিল্ডে (১৭০৯ থেকে শুরু) SMB1 প্রোটোকল সাপোর্ট ডিজেবল থাকে (গেস্ট এক্সেস SMBv2 প্রোটোকল経由ও ডিজেবল থাকে)।
উইন্ডোজ ১০-এ DISM কমান্ড দিয়ে SMBv1 প্রোটোকল কম্পোনেন্টের স্ট্যাটাস চেক করতে পারেন:
Dism /online /Get-Features /format:table | find "SMB1Protocol"

আমাদের উদাহরণে দেখা যাচ্ছে সব SMBv1 ফিচার ডিজেবল:
SMB1Protocol | Disabled SMB1Protocol-Client | Disabled SMB1Protocol-Server | Disabled SMB1Protocol-Deprecation | Disabled
উইন্ডোজ ১০-এ Control Panel (optionalfeatures.exe) থেকে SMB 1 ফিচার ম্যানেজ করতে পারেন। SMB 1.0 /CIFS File Sharing Support অপশন এক্সপ্যান্ড করুন। এখানে ৩টি SMBv1 কম্পোনেন্ট উপলব্ধ:
- SMB 1.0/CIFS Automatic Removal
- SMB 1.0/CIFS Client
- SMB 1.0/CIFS Server

ফিচার ম্যানেজমেন্ট উইন্ডো বা কমান্ড ব্যবহার করে উইন্ডোজ ১০-এ SMBv1 ক্লায়েন্ট এবং সার্ভার ইনেবল করতে পারেন:
Dism /online /Enable-Feature /FeatureName:"SMB1Protocol"
Dism /online /Enable-Feature /FeatureName:"SMB1Protocol-Client"
Dism /online /Enable-Feature /FeatureName:"SMB1Protocol-Server"
পাওয়ারশেল ব্যবহার করে উইন্ডোজ ১০-এ SMBv1 সার্ভার এবং ক্লায়েন্ট ইনেবল করতে পারেন:
Enable-WindowsOptionalFeature -Online -FeatureName SMB1Protocol-Server
Enable-WindowsOptionalFeature -Online -FeatureName SMB1Protocol-Client
SMBv1 ক্লায়েন্ট ইনেবল করার পর যদি ১৫ দিনের বেশি ব্যবহার না করা হয়, তবে এটি স্বয়ংক্রিয়ভাবে ডিজেবল হয়ে যায়।
SMBv1 ক্লায়েন্টের স্বয়ংক্রিয় রিমুভাল এককালীন অপারেশন। অ্যাডমিন যদি ম্যানুয়ালি আবার SMBv1 ইনেবল করেন, তবে এটি স্বয়ংক্রিয়ভাবে ডিজেবল হবে না।
উইন্ডোজ ১০-এ SMB1 ক্লায়েন্ট এবং সার্ভার সাপোর্ট ডিজেবল করতে নিচের DISM কমান্ডগুলো চালান:
Dism /online /Disable-Feature /FeatureName:"SMB1Protocol"
Dism /online /Disable-Feature /FeatureName:"SMB1Protocol-Client"
Dism /online /Disable-Feature /FeatureName:"SMB1Protocol-Server"
আপনি যদি উইন্ডোজ ১০-এ SMBv1 ক্লায়েন্ট ডিজেবল করেন, তখন SMBv1 সাপোর্ট করা ফাইল সার্ভারে শেয়ার্ড ফোল্ডার এক্সেস করার সময় (SMBv2 এবং v3 প্রোটোকল ডিজেবল বা সাপোর্টেড না হলে) নিচের এররগুলো দেখতে পেতে পারেন:
0x80070035 The network path was not found;
Unable to connect to file shares because it is not secure. This share requires the obsolete SMB1 protocol, which is not secure and could expose your system to attacks;
You can’t connect to the file share because it’s not secure. This share requires the obsolete SMB1 protocol, which is unsafe and could expose your system to attack. Your system requires SMB2 or higher.
বিস্তারিত জানতে এই আর্টিকেল পড়ুন: Unable to access shared folder on Windows 10 .
অতিরিক্তভাবে, SMBv1 ক্লায়েন্ট ডিজেবল করলে Computer Browser সার্ভিস (যে লিগ্যাসি NetBIOS প্রোটোকল ব্যবহার করে নেটওয়ার্কে ডিভাইস ডিসকভার করে) কম্পিউটারে কাজ करना বন্ধ করে দেয়। উইন্ডোজ ১০ নেটওয়ার্কে প্রতিবেশী কম্পিউটার সঠিকভাবে প্রদর্শন করতে Feature Discovery Provider Host সার্ভিস কনফিগার করতে হবে (এই আর্টিকেল চেক করুন)।
গ্রুপ পলিসি経由 SMBv1 ক্লায়েন্ট ও সার্ভার ডিজেবল করা
এক্টিভ ডিরেক্টরি ডোমেন এনভায়রনমেন্টে, গ্রুপ পলিসি (GPO) ব্যবহার করে সব সার্ভার এবং কম্পিউটারে SMBv1 ডিজেবল করা যায়। যেহেতু স্ট্যান্ডার্ড উইন্ডোজ গ্রুপ পলিসিতে আলাদা SMB কনফিগারেশন পলিসি নেই, আপনাকে রেজিস্ট্রি পলিসি ব্যবহার করে ডিজেবল করতে হবে।
- Group Policy Management কনসোল (
gpmc.msc) খুলুন, একটি নতুন GPO (disableSMBv1) তৈরি করুন এবং এটিকে কম্পিউটার содержащий OU-র সাথে লিংক করুন যেখানে SMB1 ডিজেবল করতে চান; - পলিসি এডিট মোডে যান। GPO সেকশন এক্সপ্যান্ড করুন Computer Configuration → Preferences → Windows Settings → Registry;
- নিচের সেটিংসহ একটি নতুন Registry Item তৈরি করুন:
Action:Update
Hive:HKEY_LOCAL_MACHINE
Key Path:SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters
Value name:SMB1
Value type:REG_DWORD
Value data:0

এই পলিসি রেজিস্ট্রি経由 সব কম্পিউটারে SMBv1 সার্ভার কম্পোনেন্টের সাপোর্ট ডিজেবল করবে। WMI ফিল্টার ব্যবহার করে উইন্ডোজের কিছু ভার্সন এই পলিসি থেকে বাদ দেওয়া যাবে।
আপনি যদি ডোমেন কম্পিউটারগুলিতে SMB ক্লায়েন্ট ডিজেবল করতে চান GPO経由, দুটি অতিরিক্ত রেজিস্ট্রি প্যারামিটার তৈরি করুন:
- Start প্যারামিটার (REG_DWORD টাইপ) ভ্যালু 4 সহ রেজিস্ট্রি কী HKLM\SYSTEM\CurrentControlSet\services\mrxsmb10-এ;
- DependOnService প্যারামিটার (REG_MULTI_SZ টাইপ) ভ্যালু Bowser, MRxSmb20, NSI (প্রতিটি ভ্যালু নতুন লাইনে) রেজিস্ট্রি কী HKLM\SYSTEM\CurrentControlSet\Services\LanmanWorkstation-এ।

এখন ক্লায়েন্টগুলিতে গ্রুপ পলিসি সেটিংস আপডেট করুন (gpupdate /force) এবং রিবুট করার পর নিশ্চিত করুন যে SMBv1 কম্পোনেন্টগুলো সম্পূর্ণরূপে ডিজেবল।
Security Baseline GPOs Microsoft Security Compliance Toolkit-এ আলাদা একটি অ্যাডমিনিস্ট্রেটিভ টেমপ্লেট MS Security Guide (SecGuide.adml এবং SecGuide.admx ফাইল) থাকে যাতে SMB সার্ভার এবং ক্লায়েন্ট ডিজেবল করার আলাদা অপশন রয়েছে:
- Configure SMB v1 server;
- Configure SMB v1 client driver.
