PuTTY एक बेहतरीन विंडोज फ्रंटेंड है, पहले स्थान पर SSH क्लाइंट की आवश्यकता का उल्लेख नहीं है। लिनक्स, ओएस एक्स और अधिकांश अन्य यूनिक्स-वाई आधारित वातावरणों पर, एसएसएच आम तौर पर विशुद्ध रूप से कमांड लाइन है, लेकिन फिर भी आश्चर्यजनक रूप से शक्तिशाली है।
SSH क्लाइंट आपको "ssh_config" क्लाइंट फ़ाइल में किसी दिए गए होस्टनाम, यहां तक कि वैश्विक चूक के आधार पर गुणों की एक अद्भुत राशि संग्रहीत करने की अनुमति देता है। यह फ़ाइल डिफ़ॉल्ट रूप से मौजूद नहीं है (प्रश्न पर टिप्पणियों के अनुसार), लेकिन इसे लिखा जाना चाहिए ~/.ssh/config।
यह पथ समतुल्य है:
~आपके घर की निर्देशिका, यह मेरे सिस्टम पर फैलता है /Users/jason।
.sshअग्रणी बिंदु इसे छिपा देता है। यदि आप टर्मिनल में हैं और आपके होम डायरेक्टरी में हैं, तो आप बस चला सकते हैं cd .sshऔर उसमें प्रवेश कर सकते हैं ।
configफ़ाइल का नाम है, यह कॉन्फ़िगरेशन मापदंडों के साथ एक सादा पाठ फ़ाइल है।
मैं इस फाइल का उपयोग उन सुरंगों को नियंत्रित करने के लिए करता हूं जिनका मैं हमेशा उपयोग करता हूं, कनेक्शन के लिए आवश्यक निजी कुंजी, उपयोगकर्ता नाम (यदि यह मेरे स्थानीय उपयोगकर्ता नाम से अलग है, आदि)
मैनपेज देखें, या तो man ssh_configआपकी अपनी मशीन के माध्यम से जिसमें सबसे उपयुक्त संस्करण होगा, या आप इसे OpenBSD की साइट से ऑनलाइन देख सकते हैं ।
मेरे ssh config फाइल के कुछ उदाहरण सामग्री हैं:
ControlMaster auto
ControlPath ~/.ssh/sockets/master-%r-%h-%p
VisualHostKey yes
Host serve
Hostname 8.8.8.8
User jason
IdentityFile ~/.ssh/id_rsa
LocalForward 5901 localhost:5901
व्हॉट्सएप पूरी तरह से व्यक्तिगत पसंद है, इसे वैल्यू से अलग कीज के अलावा आवश्यकता नहीं है।
पहली तीन लाइनें वैश्विक गुण हैं, वे हर एसएसएच कनेक्शन को प्रभावित करती हैं। दूसरा खंड एक मेजबान-विशिष्ट कॉन्फ़िगरेशन है।
Hostलाइन मेजबान टैग जब लागू आप का उपयोग करेगा निर्दिष्ट करता है ssh। पूर्व। ssh serve। इसे चलाते समय, यह अगली Hostपंक्ति तक सूचीबद्ध सभी गुणों को लोड करता है ।
चूंकि serveजरूरी नहीं कि एक DNS नाम है, मैं Hostnameयह निर्दिष्ट करता हूं कि यह वास्तव में (नहीं, वास्तव में मेरा नहीं) से कनेक्ट होना चाहिए। Userस्व व्याख्यात्मक है और बस स्पष्ट होना है, और IdentityFileनिजी कुंजी फ़ाइल का पथ है जो इसे कनेक्ट करने के लिए उपयोग करता है।
अंत में, LocalForwardमैं एसएसएच सुरंग के माध्यम से एक बंदरगाह अग्रेषण नियम स्थापित करता हूं जिसे मैं भेजता हूं।
विभिन्न वाक्यविन्यास सभी मैन पेज पर प्रलेखित हैं।
एक सादे पाठ पासवर्ड को परिभाषित करने के लिए कोई तंत्र नहीं है। SSH कनेक्शन सेट करते समय पासवर्ड प्रविष्टि ALWAYS इंटरैक्टिव है। यदि आप स्वचालित रूप से लॉग इन करना चाहते हैं, तो निजी कुंजी प्रमाणीकरण सेट करें । सादे पाठ पासवर्ड संग्रहीत करना बेवकूफी है, हमेशा।
मैं इस महान प्रभाव का उपयोग करें। और सबसे अच्छा हिस्सा? आपके सभी SSH कॉन्फ़िगरेशन अविश्वसनीय रूप से पोर्टेबल हैं, यह सिर्फ एक फाइल है जिसे आपको बैकअप / रिटेन करना है, और सिस्टम से सिस्टम के बीच ले जाना है! विंडोज के लिए इतना पोर्टेबल नहीं है, लेकिन जो वास्तव में वैसे भी रजिस्ट्री से निपटना पसंद करता है?
ssh_config(~/.ssh/config), लेकिन मैं अपनी गर्दन को बे पर रखूंगा और समझूंगा कि एक सादे पाठ फ़ाइल को परिभाषित प्रारूप के साथ संपादित करना हर किसी के लिए नहीं है। मैं इसकी स्थापना के लिए पुट्टी को बहुत अधिक श्रेय देता हूं (और बहुत दु: ख की बात है, यह भी माना जाता है)।