विंडोमैकसॉफ्टवेयरसेटिंग्ससुरक्षाएंड्रॉइडउत्पादकतालिनक्सप्रदर्शनएप्पलकॉन्फ़िगरेशन सभी

उबंटू पर एक SSH सर्वर कैसे सेट करें

संपादित 2 सप्ताह पहले द्वारा ExtremeHow संपादकीय टीम

एसएसएचसर्वरउबंटूलिनक्सनेटवर्किंगसुरक्षासेटअपऑपरेटिंग सिस्टमरिमोट एक्सेसप्रणाली

उबंटू पर एक SSH सर्वर कैसे सेट करें

अनुवाद अपडेट किया गया 4 सप्ताह पहले

परिचय

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

चरण 1: सिस्टम पैकेज अपडेट करना

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

sudo apt update

sudo कमांड का उपयोग आमतौर पर सिस्टम प्रशासन कार्यों के लिए आवश्यक उन्नत विशेषाधिकारों के साथ कमांड निष्पादित करने के लिए किया जाता है। apt update कमांड पैकेज रिपॉजिटरी से उपलब्ध पैकेजों की सूची को अपडेट करता है, सुनिश्चित करता है कि आपके पास नवीनतम संस्करणों तक पहुंच हो।

चरण 2: ओपनएसएसएच सर्वर स्थापित करना

उबंटू का SSH सर्वर पैकेज ओपनएसएसएच सर्वर कहलाता है। इसकी सरलता, सुरक्षा और मजबूती के कारण यह लिनक्स इकोसिस्टम में सबसे अधिक उपयोग किए जाने वाले SSH सर्वर पैकेजों में से एक है। ओपनएसएसएच सर्वर स्थापित करने के लिए, टर्मिनल में निम्नलिखित कमांड निष्पादित करें:

sudo apt install openssh-server

यह कमांड उबंटू पैकेज रिपॉजिटरी से ओपनएसएसएच सर्वर पैकेज प्राप्त करेगा और इसे आपके सिस्टम पर इंस्टॉल करेगा। स्थापना के दौरान, पैकेज प्रबंधक आपके लिए स्वचालित रूप से SSH सेवा भी शुरू कर देगा।

चरण 3: SSH सेवा की स्थिति की जांच करना

ओपनएसएसएच सर्वर के इंस्टॉल होने के बाद, आप पुष्टि करना चाहेंगे कि SSH सेवा सही ढंग से चल रही है या नहीं। SSH सेवा की स्थिति की जांच करने के लिए निम्नलिखित कमांड का उपयोग करें:

sudo systemctl status ssh

systemctl कमांड का उपयोग सिस्टम इकाइयों, जिसमें सेवाएं भी शामिल हैं, की स्थिति की जांच करने के लिए किया जाता है। जब आप SSH सेवा की स्थिति की जांच करते हैं, तो आपको एक संदेश दिखाई देना चाहिए जिसमें कहा गया हो कि सेवा "सक्रिय (चल रही है)" है। यदि यह नहीं चल रही है, तो आप इसे निम्नलिखित कमांड का उपयोग करके शुरू कर सकते हैं:

sudo systemctl start ssh

यदि आप चाहते हैं कि SSH सेवा बूट के समय स्वचालित रूप से शुरू हो, तो निम्नलिखित कमांड का उपयोग करें:

sudo systemctl enable ssh

चरण 4: SSH सर्वर को कॉन्फ़िगर करना

SSH सर्वर कॉन्फ़िगरेशन फ़ाइल /etc/ssh/sshd_config में स्थित है। यह फ़ाइल SSH सर्वर के विभिन्न मापदंडों, जिसमें पोर्ट नंबर, कुंजी विनिमय एल्गोरिदम और प्रमाणीकरण विधियाँ शामिल हैं, को नियंत्रित करती है। इस फ़ाइल को अपनी सुरक्षा और पहुँच आवश्यकताओं के अनुरूप कॉन्फ़िगर करना महत्वपूर्ण है।

डिफ़ॉल्ट पोर्ट बदलना

डिफ़ॉल्ट रूप से, SSH सर्वर पोर्ट 22 पर सुनता है। हालाँकि, डिफ़ॉल्ट पोर्ट को एक गैर-मानक पोर्ट में बदलने से सुरक्षा की एक और परत प्रदान करने में मदद मिल सकती है। पोर्ट बदलने के लिए, SSH कॉन्फ़िगरेशन फ़ाइल को किसी टेक्स्ट एडिटर के साथ खोलें, उदाहरण के लिए:

sudo nano /etc/ssh/sshd_config

#Port 22 पंक्ति को खोजें, और इसे निम्नानुसार बदलें:

Port 2222

पंक्ति को अनकमेंट करने के लिए शुरुआत से # हटा दें। सुनिश्चित करें कि आपके द्वारा चुना गया पोर्ट अन्य सेवाओं द्वारा उपयोग में नहीं है।

रूट लॉगिन को अक्षम करना

SSH ओवर रूट लॉगिन की अनुमति देना सुरक्षा जोखिम पैदा कर सकता है। इसे अक्षम करने की अनुशंसा की जाती है, निम्न पंक्ति को खोजें:

PermitRootLogin yes

और इसे निम्नानुसार बदलें:

PermitRootLogin no

ऐसा करने से उपयोगकर्ता गैर-रूट उपयोगकर्ता के रूप में लॉग इन करते हैं, और आवश्यक होने पर रूट में स्विच कर सकते हैं।

पब्लिक की प्रमाणीकरण सक्षम करना

पब्लिक की प्रमाणीकरण पासवर्ड प्रमाणीकरण की तुलना में अधिक सुरक्षित है। इसे सक्षम करने के लिए, सुनिश्चित करें कि sshd_config फ़ाइल में निम्नलिखित पंक्तियाँ सेट हैं:

PubkeyAuthentication yesAuthorizedKeysFile .ssh/authorized_keys

यह सेटिंग उपयोगकर्ता खातों के ~/.ssh/authorized_keys फ़ाइल में संग्रहीत SSH कुंजियों का उपयोग करके ग्राहकों को प्रमाणित करने की अनुमति देती है।

चरण 5: SSH सेवा को पुनरारंभ करना

SSH कॉन्फ़िगरेशन फ़ाइल में परिवर्तन करने के बाद, बदलावों को प्रभावी होने के लिए SSH सेवा को पुनरारंभ करना होगा:

sudo systemctl restart ssh

ध्यान दें कि यदि आपने पोर्ट बदल दिया है, तो SSH के माध्यम से कनेक्ट करते समय आपको नया पोर्ट निर्दिष्ट करना होगा। उदाहरण के लिए, यदि आपने SSH पोर्ट को 2222 में बदल दिया है, तो ssh user@hostname -p 2222 का उपयोग करें।

चरण 6: फ़ायरवॉल के नियम सेट करना

यदि आपके उबंटू सर्वर पर फ़ायरवॉल सक्षम है, तो आपको आने वाले SSH कनेक्शन की अनुमति देनी होगी। यह मानते हुए कि आप UFW (अनकम्प्लिकेटेड फ़ायरवॉल) का उपयोग कर रहे हैं, आप फ़ायरवॉल को सक्षम कर सकते हैं और SSH ट्रैफ़िक की अनुमति निम्नलिखित कमांड से कर सकते हैं:

sudo ufw allow sshsudo ufw enable

यदि आपने डिफ़ॉल्ट SSH पोर्ट बदल दिया है, तो ssh पोर्ट नंबर से बदलें, उदाहरण के लिए:

sudo ufw allow 2222

यह कमांड निर्दिष्ट पोर्ट पर SSH ट्रैफ़िक की अनुमति देने के लिए फ़ायरवॉल नियमों को समायोजित करता है।

चरण 7: SSH सर्वर का परीक्षण करना

यह सुनिश्चित करने के लिए कि आपका SSH सर्वर सही ढंग से सेट है, इसे किसी अन्य मशीन (या तो किसी अन्य कंप्यूटर या वर्चुअल मशीन) से कनेक्ट करने का प्रयास करें। निम्नलिखित कमांड का उपयोग करें:

ssh username@server_ip

username को सर्वर पर अपने वास्तविक उपयोगकर्ता नाम से बदलें और server_ip को अपने सर्वर के IP पता या होस्टनाम से बदलें। यदि आपने पोर्ट में बदलाव किया है, तो आपको इसे -p विकल्प का उपयोग करके निर्दिष्ट करना होगा, उदाहरण के लिए:

ssh username@server_ip -p 2222

यदि कनेक्शन सफल होता है, तो एक लॉगिन प्रॉम्प्ट दिखाई देगा, जिससे आपको SSH के माध्यम से अपने सर्वर में लॉग इन करने की अनुमति मिलती है।

चरण 8: SSH सुरक्षा को बढ़ाना

अनधिकृत पहुंच को रोकने के लिए आपके SSH सेटअप की सुरक्षा को और बढ़ाना महत्वपूर्ण है। यहाँ कुछ सुझाव दिए गए हैं:

Fail2Ban का उपयोग करना

Fail2Ban एक प्रोग्राम है जो असफल लॉगिन प्रयासों की निगरानी करके ब्रूट-फोर्स हमलों को रोकने में मदद करता है। इसे निम्नलिखित का उपयोग करके स्थापित करें:

sudo apt install fail2ban

डिफ़ॉल्ट रूप से, Fail2Ban 3 विफल लॉगिन प्रयासों के बाद IP पतों को 10 मिनट के लिए प्रतिबंधित करता है। आप /etc/fail2ban/jail.local में स्थित कॉन्फ़िगरेशन फ़ाइल को संपादित करके इन सेटिंग्स को कस्टमाइज़ कर सकते हैं।

उपयोगकर्ता एक्सेस को सीमित करना

केवल विशिष्ट उपयोगकर्ताओं को SSH एक्सेस की अनुमति देने पर विचार करें। आप यह sshd_config फ़ाइल में निम्न पंक्ति जोड़कर कर सकते हैं:

AllowUsers user1 user2

user1 और user2 को उन वास्तविक उपयोगकर्ता नामों से बदलें जिन्हें आप SSH एक्सेस करने की अनुमति देना चाहते हैं।

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

यदि आपको लेख की सामग्री में कुछ गलत लगता है, आप कर सकते हैं


टिप्पणियाँ