SSH को एक इंटरफ़ेस पर प्रतिबंधित करें


10

मैं आने वाले SSH कनेक्शन अनुरोध को केवल एक इंटरफ़ेस तक कैसे सीमित कर सकता हूं? मैं Ubuntu सर्वर 10.04 LST का उपयोग कर रहा हूं।

मैं केवल एक इंटरफ़ेस तक एसएसएच की पहुंच को लॉक करना चाहता हूं क्योंकि मैं अपने होम नेटवर्क के गेटवे के रूप में सर्वर का उपयोग करता हूं। एक इंटरफ़ेस डीएसएल मॉडेम / राउटर से जुड़ा है और दूसरा होम नेटवर्क से जुड़ा है। मैं केवल होम नेटवर्क के अंदर एसएसएच फॉर्म तक पहुंचने की अनुमति देना चाहता हूं।

क्या इस मामले में SSH को एक आईपी तक सीमित करना पर्याप्त है? या क्या मुझे इसे एक इंटरफेस में बंद करना होगा?


1
क्या आप "केवल एक इंटरफ़ेस" से आपके द्वारा स्पष्ट हो सकते हैं? क्या आपका मतलब है कि मशीन में एक से अधिक आईपी पता है और आप केवल एक आईपी पते पर एसएसएच सुनना चाहते हैं? या क्या आपका मतलब है कि आप एसएसएच पोर्ट पर इनबाउंड पैकेट को अन्य इंटरफेस पर गिराया जाना चाहते हैं? (आपका अनुरोध बहुत ही असामान्य है और यह संभव है कि आप गलत प्रश्न पूछ रहे हों।)
डेविड श्वार्ट्ज

@DavidSchwartz मैंने इंटरफ़ेस प्रतिबंध के लिए कहा क्योंकि मुझे यकीन नहीं था कि यह केवल एक आईपी तक एसएसएच पहुंच को प्रतिबंधित करने के लिए पर्याप्त है। मैंने अपने प्रश्न को और अधिक विस्तार के साथ पूरक किया।
wowpatrick

जवाबों:


12

निम्नलिखित फ़ाइल में:

 /etc/ssh/sshd_config 

आपको एक पंक्ति दिखाई देगी:

#ListenAddress 0.0.0.0

यह टिप्पणी की गई है, लेकिन ssh अनुरोधों के लिए सभी IP पतों पर सूचीबद्ध करने के लिए डिफ़ॉल्ट है। आप इसे बदल सकते हैं ताकि यह उस इंटरफ़ेस का आईपी पता हो, जिस पर आप कनेक्शन स्वीकार करना चाहते हैं, और इतना ही नहीं कि आईपी पता कनेक्शन स्वीकार कर लेगा:

ListenAddress 111.222.111.222

एक बार बदले गए sshd सेवा को फिर से शुरू करें।


4
यह उन इंटरफेस को प्रतिबंधित नहीं करेगा जिन पर SSH काम कर सकता है, केवल गंतव्य IP पता। (यह वही हो सकता है जो ओपी वास्तव में चाहता था। लेकिन ओपी ने ऐसा नहीं पूछा।)
डेविड श्वार्ट्ज

@DavidSchwartz धन्यवाद - क्या आप स्पष्ट कर सकते हैं? यदि एक आईपी एड्रेस एक इंटरफेस से जुड़ा हुआ है, तो क्या कोई अन्य इंटरफ़ेस किसी भी तरह से इस सेटअप के साथ कनेक्शन स्वीकार कर सकता है (मुझे लगता है कि अगर अग्रेषण सक्षम था तो यह काम करेगा)।
पॉल

@DavidSchwartz आह, मैं आपकी टिप्पणी ऊपर देख रहा हूं।
पॉल

1
अग्रेषण केवल एक इंटरफ़ेस पर प्राप्त पैकेट को संदर्भित करता है जिसे दूसरे द्वारा प्रेषित किया जाना है। यह एक अंतरफलक पर प्राप्त पैकेट को स्वीकार करने के लिए आवश्यक नहीं है, जिसे इसके गंतव्य पते के अलावा सौंपा गया है। लिनक्स एक मॉडल का उपयोग करता है जहां आईपी पते सिस्टम से संबंधित हैं, इंटरफेस के लिए नहीं - सभी इंटरफेस एक एकल होस्ट को कनेक्ट करते हैं।
डेविड श्वार्ट्ज

2

एक फ़ायरवॉल स्थापित करने का प्रयास करें और केवल एक इंटरफ़ेस पर SSH की अनुमति दें। मेरी प्राथमिकताएँ Shorewall है जो उबंटू का एक संस्थापित पैकेज है। शुरू होने से पहले आपको इसे कॉन्फ़िगर करना होगा, लेकिन यह अच्छी तरह से प्रलेखित है और कई उदाहरण कॉन्फ़िगरेशन के साथ आता है।

मैं ज्यादातर बंद फायरवॉल का उपयोग करता हूं, जिसमें केवल पोर्ट की आवश्यकता होती है। यदि आप सब करना चाहते हैं तो इंटरफ़ेस सीमित है SSH की अनुमति है आप अन्य इंटरफेस पर ssh के लिए एक प्रतिक्रिया या DROP कार्रवाई का उपयोग कर सकते हैं। मैं सुझाव दूंगा कि यदि आप एक फ़ायरवॉल का निर्माण कर रहे हैं तो आप इंटरनेट पर कम से कम पहुंच का सामना करने वाले इंटरफेस का उपयोग कर सकते हैं।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.