यह सिंहावलोकन बताएगा कि कैसे एक दूरस्थ सर्वर से ssh किया जाए और बिना पासवर्ड डाले कनेक्शन बनाया जाए।
मुझे अक्सर अपने लिनक्स सर्वर में एसएसएच को दूरस्थ रूप से करने की आवश्यकता होती है, और जब भी मैं लॉग इन करना चाहता हूं तो इतने सारे पासवर्ड याद रखना और उन्हें टाइप करना एक दर्द है। मैंने हाल ही में बिना टाइप किए अपने सर्वर में एसएसएच करने में सक्षम होने का एक साफ तरीका खोजा है। एक पासवर्ड में। ओपनएसएसएच आपको दूरस्थ रूप से कमांड निष्पादित करने की अनुमति देता है, और ऐसा करते समय पासवर्ड दर्ज न करने का मतलब है कि मैं कुछ स्वचालित कार्यों को दूरस्थ रूप से चला सकता हूं। फिर, यह बहुत मददगार हो सकता है। किसी भी सनकी के लिए यह तरीका काफी सुरक्षित है। वास्तव में, मेरी राय में यह पासवर्ड दर्ज करने से शायद अधिक सुरक्षित है। आइए रिमोट सर्वर से पासवर्ड रहित कनेक्शन सेट करने के साथ शुरुआत करें। ध्यान दें कि यह प्रक्रिया केवल Linux या UNIX मशीन पर काम करेगी। प्रक्रिया अपने आप में बहुत सीधी है।
सर्वर को सुरक्षित प्रमाणीकरण करने के लिए सार्वजनिक कुंजी बनाने के लिए पहला कदम है। अपने Linux डेस्कटॉप पर एक शेल टर्मिनल लॉन्च करें और निम्न कमांड चलाएँ:
# ssh-keygen -t rsa
सार्वजनिक/निजी rsa कुंजी युग्म बनाना.
वह फ़ाइल दर्ज करें जिसमें कुंजी को सहेजना है (/home/calvin/.ssh/id_rsa):
पासफ़्रेज़ दर्ज करें (बिना पासफ़्रेज़ के खाली ):
वही पासफ़्रेज़ फिर से दर्ज करें:
आपकी पहचान /home/calvin/.ssh/id_rsa में सहेजी गई है।
आपकी सार्वजनिक कुंजी /home/calvin/.ssh/ में सहेजी गई है id_rsa.pub.
यह चरण सार्वजनिक कुंजी उत्पन्न करता है और इसे /home/calvin/.ssh/id_rsa.pub फ़ाइल में संग्रहीत करता है . यह पूछे जाने पर कि आप किस फ़ाइल में कुंजी लिखना चाहते हैं, सुझाए गए विकल्प को चुनने के लिए बस एंटर दबाएं। इसी तरह, जब पासफ़्रेज़ के लिए कहा जाए तो बस एंटर की को दो बार हिट करें। यह फ़ाइल आपकी होम निर्देशिका में .ssh . में संग्रहीत है फ़ोल्डर जिसमें सभी SSH सर्वर की कॉन्फ़िगरेशन फ़ाइलें होती हैं। तो, आगे, आपको इस फ़ाइल को उस सर्वर पर कॉपी करने की आवश्यकता है जिस पर आप पासवर्ड के बिना SSH में सक्षम होना चाहते हैं।
# scp ~/.ssh/id_rsa.pub [email protected]:/home/username/
उपयोगकर्ता नाम . के दोनों उदाहरणों को बदलें उपरोक्त कमांड में उस उपयोगकर्ता नाम के साथ जिसका उपयोग आप अपने दूरस्थ सर्वर पर लॉग ऑन करने के लिए करते हैं, और remoteserver.com दूरस्थ सर्वर के होस्ट नाम या आईपी पते के साथ। अब उस सर्वर में SSH करें और अपने डेस्कटॉप की सार्वजनिक कुंजी को सर्वर के SSH कॉन्फ़िगरेशन में जोड़ें:
# ssh [email protected]
# बिल्ली ~/id_rsa.pub>> ~/.ssh/authorized_keys2
इसके बाद, आपको ~/.ssh/authorized_keys2 फ़ाइल की अनुमति सेट करनी होगी सही ढंग से:
# chmod 644 ~/.ssh/authorized_keys2
यह हमेशा आवश्यक नहीं होता है, लेकिन मैं कई बार अनुमति के मुद्दों के कारण होने वाली समस्याओं से फंस गया हूं, इसके अलावा अनुमतियों को सही सेट करने में कोई दिक्कत नहीं होती है। अब आप कर चुके हैं। अपने दूरस्थ सर्वर से SSH कनेक्शन से बाहर निकलें और फिर से ssh करें। अब आपको पासवर्ड के लिए संकेत नहीं दिया जाना चाहिए।
अब आप अपने रिमोट सर्वर पर बहुत सी अच्छी चीजें कर सकते हैं। उदाहरण के लिए, कमांड चलाएँ:
# ssh [email protected] “अपटाइम; df -h”
कमांड आपको आपके पासवर्ड के लिए संकेत दिए बिना, आपके रिमोट सर्वर से सीधे आपके स्थानीय शेल पर वांछित आउटपुट देगा। आप पासवर्ड दर्ज करने की चिंता किए बिना अपने दूरस्थ सर्वर पर या उससे फ़ाइलें कॉपी कर सकते हैं। इसका मतलब है कि आप एक साधारण शेल स्क्रिप्ट का उपयोग करके अपने रिमोट सर्वर से अपने स्थानीय डेस्कटॉप पर दैनिक बैकअप डाउनलोड करने जैसे काम कर सकते हैं। यह काफी शक्तिशाली उपकरण है। इसे सावधानी से प्रयोग करें।