উত্তর:
যদি আপনি কোনও কারণে ওএস ফিঙ্গারপ্রিন্টিংয়ের কাজ করে থাকেন তবে আপনি আরও লক্ষ্যযুক্ত পোর্ট-স্ক্যান করতে পারেন:
nmap -p 9100,515,631 192.168.1.1/24 -oX printers.xml
এটি মুদ্রক এবং মুদ্রণ সিস্টেমে সাধারণ পোর্টগুলির জন্য স্ক্যান করবে।
আউটপুট এক্সএমএলে আছে।
এই উত্তরটি সরাসরি আপনার প্রথম প্রশ্নের উত্তর দেয়। দ্বিতীয় প্রশ্নের জন্য, কমান্ডটি বোঝার ফলে আপনাকে একটি ফাইলে প্রিন্টার আইপি অ্যাড্রেসও রাখতে দেওয়া হবে। সুতরাং আমরা এখানে যেতে:
nmap -p 515,631,9100 -oG - 10.81.129.0/24 | gawk '/open/{print $2}' | xargs --delimiter='\n' nmap -sU -p 161 -oG - | gawk '/open/{print $2}' | xargs --replace=$ipaddress snmpget -v 1 -O v -c public $ipaddress system.sysDescr.0 | sed 's/STRING:\s//'
nmap - নেটওয়ার্ক স্ক্যানিং। ( এনএমএপি.অর্গ )
-p 515,631,9100
টিসিপি পোর্ট 515, 631 এবং 9100 এর জন্য স্ক্যান করুন।-oG -
গ্রেপ-সক্ষম আউটপুট ফর্ম্যাটটি ব্যবহার করুন।-sU -p 161
ইউডিপি পোর্ট 161 এর জন্য স্ক্যান করুন।গোক বা অজানা - কলাম-ওরিয়েন্টেড পাঠ্য ডেটা প্রসেস করুন। ডিফল্টরূপে, সাদা স্থানগুলি লাইনটি কলামগুলিতে পৃথক করে। ( উইকিপিডিয়া )
gawk '/regexp/'
এই নিয়মিত অভিব্যক্তির সাথে মিলে যাওয়া লাইনগুলি ফিল্টার করতে গাকের সাথে নিয়মিত বহিরাগত ব্যবহার করুন।gawk '{<code>}'
আউটপুট ম্যানিপুলেট করতে awk সি-এর মতো ইনপুট ভাষা ব্যবহার করুন।gawk '{/open/print $2}'
"খুলুন" এর সাথে মিলযুক্ত লাইনগুলি অনুসন্ধান করুন এবং দ্বিতীয় কলামটি মুদ্রণ করুন।xarg - প্রদত্ত ইনপুট থেকে আদেশগুলি তৈরি করুন এবং সম্পাদন করুন। ডিফল্টরূপে হোয়াইটস্পেসগুলি আর্গুমেন্টে রেখাটি পৃথক করে। ( উইকিপিডিয়া )
--delimiter='\n'
হোয়াইটস্পেসের পরিবর্তে প্রতি নতুন লাইনে (\ n) যুক্তিগুলি পৃথক করুন।--replace=$ipaddress
প্রতিটি লাইনে জন্য, মধ্যে যুক্তি সংরক্ষণ $ IPADDRESS ।স্ন্যাম্পেজ বা স্ন্যাম্পওয়াক - কোনও নেটওয়ার্ক সত্তা সম্পর্কিত তথ্যের জন্য জিজ্ঞাসা করার জন্য এসএনএমপি জিইটি অনুরোধটি ব্যবহার করুন। ( নেট-snmp.org , উইকিপিডিয়ায় এসএনএমপি সম্পর্কে আরও বেশি )
-c public
সম্প্রদায় স্ট্রিং সর্বজনীন সেট করুন।-v 1
এসএনএমপি সংস্করণ 1 এ সেট করুন।-O v
ওআইডি প্রিন্ট করবেন না।system.sysDescr.0
জিজ্ঞাসা করার জন্য পরিবর্তনশীল। এই নির্দিষ্ট পরিবর্তনশীলটির বর্ণনা: "সত্তার একটি পাঠ্য বিবরণ। এই মানটিতে সিস্টেমের হার্ডওয়্যার প্রকার, সফ্টওয়্যার অপারেটিং সিস্টেম, এবং নেটওয়ার্কিং সফ্টওয়্যারটির পুরো নাম এবং সংস্করণ সনাক্তকরণ অন্তর্ভুক্ত করা উচিত It এটি বাধ্যতামূলক যে এটিতে কেবল মুদ্রণযোগ্য ASCII অক্ষর থাকতে পারে। "sed - parses এবং রূপান্তরগুলির পাঠ্য। ( উইকিপিডিয়া )
's/day/night/'
একটি লাইনে স্ট্রিং দিনের প্রথম উপস্থিতিটি সন্ধান করুন এবং রাতের সাথে এটি প্রতিস্থাপন করুন।'s/STRING:\s//'
STRING: Find গুলি সন্ধান করুন এবং এটিকে কিছুই দিয়ে প্রতিস্থাপন করুন। এটি ইনপুট থেকে STRING: remove গুলি সরিয়ে দেয় । এর মানে হল একটি সাদা স্থান।জড়িত কিছু ইউএনআইএক্স সমর্থিত কমান্ড রয়েছে। ব্যক্তিগতভাবে আমি এই কমান্ডগুলি পাওয়ার জন্য সাইগউইন ব্যবহার করে একটি উইন্ডোজ মেশিনে এই চেইনের কাজটি করেছি।
nmap -p 515,631,9100 -oG - 192.168.100.0/24 | gawk '/open/{print $2}' | xargs --delimiter='\n' nmap -sU -p 161 -oG - | gawk '/open/{print $2}' | xargs -I{} sh -c 'echo {} ; snmpget -v 1 -O v -c public {} system.sysDescr.0' | sed 's/STRING:\s//'
সবচেয়ে সহজ nmap -O
উপায়টি দিয়ে স্ক্যান করা : এনএমএপ সাধারণত সঠিকভাবে নির্ধারণ করতে পারে যে কোনও মেশিন প্রিন্টার কিনা ওএসের উপর ভিত্তি করে না।
nmap -O 192.168.1.1/24 -oG - | grep printer >> outfile
প্রতি লাইনে এটিকে একটি করে প্রবেশ করাতে হবে এবং "আউটফিল" নামক কোনও ফাইলে ডাম্প করা উচিত। স্পষ্টতই আইপি পরিসীমাটি আপনি স্ক্যান করছেন এমন যে কোনও ব্যাপ্তিতে পরিবর্তন করুন