पोर्ट स्कैनिंग की पहचान में एक ख़ासियत है जो उसे आम औज़ारों से अलग कर देती है। Fail2ban एप्लिकेशनों के लॉग पढ़ता है — और जब कोई बंद पोर्ट स्कैन हो, तो वहाँ एप्लिकेशन होती ही नहीं, इसलिए लॉग में प्रविष्टि भी नहीं होती। स्कैनिंग सिर्फ़ फ़ायरवॉल के स्तर पर दिखती है, और ठीक वहीं PSAD काम करता है: वह उन संदेशों को पढ़ता है जो iptables अस्वीकृत पैकेटों के बारे में लिखता है।
अनिवार्य शर्त: लॉगिंग चालू होनी चाहिए
PSAD के «लगा है और कुछ नहीं दिखाता» होने का मुख्य कारण यही है। फ़ायरवॉल में लॉगिंग के नियमों के बिना उसके पास पढ़ने को कुछ नहीं, और इस दौरान कोई त्रुटि भी पैदा नहीं होती।
अगर आप UFW इस्तेमाल करते हैं:
sudo ufw logging low
sudo ufw status verbose
यह पक्का करने के लिए कि संदेश वाकई आ रहे हैं:
sudo journalctl -k | grep -c '\[UFW'
sudo grep -c 'UFW BLOCK' /var/log/ufw.log
दोनों कमांडों से शून्य का मतलब है कि PSAD काम नहीं करेगा। और Debian 12 तथा Ubuntu 24.04 के बारे में अलग से: rsyslog के बिना फ़ाइल /var/log/ufw.log होती ही नहीं और सब कुछ systemd के जर्नल में जाता है — और PSAD की सेटिंग्स में लॉग का रास्ता इसे ध्यान में रखना चाहिए।
स्थापना
sudo apt install psad
sudo psad --sig-update
sudo psad -R
sudo psad --Status
आख़िरी कमांड असल है। यह दिखाती है कि कितने पैकेट विश्लेषित हुए, कौन से पते देखे गए और किस ख़तरे के स्तर पर। और अगर विश्लेषित पैकेटों की गिनती शून्य हो, तो पिछले हिस्से पर लौटें: समस्या लॉगिंग की है, स्कैनिंग की अनुपस्थिति की नहीं।
सेटिंग्स /etc/psad/psad.conf में हैं। और व्यावहारिक महत्व के पैरामीटर कम हैं: मेल का पता, लॉग का रास्ता, और ख़तरे के स्तरों की सीमाएँ।
ख़तरे के स्तर
PSAD हर स्रोत को 1 से 5 तक स्तर देता है, इस आधार पर कि कितने अलग पोर्टों को छुआ गया और बर्ताव ज्ञात स्कैनिंग तकनीकों से कितना मिलता है।
- 1–2 — बंद पोर्टों से इक्का-दुक्का संपर्क। यह इंटरनेट की स्थायी पृष्ठभूमि है; प्रतिक्रिया की ज़रूरत नहीं;
- 3 — पोर्टों पर व्यवस्थित गश्त। आमतौर पर शोध स्कैनर, जिनके कई दर्जन उदाहरण नेटवर्क पर मौजूद हैं;
- 4–5 — एक ही पते से बड़ी संख्या में पोर्टों की जानबूझकर टोह, अक्सर संपर्कों की प्रकृति छिपाने की कोशिश के साथ।
मेल की सीमा EMAIL_ALERT_DANGER_LEVEL से तय होती है। क़ीमत 3 आमतौर पर रोज़ाना कई ईमेल का मतलब रखती है, और यह ख़ासी जल्दी मेल क्लाइंट में एक नियम तक ले जाती है। ज़्यादा समझदारी यह है कि 4 रखें और बाकी किसी सार वाले पन्ने पर देखें।
स्वचालित अवरोधन: न करें
PSAD ख़ुद भी फ़ायरवॉल में नियम जोड़ सकता है (ENABLE_AUTO_IDS)। और अकेले चलते सर्वर पर उसे चालू करना उचित नहीं, और कारण ठोस है: पैकेट में भेजने वाले का पता नक़ली हो सकता है। किसी के लिए यह काफ़ी है कि आपकी ओर बदले हुए पते वाले पैकेट भेज दे — और आप वही पता रोक देंगे जो उसने चुना। और वह आपका ही ग्राहक, कोई भुगतान गेटवे या निगरानी की सेवा निकल सकता है।
और अगर फिर भी अवरोधन चाहिए, तो उसे ख़तरे की ऊँची सीमा के साथ और हमेशा समय सीमा (AUTO_BLOCK_TIMEOUT) के साथ चालू करें ताकि कोई ग़लत प्रविष्टि हमेशा के लिए न रह जाए।
व्यवहार में इसका क्या करें
स्कैनिंग अपने-आप में हानिरहित है: वह कुछ नहीं तोड़ती और सबके साथ लगातार होती रहती है। और PSAD के डेटा की क़ीमत ख़ुद घटना में नहीं, बल्कि उसके मिज़ाज के बदलाव में है।
काम के अवलोकन:
- लक्षित दिलचस्पी। आम स्कैनर हज़ारों पतों और दर्जन भर लोकप्रिय पोर्टों पर गश्त करता है। पर अगर कोई व्यवस्थित ढंग से ठीक आपके ही सर्वर के पोर्ट टटोल रहा हो, ग़ैर-मानक पोर्टों समेत, तो यह अब पृष्ठभूमि नहीं;
- किसी एक ख़ास पोर्ट की स्कैनिंग। डेटाबेस या कंट्रोल पैनल के पोर्ट से संपर्कों का मतलब है कि कोई ठीक उसी सेवा को ढूँढ़ रहा है — आमतौर पर उसमें किसी नई ख़ामी की ख़बर के बाद;
- कोशिश से पहले टोह। स्कैनिंग में उछाल और घंटों बाद उन्हीं श्रेणियों से पासवर्ड का अनुमान एक आम क्रम है, और उसका पहला आधा कुछ समय ख़रीद देता है।
और इनमें से किसी भी अवलोकन का व्यावहारिक नतीजा एक ही है: जाँच लें कि बाहर की ओर मुँह किए पोर्टों की सूची अपेक्षाओं से मेल खाती है और हर पोर्ट पर जो चल रहा है वह कुछ ऐसा है जिसे आपने इसी साल अपडेट किया है।
औज़ारों में इसकी जगह
PSAD न फ़ायरवॉल की जगह लेता है, न Fail2ban की, न किसी घुसपैठ पहचान प्रणाली की। यह एक संकरा खाली स्थान बंद करता है — वे कोशिशें जो कहीं और निशान नहीं छोड़तीं क्योंकि वे कभी किसी एप्लिकेशन तक पहुँची ही नहीं। इसकी क़ीमत कम है, पहली बार चलने के बाद यह बिना व्यवस्था के काम करता है, और इसका सार उस सवाल का जवाब देता है जो वरना कोई नहीं पूछता: क्या आम पृष्ठभूमि के अलावा कोई आपके सर्वर में दिलचस्पी रखता है। यह सार कैसा लगता है, नीचे डेमो पेज दिखाता है।