मैं SSH को कैसे सेटअप कर सकता हूं ताकि यह मेरे स्थानीय नेटवर्क तक सीमित रहे?


33

मैं SSH का उपयोग करके अपने राउटर के माध्यम से 8.04 पर चलने वाले अपने पुराने लैपटॉप पर अपने नए लैपटॉप को 11.10 से जोड़ने की कोशिश कर रहा हूं।

यह सवाल यहाँ ubuntuforums पर पूछा और उत्तर दिया गया है:

http://ubuntuforums.org/showthread.php?t=1648965

मैंने सोचा कि यहाँ अधिक निश्चित उत्तर देना उपयोगी होगा।

नोट: मुझे पहले लैपटॉप पर ओपनश-सर्वर स्थापित करने की आवश्यकता थी जिसे मैं फायरस्टार का उपयोग करके अपने फ़ायरवॉल में एसएसएच पोर्ट को कनेक्ट करने और खोलने की कोशिश कर रहा था।


क्या आप हमें बता सकते हैं कि उस थ्रेड पर स्लॉ के उत्तर के बारे में पर्याप्त "निश्चित" क्या नहीं है? अन्यथा आपका प्रश्न अस्पष्ट लगता है।
d_inevitable

@d_inevitable एक के लिए, यह एकमात्र उत्तर नहीं है और इसे अन्यथा सही के रूप में इंगित नहीं किया गया है। यह वह है जिसे मैंने चुना होगा, लेकिन यही कारण है कि मुझे लगा कि इस प्रश्न को स्थानांतरित करना उपयोगी होगा। दो स्थानीय मशीनों के बीच SSH को कॉन्फ़िगर करने पर सामान्य दिशाओं या एक सहायक लिंक को शामिल करने में भी मदद मिल सकती है।
केवैलवेल

जवाबों:


46

आप कई तरीकों से अपने ssh सर्वर तक पहुँच को प्रतिबंधित कर सकते हैं।

IMO सबसे महत्वपूर्ण ssh कुंजियों का उपयोग करना और पासवर्ड प्रमाणीकरण को अक्षम करना है।

विवरण के लिए निम्नलिखित विकी पृष्ठ देखें

https://help.ubuntu.com/community/SSH/OpenSSH/Keys

https://help.ubuntu.com/community/SSH/OpenSSH/Configuring#Disable_Password_Authentication

आप कई तरीकों से एक विशिष्ट सबनेट तक पहुंच को प्रतिबंधित कर सकते हैं। मुझे लगता है कि आपका ssh सर्वर सबनेट 192.168.0.0/16 पर 192.168.0.10 के आईपी पते के साथ है, तदनुसार समायोजित करें;)

रूटर

राउटर का उपयोग करने के लिए रक्षा की एक पंक्ति है। UPnP को अक्षम करना सुनिश्चित करें और पोर्ट अग्रेषण की अनुमति न दें।

SSH विन्यास

आप में कई विकल्प सेट कर सकते हैं /etc/ssh/sshd_config। एक सुनने का पता है। यदि आप अपने सबनेट पर एक सुन पता सेट करते हैं। एक निजी आईपी पता इंटरनेट पर नियमित नहीं है।

http://compnetworking.about.com/od/workingwithipaddresses/f/privateipaddr.htm

ListenAddress 192.168.0.10

आप AllowUsers का उपयोग भी कर सकते हैं

AllowUsers you@192.168.0.0/16

कुछ हद तक संबंधित, आप पोर्ट भी बदल सकते हैं

Port 1234

Http://manpages.ubuntu.com/manpages/precise/man5/sshd_config.5.html देखें

टीसीपी आवरण

जैसा कि मंचों पोस्ट पर उल्लिखित है, आप टीसीपी आवरण का उपयोग कर सकते हैं। टीसीपी आवरण 2 फ़ाइलों का उपयोग करता है, /etc/hosts.allowऔर/etc/hosts.deny

संपादित करें /etc/hosts.allowऔर अपना सबनेट जोड़ें

sshd : 192.168.0.

सभी को संपादित करें /etc/hosts.denyऔर अस्वीकार करें

ALL : ALL

Http://ubuntu-tutorials.com/2007/09/02/network-security-with-tcpwrappers-hostsallow-and-hostsdeny/ देखें

फ़ायरवॉल

अंतिम आप अपने सर्वर को फ़ायरवॉल कर सकते हैं। आप iptables, ufw, या gufw का उपयोग कर सकते हैं।

iptables

sudo iptables -I INPUT -p tcp --dport 22 -s 192.168.0.0/16 -j ACCEPT
sudo iptables -A INPUT -p tcp --dport 22 -j REJECT

कृपया iptables में DROP का उपयोग न करें, http://www.chiark.greenend.org.uk/~peterb/network/drop-vs-reject देखें

UFW

sudo ufw allow from 192.168.0.0/16 to any port 22

gufw में एक ग्राफिकल इंटरफ़ेस है

GUFW

Https://help.ubuntu.com/community/UFW देखें

https://help.ubuntu.com/community/IptablesHowTo


कुछ नेटवर्क 10.0 एड्रेस के रूप में 10.0.0.0 का उपयोग करते हैं, उस स्थिति में 10.0.0.0-10.255.255.255 के लिए अनुमति देने के लिए 10.0.0.0/8 के लिए विकल्प 192.168.0.0/24। यदि आप केवल एक आईपी की अनुमति देना चाहते हैं, तो 192.168.1.2/32 जैसे कुछ का उपयोग करें। एक बहुत ही वर्बोज़ स्पष्टीकरण [ serverfault.com/q/49765/51929acing(How
सबनेटिंग

1
कृपया iptables में DROP का उपयोग न करें - chiark.greenend.org.uk/~peterb/network/drop-vs-reject
Panther

उस पृष्ठ में REJECT पर DROP का उपयोग करने के संभावित कारण के रूप में स्पूफ़ किए गए IP का उल्लेख नहीं है। Sec.SE पर यह उत्तर बताता है कि यह वास्तव में प्रासंगिक क्यों नहीं है (हालांकि स्रोत पैकेट लौटे पैकेट से बड़े हैं)।
लेकेनस्टाइन

@Lekensteyn - मैंने उस लिंक में स्पूफ़ किए गए IP के लिए चर्चा नहीं देखी। जैसा कि आप सुझाव देते हैं, DDoS और स्पूफ़्ड IP इस चर्चा से परे हैं और मुझे विश्वास नहीं है कि DROP किसी भी चीज़ के लिए REJECT से बेहतर है। DDos जटिल हैं और DDos के कारण के बारे में जानकारी के बिना बचाव करना असंभव है। उदाहरण के लिए, मैंने WP को DDoS के रूप में उपयोग किया है और समस्या को हल करने के लिए WP के समुचित विन्यास में और बहुत कम या कुछ भी ipbables के साथ कुछ नहीं करना है।
पैंथर

ListenAddressसबसे सरल और सबसे सुरुचिपूर्ण समाधान की तरह लगता है
code_monk

1

ssh (सिक्योर शेल) का उपयोग डेटा को सुरक्षित रूप से एक्सेस और ट्रांसफर करने के लिए किया जाता है (RSA_KEYS जोड़ी का उपयोग किया जाता है)। आप दो तरीकों से ssh का उपयोग करके डेटा तक पहुँच सकते हैं। कमांड लाइन 2. फ़ाइल ब्राउज़र का उपयोग कर

कमांड लाइन: इसके लिए आपको कुछ भी इंस्टॉल करने की आवश्यकता नहीं है। पहला कार्य अन्य कंप्यूटर में लॉग-इन है।

ssh other_computer_username@other_computer_ip

यह कमांड एक पासवर्ड मांगेगा जो अन्य कंप्यूटर का पासवर्ड (विशिष्ट उपयोगकर्ता नाम के लिए) है। आपने अभी अन्य कंप्यूटर के शेल में लॉग इन किया है। सोचें कि यह टर्मिनल आपके कंप्यूटर शेल टर्मिनल की तरह है। आप शेल के उपयोग से वह सब कुछ कर सकते हैं जो आप अपने कंप्यूटर में कर सकते हैं

फ़ाइल ब्राउज़र: आपको ओपनश-सर्वर स्थापित करना होगा

sudo apt-get install openssh-server

फ़ाइल-> connectToServer में लॉग-इन करने के लिए

यहाँ छवि विवरण दर्ज करें


कमांड लाइन के निर्देश पहली बात थी जो मैंने कोशिश की थी। मैं अपने अन्य कंप्यूटर को उसके LAN IP पर पिंग करने में सक्षम था। लेकिन जब मैं एसएसएच की कोशिश करता हूं, तो यह लटक जाता है। इसलिए मुझे लगता है कि मुझे अपने दूसरे कंप्यूटर को पहले एसएसएच एक्सेस की अनुमति देने के लिए कॉन्फ़िगर करना होगा।
18

सुनिश्चित करें कि आपका राउटर 22 पोर्ट या ssh
shantanu

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