यदि आपने कभी Windows से Linux सर्वर को प्रबंधित किया है, तो आपने शायद PuTTY का उपयोग किया है या कम से कम इसके बारे में सुना है। यह एक उत्कृष्ट यूटिलिटी है और वर्षों से एक पसंदीदा SSH क्लाइंट रहा है। हालांकि, 2019 में Windows 10 ने बॉक्स से बाहर OpenSSH क्लाइंट शामिल करना शुरू कर दिया, इसलिए PuTTY अब आवश्यक नहीं है।
पासवर्ड-आधारित लॉगिन से क्यों बचना चाहिए
सर्वरों पर चलने वाला OpenSSH डिमन वर्षों के उपयोग और दुरुपयोग और सॉफ्टवेयर पैच के माध्यम से युद्ध-कठोर था। सर्वर के SSH डिमन में बग के कारण हैक होना बहुत दुर्लभ है। हालांकि, कई ब्रेक-इन उन एडमिनिस्ट्रेटर्स द्वारा सुविधाजनक होते हैं जो कमजोर पासवर्ड का उपयोग करते हैं। यहां तक कि पासवर्ड जो अक्षरों और संख्याओं के साथ जटिल लगते हैं, अक्सर ब्रूट-फोर्स हमलों के प्रति संवेदनशील होते हैं।
SSH keys दर्ज करें। इन्हें ब्रूट-फोर्स नहीं किया जा सकता – वे बस बहुत जटिल हैं। यदि आप कर सकते हैं, तो अपनी "sshd_config" फाइल (सर्वर पर) में पासवर्ड लॉगिन को अक्षम करें और इसके बजाय keys का उपयोग करें। यदि आप यात्रा करते हैं और अपने लैपटॉप को अपने साथ नहीं ले जा सकते, तो बस अपनी प्राइवेट key को USB स्टिक पर रखें और इसे अपने भौतिक कीचेन से जोड़ दें। आपका सर्वर इस तरह बहुत सुरक्षित होगा।
पब्लिक/प्राइवेट SSH Key Pair जनरेट करें
Start Menu से Command Prompt खोलें और टाइप करें:
ssh -V
आपको निम्न छवि के समान परिणाम मिलना चाहिए,
यदि आपको "command not recognized" त्रुटि मिलती है, तो OpenSSH इंस्टॉल करने के लिए यहां दिए गए चरणों का पालन करें। यह केवल Windows 10 के पुराने संस्करणों पर होगा जिन्हें बहुत लंबे समय से अपग्रेड नहीं किया गया है।
पब्लिक/प्राइवेट key pair जनरेट करने के लिए, Command Prompt में यह दर्ज करें:
ssh-keygen
पहले प्रॉम्प्ट पर, "Enter file in which to save the key," डिफ़ॉल्ट स्थान पर सहेजने के लिए Enter दबाएं।
दूसरे प्रॉम्प्ट पर, "Enter passphrase (empty for no passphrase)," आपके पास दो विकल्प हैं:
- अनएन्क्रिप्टेड key बनाने के लिए Enter दबाएं। यदि आप केवल वही हैं जो कंप्यूटर का उपयोग करते हैं, तो यह सुरक्षित है।
- एक पासवर्ड टाइप करें। यह आपकी key को एन्क्रिप्ट करेगा। यदि आप अपना कंप्यूटर किसी और के साथ साझा करते हैं तो यह एक अच्छा विचार है। यदि आप USB स्टिक पर key ले जाने का इरादा रखते हैं, तो यहां निश्चित रूप से पासवर्ड का उपयोग करें। यदि आप एक मजबूत पासफ्रेज का उपयोग करते हैं और कोई आपके USB डिवाइस से key चुरा लेता है, तो वे पासवर्ड के बिना इसका उपयोग नहीं कर पाएंगे।
जब आप पूरा कर लेते हैं, तो आपको नीचे दी गई छवि के समान कुछ दिखाई देगा।
पब्लिक Key खोलें
जैसा कि नाम से पता चलता है, प्राइवेट key आपके लिए और केवल आपके लिए है। इसे कभी भी सर्वर पर कॉपी/सेव न करें!
हालांकि, पब्लिक key को उन सर्वरों पर सेव करने के लिए है जिन्हें आप एक्सेस करना चाहते हैं, "~/.ssh/authorized_keys" फाइल में (या बल्कि, इस फाइल में पेस्ट/जोड़ा गया)। इस key को खोलने के लिए, कॉपी करने के लिए, और फिर जहां आवश्यक हो पेस्ट करने के लिए, Command Prompt में निम्न दर्ज करें।
notepad %userprofile%\.ssh\id_rsa.pub
आज के अधिकांश कंप्यूटर क्लाउड (VPS) प्रोवाइडर आपको उनके वेब इंटरफेस कंट्रोल पैनल के माध्यम से अपनी पब्लिक key(s) जोड़ने का एक आसान तरीका देते हैं। एक बार जब आप इस संबद्ध पब्लिक key के साथ एक सर्वर शुरू करते हैं, तो आप अपनी प्राइवेट key से लॉग इन कर पाएंगे। चूंकि प्राइवेट key अपने डिफ़ॉल्ट स्थान पर है, सर्वर/VPS में लॉग इन करने का कमांड उतना ही सरल है जितना:
ssh root@203.0.113.1
निष्कर्ष
जैसा कि आप देख सकते हैं, इन दिनों Windows पर SSH keys जनरेट करना बहुत आसान है। मूल रूप से, ssh-keygen कमांड सारा काम करता है। यदि आपको सर्वर पर पब्लिक key जोड़ने का तरीका समझने में कठिनाई होती है, तो अपने प्रोवाइडर के दस्तावेज़ देखें। उनके पास हमेशा एक पेज होता है जो विस्तार से बताता है कि यह कैसे करना है।