विंडोज सर्वर 2016/2019 और विंडोज 10 (बिल्ड 1709) में, सर्वर मैसेज ब्लॉक 1.0 (एसएमबीवी1) नेटवर्क प्रोटोकॉल साझा किए गए फ़ोल्डरों तक पहुंचने के लिए डिफ़ॉल्ट रूप से अक्षम है। ज्यादातर मामलों में, इस प्रोटोकॉल को लीगेसी सिस्टम पर होस्ट किए गए साझा फ़ोल्डरों तक पहुंचने की आवश्यकता होती है, जैसे अब समर्थित विंडोज एक्सपी, विंडोज सर्वर 2003 और पुराने ओएस। इस लेख में, हम विंडोज 10 और विंडोज सर्वर 2016/2019 पर SMBv1 क्लाइंट और सर्वर सपोर्ट को सक्षम या अक्षम करने का तरीका देखेंगे।
अगर आपके नेटवर्क पर कोई SMB 1.x क्लाइंट नहीं बचा है, तो आपको सभी विंडोज़ डिवाइस पर SMBv1 को पूरी तरह से अक्षम करना होगा। SMB 1.0 को अक्षम करके, आप इस लीगेसी प्रोटोकॉल (SMBv1 के लिए सबसे प्रसिद्ध सार्वजनिक शोषण EternalBlue है) में कई प्रकार की कमजोरियों से विंडोज कंप्यूटर की रक्षा कर सकते हैं। परिणामस्वरूप, नेटवर्क शेयर एक्सेस करते समय आपके डिवाइस SMB प्रोटोकॉल के नए, अधिक कुशल, सुरक्षित और कार्यात्मक संस्करणों का उपयोग करेंगे।
पिछले लेखों में से एक में, हमने क्लाइंट- और सर्वर-साइड SMB संस्करण संगतता की तालिका दिखाई थी। तालिका के अनुसार, पुराने क्लाइंट संस्करण (XP, Server 2003 और कुछ *nix क्लाइंट) केवल SMB v1.0 प्रोटोकॉल का उपयोग करके नेटवर्क साझा किए गए फ़ोल्डरों तक पहुंच सकते हैं। यदि नेटवर्क में ऐसे कोई क्लाइंट नहीं हैं, तो आप फ़ाइल सर्वर (एडी डोमेन नियंत्रकों सहित) और क्लाइंट डेस्कटॉप पर SMB 1.0 को पूरी तरह से अक्षम कर सकते हैं।
Windows 10 और Windows Server 2016 में, SMBv1 प्रोटोकॉल दो अलग-अलग घटकों में विभाजित है - SMB क्लाइंट और एसएमबी सर्वर , जिसे स्वतंत्र रूप से सक्षम/अक्षम किया जा सकता है।
सामग्री:
- एसएमबी v1.0 के माध्यम से साझा फ़ोल्डर एक्सेस का ऑडिट करना
- विंडोज सर्वर 2016/2019 पर SMB 1.0 को सक्षम/अक्षम करें
- Windows 10 पर SMBv1 को कैसे सक्षम/अक्षम करें?
- समूह नीति के माध्यम से SMBv1 क्लाइंट और सर्वर को अक्षम करना
एसएमबी v1.0 के माध्यम से साझा फ़ोल्डर एक्सेस का ऑडिट करना
SMB फ़ाइल सर्वर के किनारे SMB 1.0 ड्राइवर को अक्षम या पूरी तरह से हटाने से पहले, यह सुनिश्चित करने योग्य है कि आपके नेटवर्क में इसका उपयोग करने वाले कोई लीगेसी क्लाइंट नहीं हैं। ऐसा करने के लिए, निम्न PowerShell कमांड का उपयोग करके SMB v1.0 पर फ़ाइल सर्वर एक्सेस के ऑडिट को सक्षम करें:
Set-SmbServerConfiguration –AuditSmb1Access $true
कुछ दिनों के बाद, सर्वर पर इवेंट व्यूअर खोलें, लॉग की जाँच करें अनुप्रयोग और सेवाएँ -> Microsoft -> Windows -> SMBServer -> Audi टी और देखें कि क्या किसी क्लाइंट ने फ़ाइल सर्वर को SMB1 पर एक्सेस किया है।
युक्ति। आप निम्न PowerShell आदेश का उपयोग करके इस ईवेंट लॉग से ईवेंट की सूची प्रदर्शित कर सकते हैं:Get-WinEvent -LogName Microsoft-Windows-SMBServer/Audit
हमारे उदाहरण में, 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 या फ़र्मवेयर को ऐसे संस्करण में अपडेट करना होगा जो नए SMB प्रोटोकॉल संस्करणों का समर्थन करता हो:SMBv2 या SMBv3।
हमारे मामले में हम इस जानकारी को अनदेखा कर देंगे, लेकिन आपको यह ध्यान रखना चाहिए कि बाद में यह क्लाइंट इस SMB सर्वर पर साझा किए गए फ़ोल्डरों तक नहीं पहुंच पाएगा।
Windows Server 2016/2019 पर SMB 1.0 को सक्षम/अक्षम करें
विंडोज सर्वर 2016 में बिल्ड 1709 और विंडोज सर्वर 2019 से शुरू होकर, SMBv1 डिफ़ॉल्ट रूप से अक्षम है। Windows सर्वर के नए संस्करणों में SMBv1 क्लाइंट प्रोटोकॉल के लिए समर्थन सक्षम करने के लिए, आपको अलग SMB 1.0/CIFS फ़ाइल साझाकरण समर्थन स्थापित करने की आवश्यकता है सुविधा।
आप सर्वर प्रबंधक का उपयोग करके या पावरशेल के माध्यम से SMBv1 सुविधा स्थापित कर सकते हैं।
आप जाँच सकते हैं कि SMBv1 PowerShell कमांड से सक्षम है:
Get-WindowsFeature | Where-Object {$_.name -eq "FS-SMB1"} | ft Name,Installstate
FS-SMB1 स्थापित करने के लिए फ़ीचर, रन:
Install-WindowsFeature FS-SMB1
SMBv1 क्लाइंट सुविधा की स्थापना रद्द करने के लिए (रिबूट की आवश्यकता है), कमांड चलाएँ:
Uninstall-WindowsFeature –Name FS-SMB1 –Remove
Disable-WindowsOptionalFeature -Online -FeatureName SMB1Protocol -Remove
आपके सर्वर के लिए SMBv1.0 क्लाइंट एक्सेस को हैंडल करने के लिए, आपको FS-SMB1 के अलावा SMB फ़ाइल सर्वर स्तर पर SMBv1 समर्थन को सक्षम करने की आवश्यकता है अवयव। यह जांचने के लिए कि आपके सर्वर पर नेटवर्क शेयरों के लिए SMBv1 एक्सेस सक्षम है या नहीं, रन करें:
Get-SmbServerConfiguration
लाइन “EnableSMB1Protocol: True
” का अर्थ है कि आपको SMBv1 प्रोटोकॉल का उपयोग करके इस सर्वर पर साझा किए गए फ़ोल्डरों तक पहुंचने की अनुमति है। Windows सर्वर में SMBv1 सर्वर समर्थन को अक्षम करने के लिए, PowerShell कमांड चलाएँ:
Set-SmbServerConfiguration -EnableSMB1Protocol $false -Force
अब Get-SmbServerConfiguration
का उपयोग करें यह सुनिश्चित करने के लिए cmdlet कि SMB1 सर्वर अक्षम है।
सर्वर पर SMBv1 समर्थन सक्षम करने के लिए, कमांड चलाएँ:
Set-SmbServerConfiguration -EnableSMB1Protocol $True -Force
sc.exe config lanmanworkstation depend= bowser/mrxsmb20/nsi
sc.exe config mrxsmb10 start= disabled
Windows 10 पर SMBv1 को कैसे सक्षम/अक्षम करें?
जैसा कि हमने पहले ही कहा, Windows10 के सभी नए बिल्ड में (1709 से शुरू) SMB1 प्रोटोकॉल के लिए समर्थन अक्षम है (SMBv2 प्रोटोकॉल के माध्यम से अतिथि पहुंच भी अक्षम है)।
विंडोज 10 में, आप DISM कमांड के साथ SMBv1 प्रोटोकॉल घटकों की स्थिति की जांच कर सकते हैं:
Dism /online /Get-Features /format:table | find "SMB1Protocol"
हमारे उदाहरण में, आप देख सकते हैं कि सभी SMBv1 सुविधाएँ अक्षम हैं:
SMB1Protocol | Disabled SMB1Protocol-Client | Disabled SMB1Protocol-Server | Disabled SMB1Protocol-Deprecation | Disabled
विंडोज 10 में, आप कंट्रोल पैनल (optionalfeatures.exe
से SMB 1 फीचर्स को भी मैनेज कर सकते हैं। ) SMB 1.0 /CIFS फ़ाइल साझाकरण समर्थन . का विस्तार करें विकल्प। जैसा कि आप देख सकते हैं, यहां 3 SMBv1 घटक भी उपलब्ध हैं:
- एसएमबी 1.0/सीआईएफएस स्वचालित निष्कासन
- एसएमबी 1.0/सीआईएफएस क्लाइंट
- एसएमबी 1.0/सीआईएफएस सर्वर
आप सुविधा प्रबंधन विंडो से या कमांड का उपयोग करके विंडोज 10 पर SMBv1 क्लाइंट और सर्वर को सक्षम कर सकते हैं:
Dism /online /Enable-Feature /FeatureName:"SMB1Protocol"
Dism /online /Enable-Feature /FeatureName:"SMB1Protocol-Client"
Dism /online /Enable-Feature /FeatureName:"SMB1Protocol-Server"
Enable-WindowsOptionalFeature -Online -FeatureName SMB1Protocol-Server
Enable-WindowsOptionalFeature -Online -FeatureName SMB1Protocol-Client
यदि SMBv1 क्लाइंट को सक्षम करने के बाद, इसे 15 दिनों से अधिक समय तक उपयोग नहीं किया जाता है, तो यह स्वचालित रूप से अक्षम हो जाता है।
SMBv1 क्लाइंट का स्वचालित निष्कासन एक बार का ऑपरेशन है। यदि व्यवस्थापक मैन्युअल रूप से SMBv1 को फिर से सक्षम करता है, तो यह स्वचालित रूप से अक्षम नहीं होगा।Windows 10 में SMB1 क्लाइंट और सर्वर समर्थन को अक्षम करने के लिए, निम्नलिखित DISM कमांड चलाएँ:
Dism /online /Disable-Feature /FeatureName:"SMB1Protocol"
Dism /online /Disable-Feature /FeatureName:"SMB1Protocol-Client"
Dism /online /Disable-Feature /FeatureName:"SMB1Protocol-Server"
यदि आपने Windows 10 में 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.
इसके बारे में लेख में और पढ़ें विंडोज 10 पर साझा किए गए फ़ोल्डर तक पहुंचने में असमर्थ।
इसके अतिरिक्त, यदि आप SMBv1 क्लाइंट को अक्षम करते हैं, तो कंप्यूटर ब्राउज़र सेवा, जिसका उपयोग नेटवर्क पर डिवाइस खोजने के लिए लीगेसी NetBIOS प्रोटोकॉल द्वारा किया जाता है, कंप्यूटर पर काम करना बंद कर देता है। विंडोज 10 नेटवर्क पर पड़ोसी कंप्यूटरों को सही ढंग से प्रदर्शित करने के लिए, आपको फीचर डिस्कवरी प्रोवाइडर होस्ट को कॉन्फ़िगर करना होगा। सेवा (इस लेख को देखें)।
समूह नीति के माध्यम से SMBv1 क्लाइंट और सर्वर को अक्षम करना
एक सक्रिय निर्देशिका डोमेन वातावरण में, आप समूह नीतियों (जीपीओ) का उपयोग करके सभी सर्वरों और कंप्यूटरों पर SMBv1 को अक्षम कर सकते हैं। चूंकि मानक विंडोज समूह नीतियों में कोई अलग एसएमबी कॉन्फ़िगरेशन नीति नहीं है, इसलिए आपको इसे रजिस्ट्री नीति के माध्यम से अक्षम करना होगा।
- समूह नीति प्रबंधन कंसोल खोलें (
gpmc.msc
), एक नया GPO बनाएं (SMBv1 को अक्षम करें ) और इसे उन कंप्यूटरों वाले OU से लिंक करें जिन पर आप SMB1 को अक्षम करना चाहते हैं; - नीति संपादन मोड में स्विच करें। GPO अनुभाग का विस्तार करें कंप्यूटर कॉन्फ़िगरेशन -> प्राथमिकताएं -> Windows सेटिंग -> रजिस्ट्री;
- निम्न सेटिंग के साथ एक नया रजिस्ट्री आइटम बनाएं:
कार्रवाई:Update
हाइव:HKEY_LOCAL_MACHINE
कुंजी पथ:SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters
मान का नाम:SMB1
मान प्रकार:REG_DWORD
मान डेटा:0
यह नीति सभी कंप्यूटरों पर रजिस्ट्री के माध्यम से SMBv1 सर्वर घटक के लिए समर्थन को अक्षम कर देगी। आप WMI फ़िल्टर का उपयोग करके Windows के कुछ संस्करण को इस नीति से बाहर कर सकते हैं।
यदि आप GPO के माध्यम से डोमेन कंप्यूटर पर SMB क्लाइंट को अक्षम करना चाहते हैं, तो दो अतिरिक्त रजिस्ट्री पैरामीटर बनाएं:
- प्रारंभ मान 4 . के साथ पैरामीटर (REG_DWORD प्रकार) रजिस्ट्री कुंजी में HKLM\SYSTEM\CurrentControlSet\services\mrxsmb10;
- द निर्भरऑन सेवा मान के साथ पैरामीटर (REG_MULTI_SZ प्रकार) बोसर , MRxSmb20 , एनएसआई (प्रत्येक मान एक नई लाइन पर) reg कुंजी HKLM\SYSTEM\CurrentControlSet\Services\LanmanWorkstation में।
यह ग्राहकों पर समूह नीति सेटिंग्स को अद्यतन करने के लिए बनी हुई है (gpupdate /force
) रिबूट के बाद सुनिश्चित करें कि SMBv1 घटक पूरी तरह से अक्षम हैं।
SecGuide.adml
और SecGuide.admx
फ़ाइलें) जिनके पास SMB सर्वर और क्लाइंट को अक्षम करने के लिए अलग-अलग विकल्प हैं: - एसएमबी v1 सर्वर कॉन्फ़िगर करें;
- एसएमबी v1 क्लाइंट ड्राइवर कॉन्फ़िगर करें।