लिनक्स सर्व्हरला जोडण्याचा मुख्य मार्ग म्हणजे SSH प्रोटोकॉल . या प्रकारचे कनेक्शन सुरक्षित असते, कारण त्याद्वारे हस्तांतरित होणारा सर्व डेटा एनक्रिप्टेड असतो. SSH कनेक्शन स्थापित करण्यासाठी , तुम्हाला ज्या रिमोट सर्व्हरला जोडायचे आहे त्यावर आणि वापरकर्त्याच्या बाजूच्या क्लायंटवर ते कॉन्फिगर करावे लागेल. SSH कनेक्शनसाठी भरपूर सॉफ्टवेअर उपलब्ध आहेत. लिनक्ससाठी, OpenSSH पॅकेज सर्वात लोकप्रिय आहे आणि विंडोजसाठी लोक बहुतेकदा PuTTY वापरतात.
चला उदाहरण म्हणून उबंटू सर्व्हर १८.०४ वापरून सर्व्हर कॉन्फिगरेशन जवळून पाहू आणि नंतर लिनक्स आणि विंडोजवरून सर्व्हरशी कनेक्ट करण्याचा प्रयत्न करू.
आपण जे काही करणार आहोत ते एका सामान्य वापरकर्त्याच्या खात्यातूनच असेल. या प्रकरणात, आम्ही “ मिहाईल ” नावाचा वापरकर्ता तयार केला आहे आणि “ रूट ” खाते पूर्वनिर्धारितपणे अक्षम केलेले आहे.
सर्व्हर साइड सेटअप
ही आज्ञा चालवून पॅकेज सेट करा:
sudo apt install openssh-server
इंस्टॉलेशन पूर्ण झाल्यानंतर, सेवा चालू आहे याची खात्री करा. ही आज्ञा वापरा:
systemctl status sshd
" सक्रिय (चालू) " स्थितीचा अर्थ असा आहे की सेवा सक्षम आहे आणि सामान्यपणे कार्यरत आहे.
फायरवॉलद्वारे येणारे कनेक्शन ब्लॉक होऊ नये म्हणून, ते बंद करा, कारण या लेखात आपण नेटवर्क फायरवॉल कॉन्फिगर करणार नाही आहोत.
ही आज्ञा वापरा:
sudo ufw disable
या टप्प्यावर तुम्ही आधीच सर्व्हरशी कनेक्ट होऊ शकता. डीफॉल्ट सेटिंग्जसह सर्व्हर पासवर्ड-आधारित प्रमाणीकरणासह मानक पोर्ट २२ शी कनेक्शनची परवानगी देतो.
Linux वरून SSH कनेक्शन
नियमानुसार, OpenSSH क्लायंट Linux वर डिफॉल्टनुसार स्थापित केलेला असतो आणि त्याला अतिरिक्त मॅन्युअल कॉन्फिगरेशनची आवश्यकता नसते. ssh कमांडच्या मदतीने टर्मिनलवरून कनेक्शन स्थापित केले जाऊ शकते. या प्रकरणात पॅरामीटर्स रिमोट सर्व्हरचे वापरकर्तानाव आणि IP पत्ता असतील. आमच्या चाचणी सर्व्हरवर जे आम्ही उदाहरण म्हणून वापरत आहोत तेथे फक्त एकच खाते आहे "mihail", म्हणून आम्ही हे वापरू.
ssh [email protected]
पहिल्या कनेक्शनच्या वेळी तुम्हाला डेटाबेसमध्ये सर्व्हरची पब्लिक की जोडण्यास पुष्टी द्यावी लागेल, म्हणून “ yes ” असे उत्तर द्या. त्यानंतर तुम्ही पासवर्ड टाकू शकता. कनेक्शन यशस्वीरित्या झाल्यास, तुम्हाला सर्व्हरच्या कमांड लाइनवर एक स्वागत संदेश दिसेल. आता सर्व कमांड्स थेट रिमोट सर्व्हरवर कार्यान्वित केल्या जातील.
विंडोज वरून एसएसएच
पुटी (Putty) उघडा आणि कनेक्शन पॅरामीटर्स सेट करा. “ कनेक्शन प्रकार” (Connection type ) स्विच SSH वर चालू असल्याची खात्री करा. “ होस्ट नेम ” (Host Name) फील्डमध्ये आयपी ॲड्रेस (IP address) टाका , “ पोर्ट ” (Port) मध्ये डीफॉल्ट व्हॅल्यू 22 टाका आणि “ ओपन ” (Open ) वर क्लिक करा.
पहिल्या कनेक्शनच्या वेळी पुटी तुम्हाला विचारेल की तुमचा या सर्व्हरवर विश्वास आहे का, म्हणून “ होय ” वर क्लिक करा.
लॉगिन आणि पासवर्ड टाकल्यानंतर, तुम्हाला रिमोट सर्व्हरची कमांड लाइन दिसेल.
की द्वारे प्रमाणीकरण. सुरक्षिततेची वाढती पातळी
जेव्हा एखादा क्लायंट SSH द्वारे सर्व्हरशी सुरक्षित कनेक्शन स्थापित करण्याचा प्रयत्न करत असतो, तेव्हा कनेक्शनला परवानगी देण्यापूर्वी सर्व्हरला क्लायंटला प्रमाणित करणे (सत्यापित करणे) आवश्यक असते. आधी सांगितल्याप्रमाणे, पासवर्ड-आधारित प्रमाणीकरण सहसा डीफॉल्टनुसार वापरले जाते. ते मजबूत सुरक्षा प्रदान करत नाही, कारण ते क्रूरपणे वापरण्याचा नेहमीच एक मार्ग असतो. याशिवाय, स्क्रिप्ट्स वापरून SSH कनेक्शनवर पासवर्ड प्रमाणीकरण लागू होत नाही.
या प्रकारच्या कामांसाठी की द्वारे एक विशेष प्रमाणीकरण पद्धत आहे. मुद्दा असा आहे की क्लायंट खाजगी आणि सार्वजनिक की जनरेट करतो आणि नंतर सार्वजनिक की सर्व्हरला पाठवली जाते. त्यानंतर सर्व्हरशी कनेक्ट होण्यासाठी तुम्हाला पासवर्डची आवश्यकता नाही, कारण प्रमाणीकरण सार्वजनिक आणि खाजगी क्लायंट कीवर आधारित केले जाते. चांगल्या पातळीची सुरक्षा प्रदान करण्यासाठी, खाजगी कीचा प्रवेश मर्यादित केला पाहिजे. खाजगी की क्लायंटच्या बाजूला संग्रहित केली जाते आणि नेटवर्कद्वारे हस्तांतरित केली जात नाही या वस्तुस्थितीमुळे, ही पद्धत अधिक सुरक्षित मानली जाते.
Linux वर की द्वारे प्रमाणीकरण
चला ssh-keygen युटिलिटी सॉफ्टवेअरच्या मदतीने क्लायंटवर पब्लिक आणि प्रायव्हेट की जनरेट करूया. हे टूल प्रायव्हेट कीचा मार्ग बदलण्याचे आणि अतिरिक्त सुरक्षिततेसाठी पासफ्रेज एंटर करण्याचे सुचवेल. सर्व विनंत्यांवर एंटर दाबून सर्व पॅरामीटर्स डीफॉल्टनुसार सोडा.
परिणामी, होम डिरेक्टरीमधील .ssh फोल्डरमध्ये तुम्हाला id_rsa आणि id_rsa.pub नावाच्या दोन फाइल्स तयार झालेल्या आढळतील, ज्यामध्ये अनुक्रमे प्रायव्हेट आणि पब्लिक की असतात.
त्यानंतर, तुम्हाला पब्लिक की सर्वरवर पाठवावी लागेल. त्यासाठी, “ id_rsa.pub ” फाईलमधील मजकूर सर्वरवरील “ ~/.ssh/authorized_keys ” फाईलमध्ये कॉपी करा. आपण “ ssh-copy-id ” टूलच्या मदतीने सर्वात सोपा मार्ग अवलंबूया. नेहमीच्या कनेक्शनप्रमाणेच, सर्वरचा लॉगिन आणि आयपी ॲड्रेस टाका. तुम्ही पासवर्ड टाकल्यानंतर, क्लायंटची पब्लिक की आपोआप सर्वरवर कॉपी होईल. ही कमांड चालवा:
ssh-copy-id [email protected]
हे सर्व केल्यानंतर, सर्व्हरला पासवर्ड टाकण्याची आवश्यकता राहणार नाही.
विंडोजवर की द्वारे प्रमाणीकरण
PUTTYGEN उघडा आणि “ Generate ” वर क्लिक करा. कीज जनरेट करण्यासाठी, तुम्हाला फक्त स्क्रीनवर माउस फिरवायचा आहे आणि हे टूल आपोआप यादृच्छिकपणे कीज जनरेट करेल.
कीज तयार झाल्यावर, “ सेव्ह प्रायव्हेट की ” वर क्लिक करा आणि तुमच्या डिस्कवरील प्रायव्हेट की असलेल्या फाईलमध्ये ती सेव्ह करा. तुम्ही तुमच्या आवडीचा कोणताही पाथ सेट करू शकता, पण थोड्या वेळाने तुम्हाला तो पुटीमध्ये (Putty) नमूद करावा लागेल. त्यानंतर विंडोच्या सर्वात वरच्या भागातून पब्लिक की कॉपी करा.
चला, पब्लिक की टर्मिनलवर कॉपी करून पाठवूया. पुटी (Putty) उघडून नेहमीप्रमाणे सर्व्हरला कनेक्ट करा. आता “ .ssh/authorized_keys ” तयार करून इतर वापरकर्त्यांना ती फाईल वापरण्यापासून प्रतिबंधित करूया, जेणेकरून ती फक्त तयार करणाऱ्यालाच उपलब्ध असेल.
mkdir .ssh
touch .ssh/authorized_keys
chmod 700 .ssh
chmod 600 .ssh/authorized_keys
फाइल तयार केल्यानंतर, क्लायंटची पब्लिक की त्यात घाला. मागील टप्प्यावर आपण पब्लिक की क्लिपबोर्डवर कॉपी केली होती. क्लिपबोर्डमध्ये काय आहे ते फाइलमध्ये रेकॉर्ड करण्यासाठी कॅट कमांड आणि आउटपुट रीडायरेक्शन वापरा.
cat > .ssh/authorized_keys
तुम्ही कमांड टाकल्यानंतर, टर्मिनल विंडोमध्ये उजवे माऊस बटण क्लिक करा आणि क्लिपबोर्डमधील मजकूर पेस्ट करा. टाकलेल्या मजकुराची पुष्टी करण्यासाठी, “ Ctrl+D ” शॉर्टकट दाबा आणि सर्व्हरवरून डिस्कनेक्ट व्हा.
आता पुट्टीमध्ये प्रायव्हेट कीचा मार्ग निर्दिष्ट करू आणि पुन्हा सर्व्हरशी कनेक्ट करू.
आतापासून, सर्व्हरशी कनेक्ट होण्यासाठी तुम्हाला फक्त वापरकर्तानाव प्रविष्ट करावे लागेल. जर तुम्ही योग्य खाजगी की नसलेल्या दुसऱ्या डिव्हाइसवरून सर्व्हरशी कनेक्ट करण्याचा प्रयत्न करत असाल, तर सर्व्हर पासवर्डची विनंती करेल. की-आधारित प्रमाणीकरण सेट केल्यानंतर, तुम्ही पासवर्डद्वारे प्रवेश नाकारू शकता.