Ubuntu पर nmap से पोर्ट स्कैन और विश्लेषण गाइड

अवलोकन

Ubuntu परिवेश में नेटवर्क ऑडिटिंग और सिस्टम सुरक्षा विश्लेषण के लिए nmap सर्वाधिक लोकप्रिय उपकरण माना जाता है। इस व्यावहारिक गाइड में हम पैकेज सेटअप से लेकर पोर्ट चेकिंग तथा टर्मिनल पर आने वाले सर्विस परिणामों को सही ढंग से समझने की विस्तृत कार्यप्रणाली सीखेंगे।

nmap इन्स्टॉलेशन और परीक्षण परिवेश की स्थापना

नेटवर्क स्कैनिंग का अभ्यास करने और डमी सेवाओं का परीक्षण करने के लिए सिस्टम में आवश्यक पैकेज apt-get update -qq && apt-get install -y nmap python3 कमांड की मदद से इंस्टॉल किए जाते हैं।

पैकेज अपडेट और nmap इंस्टॉलेशन

nmap कमांड एक बहुमुखी नेटवर्क एक्सप्लोरेशन टूल है जो किसी भी होस्ट पर एक्टिव पोर्ट्स और रनिंग सर्विसेज की खोज करता है।
सिस्टम पर इंस्टॉल हुए nmap के संस्करण और उपलब्ध फीचर्स की पुष्टि के लिए nmap --version कमांड निष्पादित करें।
⚙️ [मुख्य विकल्प]

-p : केवल निर्दिष्ट पोर्ट नंबर अथवा पोर्ट रेंज की जांच करने के लिए।
-sS : टीसीपी सिन (TCP SYN) यानी स्टील्थ स्कैन, जिसमें पूर्ण कनेक्शन बनाए बिना पोर्ट की स्थिति पहचानी जाती है।
-sT : मानक 3-वे हैंडशेक को पूरा करते हुए पूर्ण TCP कनेक्शन स्कैन करता है।
-sU : यूडीपी (UDP) प्रोटोकॉल पर आधारित नेटवर्क सर्विसेज की सक्रियता जांचता है।
-sV : ओपन पोर्ट पर सक्रिय सेवा और उसके सॉफ्टवेयर वर्जन की सटीक पहचान करता है।
-O : लक्षित सिस्टम के ऑपरेटिंग सिस्टम (OS) फिंगरप्रिंट का विश्लेषण करता है।
-A : ओएस डिटेक्शन, वर्जन ट्रेसिंग, स्क्रिप्ट स्कैनिंग और traceroute को एक साथ चलाने वाला समग्र स्कैन।
-v : स्क्रीन पर प्रदर्शित होने वाली स्कैनिंग जानकारी के विवरण स्तर (verbose) को बढ़ाता है।

nmap संस्करण और सपोर्ट विवरण

स्कैनिंग परीक्षण के लिए एक स्थानीय टारगेट तैयार करने हेतु python3 -m http.server 8080 > /dev/null 2>&1 & कमांड के जरिए पोर्ट 8080 पर बैकग्राउंड वेब सर्वर शुरू किया जाता है।

बैकग्राउंड में पायथन वेब सर्वर शुरू करना

बैकग्राउंड में लॉन्च किया गया यह सर्वर पोर्ट 8080 से सही तरीके से बाइंड होकर अनुरोध स्वीकार करने योग्य बने, इसके लिए sleep 1 कमांड चलाकर एक सेकंड का ठहराव दें।

प्रक्रिया स्थिरीकरण हेतु एक सेकंड प्रतीक्षा

मूलभूत पोर्ट स्कैन चलाना और होस्ट स्थिति की जांच

लोकलहोस्ट (127.0.0.1) पर बुनियादी पोर्ट ऑडिटिंग निष्पादित करने के लिए nmap 127.0.0.1 कमांड का उपयोग किया जाता है।
बिना किसी अतिरिक्त फ्लैग के चलाने पर यह टूल सबसे अधिक इस्तेमाल होने वाले शीर्ष 1,000 TCP पोर्ट्स की जांच करता है, जिसमें पहले से एक्टिव 22 (SSH) और हाल ही में शुरू किया गया 8080 (वेब सर्वर) पोर्ट स्पष्ट रूप से डिटेक्ट हो जाते हैं।

लोकलहोस्ट पर प्राथमिक पोर्ट स्कैन निष्पादन

जांच के दायरे को केवल शीर्ष 100 लोकप्रिय पोर्ट्स तक सीमित करके तेज परिणाम पाने हेतु nmap -F 127.0.0.1 कमांड निष्पादित की जाती है।
-F विकल्प (Fast scan) जोड़ने से जांचे जाने वाले पोर्ट्स की संख्या कम हो जाती है, जिससे कुछ ही क्षणों में मुख्य नेटवर्क सेवाओं का हाल पता चल जाता है।

फास्ट स्कैन विकल्प के जरिए त्वरित परिणाम

लक्षित पोर्ट स्कैन और सेवा संस्करण की विस्तृत पहचान

अनावश्यक पोर्ट्स को छोड़कर केवल किसी विशेष पोर्ट की जांच करने हेतु nmap -p 8080 127.0.0.1 कमांड रन की जाती है।
यह लक्षित प्रक्रिया अतिरिक्त स्कैनिंग समय बचाती है और तुरंत पुष्ट करती है कि पोर्ट 8080 वर्तमान में सक्रिय (open) अवस्था में है।

पोर्ट 8080 की स्थिति की लक्षित जांच

खुले हुए पोर्ट के पीछे कौन सा सॉफ्टवेयर और उसका कौन सा संस्करण सक्रिय है, यह गहराई से जानने के लिए nmap -sV -p 8080 127.0.0.1 कमांड दी जाती है।
-sV विकल्प के विश्लेषण से यह तथ्य सामने आता है कि पोर्ट 8080 पर वास्तव में पायथन वेब सर्वर डेमन (SimpleHTTPServer 0.6, Python 3.12.3) कार्यरत है।

सक्रिय सेवा और सॉफ्टवेयर संस्करण का विश्लेषण

स्कैन आउटपुट सुरक्षित करना और टेस्ट प्रक्रिया समाप्त करना

ऑडिट रिपोर्ट को सामान्य टेक्स्ट दस्तावेज के रूप में सुरक्षित करने के लिए nmap -p 8080 -oN scan_report.txt 127.0.0.1 कमांड निष्पादित करें।
-oN स्विच का प्रयोग करने से कंसोल आउटपुट हूबहू निर्दिष्ट फाइल (scan_report.txt) में दर्ज हो जाता है, जिससे बाद में रिपोर्ट साझा करना और लॉग संभालना सुगम हो जाता है।

स्कैन परिणाम टेक्स्ट फाइल में सहेजना

तैयार की गई रिपोर्ट फाइल की सामग्री जांचने के लिए cat scan_report.txt कमांड चलाएं।
इसमें स्कैनिंग का समय, इस्तेमाल किए गए विकल्प, लक्षित आईपी और पोर्ट 8080 की स्थिति का संपूर्ण ब्योरा सुरक्षित दर्ज मिलेगा।

सेव की गई रिपोर्ट का अवलोकन

परीक्षण समाप्त होने पर बैकग्राउंड में चलाए गए टेस्ट वेब सर्वर को हटाने हेतु pkill -f 'http.server 8080' कमांड निष्पादित करके प्रोसेस को सुरक्षित रूप से बंद कर दिया जाता है।

परीक्षण वेब सर्वर प्रोसेस समाप्त करना

इस गाइड में हमने Ubuntu वातावरण में nmap के जरिए बुनियादी पोर्ट स्कैनिंग से लेकर सर्विस डिटेक्शन तक की संपूर्ण प्रक्रिया समझी। इन तकनीकों का सही उपयोग करके आप अपने सर्वर के खुले पोर्ट्स का नियमित ऑडिट कर सकते हैं और अनावश्यक सेवाओं को बंद करके सुरक्षा चक्र को सुदृढ़ बना सकते हैं।