PowerShell डिफ़ॉल्ट रूप से लॉक-डाउन है, इसलिए इसे उपयोग करने से पहले आपको PowerShell Remoting को सक्षम करना होगा। यदि आप किसी डोमेन के बजाय वर्कग्रुप का उपयोग कर रहे हैं, तो यह सेटअप प्रक्रिया थोड़ा अधिक जटिल है-उदाहरण के लिए, होम नेटवर्क पर- लेकिन हम आपको इसके माध्यम से चलेंगे।
पीसी पर PowerShell Remoting को सक्षम करें जिसे आप दूरस्थ रूप से एक्सेस करना चाहते हैं
आपका पहला कदम पीसी पर पावरशेल रीमोटिंग को सक्षम करना है जिसमें आप रिमोट कनेक्शन बनाना चाहते हैं। उस पीसी पर, आपको व्यवस्थापकीय विशेषाधिकारों के साथ PowerShell खोलने की आवश्यकता होगी।
विंडोज 10 में, विंडोज + एक्स दबाएं और फिर पावर उपयोगकर्ता मेनू से पावरशेल (एडमिन) चुनें।
Enable-PSRemoting -Force
-Force
cmdlet का हिस्सा PowerShell को प्रत्येक चरण के लिए आपको सूचित किए बिना इन क्रियाओं को करने के लिए कहता है।
यदि आपके पीसी किसी डोमेन का हिस्सा हैं, तो यह वह सेटअप है जो आपको करना है। आप अपने कनेक्शन का परीक्षण करने के लिए आगे बढ़ सकते हैं। यदि आपके कंप्यूटर वर्कग्रुप का हिस्सा हैं-जो वे शायद घर या छोटे व्यवसाय नेटवर्क पर हैं- आपके पास कुछ और सेटअप कार्य है।
नोट: डोमेन वातावरण में रीमोटिंग सेट अप करने में आपकी सफलता पूरी तरह से आपके नेटवर्क के सेटअप पर निर्भर करती है। व्यवस्थापक द्वारा कॉन्फ़िगर की गई समूह नीति द्वारा रीमोटिंग अक्षम हो सकती है या स्वचालित रूप से सक्षम भी हो सकती है। आपके पास PowerShell को व्यवस्थापक के रूप में चलाने के लिए आवश्यक अनुमतियां भी नहीं हो सकती हैं। हमेशा की तरह, इस तरह से कुछ भी करने से पहले अपने व्यवस्थापक से जांचें। उनके पास अभ्यास की अनुमति न देने के अच्छे कारण हो सकते हैं, या वे इसे आपके लिए सेट अप करने के इच्छुक हो सकते हैं।
अपना वर्क ग्रुप सेट अप करें
यदि आपके कंप्यूटर किसी डोमेन पर नहीं हैं, तो आपको चीजों को सेट अप करने के लिए कुछ और कदम उठाने होंगे। जैसा कि हमने पिछले खंड में वर्णित किया है, आपको पीसी पर रीमोटिंग पहले से ही सक्षम करना चाहिए था, जिसे आप कनेक्ट करना चाहते हैं।
नोट: PowerShell के लिए वर्कग्रुप वातावरण में काम करने के लिए रिमोटिंग के लिए, आपको अपने नेटवर्क को निजी, सार्वजनिक नहीं, नेटवर्क के रूप में कॉन्फ़िगर करना होगा। अंतर के बारे में अधिक जानकारी के लिए - और निजी नेटवर्क में कैसे बदलाव करें यदि आपके पास पहले से ही एक सार्वजनिक नेटवर्क है, तो निजी बनाम सार्वजनिक नेटवर्क पर हमारी मार्गदर्शिका सेट अप करें।
इसके बाद, आपको उन दोनों पीसी पर विश्वसनीय होस्टिंग सेटिंग कॉन्फ़िगर करने की आवश्यकता है, जिन्हें आप कनेक्ट करना चाहते हैंतथा पीसी (या पीसी) जिन्हें आप कनेक्ट करना चाहते हैं, इसलिए कंप्यूटर एक दूसरे पर भरोसा करेंगे। आप इसे दो तरीकों से कर सकते हैं।
यदि आप ऐसे घर नेटवर्क पर हैं जहां आप आगे बढ़ना चाहते हैं और दूरस्थ रूप से कनेक्ट करने के लिए किसी भी पीसी पर भरोसा करना चाहते हैं, तो आप PowerShell में निम्न cmdlet टाइप कर सकते हैं (फिर से, आपको इसे व्यवस्थापक के रूप में चलाने की आवश्यकता होगी)।
Set-Item wsman:localhostclient rustedhosts *
तारांकन सभी पीसी के लिए एक वाइल्डकार्ड प्रतीक है। यदि इसके बजाय आप कनेक्ट करने वाले कंप्यूटरों को प्रतिबंधित करना चाहते हैं, तो आप तारों को आईपी पते या अनुमोदित पीसी के लिए कंप्यूटर नामों की कॉमा से अलग सूची के साथ प्रतिस्थापित कर सकते हैं।
उस आदेश को चलाने के बाद, आपको WinRM सेवा को पुनरारंभ करना होगा ताकि आपकी नई सेटिंग्स प्रभावी हो जाएं। निम्न cmdlet टाइप करें और फिर एंटर दबाएं:
Restart-Service WinRM
कनेक्शन का परीक्षण करें
अब जब आप PowerShell Remoting के लिए अपने पीसी सेट अप कर चुके हैं, तो यह कनेक्शन का परीक्षण करने का समय है। पीसी पर आप रिमोट सिस्टम से एक्सेस करना चाहते हैं, निम्न cmdlet को PowerShell में टाइप करें (रिमोट पीसी के नाम या आईपी पते के साथ "कंप्यूटर" को बदलना), और उसके बाद एंटर दबाएं:
Test-WsMan COMPUTER
यह सरल कमांड परीक्षण करता है कि रिमोट पीसी पर WinRM सेवा चल रही है या नहीं। यदि यह सफलतापूर्वक पूर्ण हो जाता है, तो आपको विंडो में दूरस्थ कंप्यूटर की WinRM सेवा के बारे में जानकारी दिखाई देगी-यह संकेत दे रहा है कि WinRM सक्षम है और आपका पीसी संवाद कर सकता है। यदि आदेश विफल रहता है, तो आपको इसके बजाय एक त्रुटि संदेश दिखाई देगा।
एकल रिमोट कमांड निष्पादित करें
रिमोट सिस्टम पर कमांड चलाने के लिए, का प्रयोग करें
Invoke-Command
निम्न वाक्यविन्यास का उपयोग कर cmdlet:
Invoke-Command -ComputerName COMPUTER -ScriptBlock { COMMAND } -credential USERNAME
"कंप्यूटर" रिमोट पीसी के नाम या आईपी पते का प्रतिनिधित्व करता है। "COMMAND" वह आदेश है जिसे आप चलाना चाहते हैं। "USERNAME" वह उपयोगकर्ता नाम है जिसे आप दूरस्थ कंप्यूटर पर कमांड चलाने के लिए चाहते हैं। आपको उपयोगकर्ता नाम के लिए पासवर्ड दर्ज करने के लिए कहा जाएगा।
यहां एक उदाहरण दिया गया है। मैं आईपी एड्रेस 10.0.0.22 के साथ रिमोट कंप्यूटर पर सी: निर्देशिका की सामग्री देखना चाहता हूं। मैं उपयोगकर्ता नाम "wjgle" का उपयोग करना चाहता हूं, इसलिए मैं निम्न आदेश का उपयोग करूंगा:
Invoke-Command -ComputerName 10.0.0.22 -ScriptBlock { Get-ChildItem C: } -credential wjgle
एक दूरस्थ सत्र शुरू करें
यदि आपके पास कई cmdlets हैं जो आप दूरस्थ पीसी पर चलाना चाहते हैं, तो बार-बार Invoke-Command cmdlet और दूरस्थ आईपी पता टाइप करने के बजाय, आप इसके बजाय एक दूरस्थ सत्र प्रारंभ कर सकते हैं। बस निम्न cmdlet टाइप करें और फिर एंटर दबाएं:
Enter-PSSession -ComputerName COMPUTER -Credential USER
दोबारा, रिमोट पीसी के नाम या आईपी पते के साथ "कंप्यूटर" को प्रतिस्थापित करें और उस उपयोगकर्ता खाते के नाम से "USER" को प्रतिस्थापित करें जिसे आप आमंत्रित करना चाहते हैं।