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

इस आलेख में हम देखेंगे कि हम लिनक्स सर्वर पर चल रही सेवाओं को छिपाने के लिए कैसे नॉकड का उपयोग कर सकते हैं।

एक लिनक्स सर्वर पर Knockd स्थापित करें

नॉकड अधिकांश डिस्ट्रो के भंडारों में उपलब्ध है। डेबियन / उबंटू / उबंटू-आधारित सर्वर पर, आप knockd इंस्टॉल करने के लिए apt-get कमांड का उपयोग कर सकते हैं।

 sudo apt-get knockd इंस्टॉल करें 

फेडोरा, सेंटोस, या आरईएचएल उपयोगकर्ताओं के लिए, आप yum कमांड का उपयोग कर सकते हैं:

 yum स्थापित दस्तक 

Iptables स्थापित और कॉन्फ़िगर करें

अगर आपके पास अपने सर्वर पर आईप्टेबल स्थापित नहीं हैं, तो इसे अभी इंस्टॉल करें।

 sudo apt-iptables iptables-persistent स्थापित करें 

पैकेज iptables-persistent सहेजे गए iptables की स्वचालित लोडिंग लेता है।

इसके बाद, आपको पहले से स्थापित कनेक्शन के साथ-साथ वर्तमान सत्रों को iptables के माध्यम से अनुमति देने की आवश्यकता है। इस कार्य को प्राप्त करने के लिए निम्न आदेश का प्रयोग करें:

 iptables- एक इनपुट - एम conntrack --ctstate स्थापित, संबंधित - स्वीकार 

इसके बाद, आपको पोर्ट 22 एसएसएच में आने वाले सभी कनेक्शनों को अवरुद्ध करने की आवश्यकता है।

 iptables- एक इनपुट- टी टीसीपी - 22 -j अस्वीकरण 

अब आइए निम्न आदेशों के माध्यम से फ़ायरवॉल नियमों को सहेजें:

 नेटफिल्टर-लगातार नेटफिल्टर-लगातार रीलोड को बचाएं 

आप आगे बढ़ सकते हैं और जांच सकते हैं कि आपने अपने कंप्यूटर से अपने सर्वर से कनेक्ट करके पोर्ट 22 को वास्तव में अवरुद्ध कर दिया है या नहीं।

 एसएसएच मेरा सर्वर-आईपी 

नॉक कॉन्फ़िगर करें

अब यह knockd डिफ़ॉल्ट सेटिंग्स को कॉन्फ़िगर करने का समय है। यह "/etc/knockd.conf" पर स्थित है। ऐसा करने के लिए, निम्न आदेश का उपयोग करके knockd कॉन्फ़िगरेशन फ़ाइल में बदलें:

 सीडी / आदि sudo leafpad knockd.conf 

चित्रण प्रयोजनों के लिए, मैं लीफपैड संपादक का उपयोग कर रहा हूं। अपने सर्वर पर आप नैनो या वी का उपयोग कर सकते हैं।

स्क्रीनशॉट नॉक कॉन्फ़िगरेशन फ़ाइल दिखाता है।

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

नोट : Knockd कॉन्फ़िगरेशन फ़ाइल में OpenSSH अनुभाग में iptables कमांड इस नियम को INPUT श्रृंखला के अंत में जोड़ने के लिए -A विकल्प का उपयोग करता है। इससे सभी शेष कनेक्शन गिरने का कारण बनता है।

इसे रोकने के लिए, इसे नीचे दिए गए के साथ प्रतिस्थापित करें:

 कमांड = / sbin / iptables- I इनपुट 1-%% आईपी% -पी टीसीपी - 22-एसीसी स्वीकार करें 

यह आदेश सुनिश्चित करता है कि एसएसएच कनेक्शन स्वीकार करने के लिए INPUT श्रृंखला के शीर्ष पर एक नया नियम जोड़ा जाएगा।

सक्षम और नॉक सेवा शुरू करें

"/ Etc / default / knock" में knockd सेवा को सक्षम करने के लिए निम्न प्रक्रिया का उपयोग करें।

स्क्रीनशॉट में दिखाए गए अनुसार 0 से 1 मान बदलें।

 START_KNOCKD = 1 

इसके बाद, फ़ाइल को सहेजें और बंद करें "/ etc / default / knockd।"

इसके बाद, आप निम्न आदेशों में से किसी एक का उपयोग करके नॉक सेवा शुरू कर सकते हैं:

 सुडो सेवा शुरू दस्तक 

या

 sudo systemctl knockd शुरू करते हैं 

अपने लिनक्स सर्वर को नॉक-टेस्ट करने का समय

अब आपके लिनक्स एसएसएच सर्वर का परीक्षण करने का समय है। किसी निर्दिष्ट आईपी पते पर पोर्ट 22 खोलने के लिए, अपने कंप्यूटर पर निम्न का उपयोग करें। (आपको अपने कंप्यूटर पर भी knockd स्थापित करने की आवश्यकता होगी)

 knock -v my-server-ip 7000 8000 9000 

आपको अपने सर्वर के आईपी पते के साथ "my-server-ip" को प्रतिस्थापित करने की आवश्यकता है।

अब आप निम्न आदेश का उपयोग कर पोर्ट 22 एसएसएच से कनेक्ट कर सकते हैं:

 एसएसएच मेरा सर्वर-आईपी 

बंदरगाह 22 के माध्यम से जो कुछ भी करना चाहते थे, उसके साथ समाप्त करने के बाद, आप निम्न आदेश का उपयोग करके इसे बंद कर सकते हैं:

 knock -v my-server-ip 9000 8000 7000 

निष्कर्ष

दस्तक के साथ, आपको अच्छी तरह से आश्वासन दिया जाता है कि आपके एसएसएच सर्वर को अत्याधुनिक स्कैनर के साथ हमलावरों से सुरक्षित सुरक्षित रखा गया है। इसके अतिरिक्त, आप पूरी तरह से अपने एसएसएच सर्वर के प्रभारी हैं।