उपयोग ProxyCommand
देखते हैं man ssh_config
। मैं उपयोग करने की सलाह देता हूं ProxyCommand
। चलो अपने मूल परिदृश्य लेते हैं:
- कंप्यूटर A (आपका कंप्यूटर)
- कंप्यूटर बी (एक प्रॉक्सी होस्टनाम)
- कंप्यूटर सी (केवल कंप्यूटर बी से एसएसएच के माध्यम से उपलब्ध)
~/.ssh/config
निम्नलिखित सामग्री के साथ संपादित करें ।
Host computerb
HostName <hostname or IP of Computer B>
Host computerc 192.168.35.*
ProxyCommand ssh computerb nc -w 180 %h %p
अब आप पारदर्शी रूप से Computer C. उदा तक पहुँच सकेंगे
ssh computerc
इस विधि के लाभ
ज्यादा सुरक्षित
आपको केवल कंप्यूटर ए (आपके कंप्यूटर) पर होने के लिए आपकी निजी कुंजी की आवश्यकता है। nc
आदेश एक प्रॉक्सी जिसमें SSH के माध्यम से यातायात एन्क्रिप्ट करेगा रूप में कार्य करेगा। इसमें प्रमाणीकरण शामिल है। अपनी निजी कुंजी को कई सर्वरों में वितरित करना एक बहुत बुरा विचार है (जैसा कि आपकी निजी कुंजी के साथ कोई भी समझौता सर्वर अंततः आपकी निजी कुंजी से समझौता करता है)।
कई स्थलों से मेल खाता है
एक का उपयोग कर कई गंतव्य कंप्यूटरों का मिलान किया जा सकता है Host
। 192.168.35.0/24
कंप्यूटर बी के माध्यम से प्रॉक्सी करने के लिए एक विशिष्ट नेटवर्क (उदाहरण के लिए उपरोक्त उदाहरण में) के भीतर एक एकल कंप्यूटर या कोई कंप्यूटर । यह एक उपनाम के रूप में भी कार्य करता है।
ssh 192.168.35.27
उपरोक्त उदाहरण में, यह कंप्यूटर बी के माध्यम से आईपी पते पर जाने के लिए प्रॉक्सी करेगा।
डेज़ी श्रृंखला परदे के पीछे
इस विधि का उपयोग करके आप आवश्यक के रूप में कई स्वचालित परदे के पीछे श्रृंखला डेज़ी कर सकते हैं। उदाहरण के लिए, आप एक कंप्यूटर डी जोड़ सकते हैं जो केवल कंप्यूटर सी से उपलब्ध है और यह पारदर्शी रूप से काम करेगा।
Host computerd
ProxyCommand ssh computerc nc -w 180 %h %p
ssh computerd
उपरोक्त ssh_config
उदाहरणों में कंप्यूटर सी और कंप्यूटर बी के माध्यम से स्वचालित रूप से प्रॉक्सी करेगा ।