होम सर्वर सेट करने के कई कारण हैं। आप इसे मीडिया सर्वर, फ़ाइल सर्वर या स्थानीय बैकअप सर्वर के रूप में उपयोग कर सकते हैं। मूल रूप से, आपकी कोई भी फाइल जिसे ऑनलाइन होने की आवश्यकता नहीं है, वह होम सर्वर के लिए अच्छे उम्मीदवार हैं। लिनक्स-संचालित होम सर्वर स्थापित करना अपेक्षाकृत आसान है, खासकर इन दिनों। उस ने कहा, उस सर्वर को सुरक्षित रखना पूरी तरह से एक और कहानी है। सुरक्षा जितनी महत्वपूर्ण है उतनी ही मुश्किल भी हो सकती है।
केवल वही इंस्टॉल करें जिसकी आपको बिल्कुल आवश्यकता है
अपने होम सर्वर को सुरक्षित रखने के सबसे आसान तरीकों में से एक है शुरुआत से ही सुरक्षा को ध्यान में रखना। यह स्थापना के साथ शुरू होता है। क्या आप सुनिश्चित नहीं हैं कि आपको किसी एप्लिकेशन या सेवा की आवश्यकता है? इसे स्थापित न करें। आप इसे बाद में कभी भी स्थापित कर सकते हैं।
यदि आपने कई बार लिनक्स स्थापित किया है, तो यह और भी आसान है। डिफ़ॉल्ट के साथ चिपके रहने के बजाय, उन मोड का उपयोग करें जो आपको इंस्टॉलेशन पर सबसे अधिक नियंत्रण देते हैं। कभी-कभी इन्हें "विशेषज्ञ मोड" या कुछ इसी तरह का नाम दिया जाता है।
इंस्टॉल विकल्पों पर सावधानीपूर्वक नज़र रखने से आप बाद में सुरक्षा कारणों से सेवाओं को अक्षम करने में लगने वाले समय की बचत कर सकते हैं।
सुडो कॉन्फ़िगर करें
इससे पहले कि आप किसी अन्य कदम पर आगे बढ़ें, आपको sudo
. को कॉन्फ़िगर करना होगा . क्यों? क्योंकि एक बार हमारे यहां हो जाने के बाद, आप SSH के माध्यम से अपने सर्वर में लॉग इन करेंगे, और आप रूट खाते के रूप में लॉग इन नहीं कर पाएंगे। अपने सिस्टम में कोई और बदलाव करने के लिए, आपको sudo
. का उपयोग करना होगा ।
सबसे पहले, यह देखने के लिए जांचें कि क्या आप पहले से ही sudo
. का उपयोग करने में सक्षम हैं . अपने उपयोगकर्ता खाते से, USERNAME के बजाय अपने उपयोगकर्ता नाम के साथ निम्नलिखित चलाएँ:
sudo -lU USERNAME
यदि आप एक संदेश प्रदर्शित करते हुए देखते हैं कि आपका उपयोगकर्ता नाम "(ALL) ALL" या कुछ इसी तरह का चल सकता है, तो आप आगे बढ़ने के लिए तैयार हैं।
अब, अपने सर्वर पर रूट खाते के रूप में, "/ etc / sudoers" फ़ाइल को संपादित करने के लिए निम्नलिखित चलाएँ। यदि आप किसी अन्य संपादक को पसंद करते हैं, तो नैनो के बजाय उसका उपयोग करें।
EDITOR=nano visudo
USERNAME के बजाय अपने उपयोगकर्ता नाम के साथ निम्नलिखित को शामिल करने के लिए फ़ाइल को संपादित करें:
USERNAME ALL=(ALL) ALL
SSH कॉन्फ़िगर करें
हो सकता है कि आपने अपने होम सर्वर पर पहले से ही SSH सक्षम किया हो। वास्तव में, आप शायद ऐसा करते हैं, क्योंकि यह आमतौर पर आपके सर्वर के साथ इंटरैक्ट करने का तरीका होता है।
सबसे पहले, सुनिश्चित करें कि ओपनएसएसएच स्थापित है। यदि आप किसी अन्य वितरण का उपयोग करते हैं, तो आपका आदेश अलग-अलग होगा, लेकिन पैकेज का नाम काफी सुसंगत होना चाहिए। उबंटू पर, निम्नलिखित चलाएँ:
sudo apt install openssh-server
पासवर्ड प्रमाणीकरण की तुलना में कुंजी-आधारित प्रमाणीकरण का उपयोग करना अधिक सुरक्षित है, इसलिए हम इस तरह से काम करने के लिए SSH की स्थापना करेंगे। ऐसा करने के लिए, सुनिश्चित करें कि आप उस क्लाइंट पर काम कर रहे हैं जिसे आप सर्वर से कनेक्ट करने की योजना बना रहे हैं, न कि सर्वर से। सबसे पहले, आप यह सुनिश्चित करना चाहते हैं कि आपके पास पहले से कोई SSH कुंजियाँ नहीं हैं:
ls ~/.ssh/
यदि आप सूचीबद्ध फ़ाइल नामों में "id_rsa" और "id_rsa.pub" देखते हैं, तो आपके पास पहले से ही SSH कुंजियाँ हैं। इस अगले चरण को छोड़ दें।
ssh-keygen -t rsa -b 4096 -C "[email protected]"
अब आप SSH कुंजी को अपने सर्वर पर कॉपी करेंगे:
ssh-copy-id USERNAME@SERVER
होम सर्वर के लिए, हो सकता है कि आप किसी नाम के बजाय अपने सर्वर के लिए IP पते का उपयोग कर रहे हों। यदि आप अपने सर्वर का नाम नहीं जानते हैं, तो ऊपर दिए गए सर्वर के बजाय अपने आईपी पते का उपयोग करें।
अब हम आपकी SSH सेटिंग्स को और अधिक सुरक्षित करने के लिए उन्हें संपादित करेंगे। उस क्लाइंट से अपने सर्वर में लॉग इन करें जिस पर आपने कुंजियाँ बनाई हैं। यह आपको इस चरण के बाद फिर से लॉग इन करने में सक्षम करेगा। nano
. की जगह, निम्न को चलाएँ अपनी पसंद के संपादक के साथ।
sudo nano /etc/ssh/sshd_config
फ़ाइल को संपादित करें और निम्न सेटिंग्स के साथ। ये फ़ाइल में विभिन्न स्थानों पर स्थित होंगे। सुनिश्चित करें कि कोई डुप्लीकेट नहीं हैं, क्योंकि सेटिंग के केवल पहले उदाहरण का पालन किया जाएगा।
ChallengeResponseAuthentication no PasswordAuthentication no UsePAM no PermitRootLogin no
अब आपको निम्न में से किसी एक आदेश के साथ SSH सर्वर को पुनरारंभ करने की आवश्यकता है।
उबंटू पर, रन करें:
sudo systemctl restart ssh
फ़ायरवॉल कॉन्फ़िगर करें
आपके द्वारा चलाई जा रही सेवाओं और आपका सर्वर इंटरनेट से कितना कनेक्ट होता है, इसके आधार पर, आप फ़ायरवॉल चलाना चाह सकते हैं। इसके लिए कुछ विकल्प हैं, लेकिन Linux पर आजमाया हुआ और सही तरीका iptables है।
iptables सेट करना इस लेख के दायरे से बाहर है, लेकिन चिंता न करें। आपकी मशीन पर iptables को कॉन्फ़िगर करने के लिए हमारे पास एक संपूर्ण मार्गदर्शिका है।
फ़ायरवॉल सेट करने का एक और आसान तरीका ufw
. का उपयोग करना है . आप इसे कमांड के साथ इंस्टॉल कर सकते हैं:
sudo apt install ufw
डिफ़ॉल्ट रूप से, यह सभी बंदरगाहों को अवरुद्ध कर देगा। ऑनलाइन और ssh एक्सेस को सक्षम करने के लिए, 80, 443, और 22 पोर्ट खोलने के लिए निम्न ufw कमांड चलाएँ:
sudo ufw allow 80 sudo ufw allow 443 sudo ufw allow 22
और अंत में, ufw सेवा को सक्षम करें:
sudo ufw enable
अप टू डेट रहें
सर्वर के बारे में भूलना आसान हो सकता है अगर वे सिर्फ काम करते हैं, लेकिन यह खतरनाक हो सकता है। अपने सॉफ़्टवेयर को अद्यतित रखना सुनिश्चित करें। आप अनअटेंडेड अपग्रेड का उपयोग कर सकते हैं, लेकिन ये अप्रत्याशित हो सकते हैं। सबसे सुरक्षित तरीका यह सुनिश्चित करने के लिए नियमित साप्ताहिक या मासिक सर्वर रखरखाव अपॉइंटमेंट शेड्यूल करना है कि सब कुछ सूंघने के लिए है।
यहां से कहां जाएं
अब आपके पास अपने सर्वर को बाहरी खतरों से सुरक्षित रखने के लिए एक अच्छी शुरुआत है। क्या होगा यदि आपको अपने सर्वर को घर से एक्सेस करने की आवश्यकता है, यद्यपि? आपके द्वारा खोला गया प्रत्येक दरवाजा संभावित रूप से एक हमलावर द्वारा उपयोग किया जा सकता है, और प्रत्येक खुला बंदरगाह आपकी भेद्यता को बढ़ाता है।
अपने होम नेटवर्क को बाहर से एक्सेस करने के सबसे आसान तरीकों में से एक वीपीएन का उपयोग करना है, जो इस लेख के दायरे से बाहर है, लेकिन चिंता न करें, हमने आपको कवर किया है। आपके विकल्प क्या हैं, इसका अंदाजा लगाने के लिए उपलब्ध सर्वोत्तम सुरक्षित वीपीएन सेवाओं की हमारी सूची पर एक नज़र डालें।