BE AN ADVANCE USER WITH ME
ইন্টারনেট কানেকশন এবং
নেটওয়ার্ক চেক করার জন্য দরকারী একটি দরকারী টুল হলো netstat. বিশেষ করে
কম্পিউটারে কোন ম্যালওয়ার বা অন্য কোন অদরকারী সফটওয়্যার ইন্টারনেট
কানেক্টেড হয়ে আপনারই অজান্তে কোন কিছু ডাউনলোড বা কিছু আপলোড করছে কিনা।
পোষ্টটি কিছু সময় নিয়ে পড়ুন। আমি যদি ৩-৪ ঘন্টা ব্যয় করে কষ্ট করে লিখতে
পারি তাহলে আপনার কি দশ মিনিট সময়ও হবে না পড়ার? আর এখন সময় না থাকলে এড়িয়ে
যান কিন্তু পড়ে আবার এসে অবশ্যই পড়ে নিবেন। আমি যদি আপনাকে আমার এই
পোষ্টটি বুঝাতে অক্ষম হই বা কোথাও না বুঝেন, তাহলে লজ্জা না করে নিচে
কমেন্টের ঘরে কমেন্ট করবেন।পোষ্টটি পড়লে আপনি আরও জানতে পারবেন যে,
১. ইন্টারনেট কানেক্টেড হয়ে কোন ব্রাউজার ওপেন করলাম না বা ব্রাউজার ওপেন করে কিছু না করলেও আমার মেগাবাইট কেন কাটছে।
আর আমি ইনশাল্লাহ পরবর্তিতে আরও কিছু এই জাতীয় পোষ্ট করবো। তাই সেই সকল পোষ্ট বুঝতে হলে আপনাকে আগে এই netstat সম্পর্কে ভালভাবে জানতে বা বুঝতে হবে। তো চলুন শুরু করি।
উইন্ডোজ কি+R একসাথে চাপুন। Run কমান্ড চালু হবে। Run অবশ্য আপনি Start হতেও চালু করতে পারবেন। এখন এই Run এ লিখুন cmd এবং enter দিন। কমান্ড প্রম্পট চালু হবে এবং দেখতে পারবেন লেখার জন্য কারসর ব্লিংক করছে। কিবোর্ডের সাহায্যে লিখুন netstat –a যেভাবে লিখেছি ঠিক সেভাবে লিখে এন্টার দিন অর্থাৎ প্রথমে netstat লিখার পর একটি স্পেস তারপর ‘-’ ড্যাস চিন্হ এরপর কোন স্পেস না দিয়ে a লিখবেন, এবং তার পর এন্টার দিবেন। এন্টার দেবার পর কি দেখলেন তা এখন না দেখলেও চলবে। নিচের লেখাগুলো পড়ুন। এখানে a স্থলে নিচের অক্ষর বা লেখাগুলো দিবেন।
এই netstat কিছু সুইচ (১২ টার মত) আছে। চলুন জেনে নেই সুইচ গুলো কি কি ও তার কাজ।
netstat [-a] [-b] [-e] [-f] [-n] [-o] [-p proto] [-r] [-s] [-t] [-v] [interval]
নিচে একটি টেবিলে এই সুইচ গুলোর কাজ গুলো লিখা হলো।
টেবিল: netstat কমান্ডের কিছু সুইচ
সুইচ
|
বর্ননা
|
-a | সকল কানেকশন এবং পোর্টসমুহ দেখাবে |
-b | সফটওয়্যার সমুহের এক্সিকিউটিবল কানেকশন এবং তাদের ব্যবহ্রত পোর্ট সমুহ দেখাবে |
-e | ইথারনেট statistics দেখাবে |
-f | foreign addresses গুলোর Fully Qualified Domain নাম সমুহ দেখাবে (In Windows Vista/7 only) |
-n | Addresses এবং port নম্বরগুলো numerical ফর্মে দেখাবে |
-o | প্রতিটি কানেকশনের নিজস্ব process ID দেখাবে। |
-p proto | TCP, UDP, TCPv6, or UDPv6 কানেকশনগুলো দেখাবে |
-r | routing টেবিল দেখাবে |
-s | প্রতিটি protocol এর statistics দেখাবে |
-t | বর্তমান কানেকশনের offload state দেখাবে, (শুধুমাত্র Windows Vista/7 এর জন্য) |
-v | যখন –b এর সাথে conjunction করে দেখা হবে তখন সকল সফটওয়্যার এর এক্সিকিউটেবল কম্পোনেন্ট এবং তার নির্ধারিত পোর্টসমুহ ধারাবাহিক ভাবে দেখাবে। (Windows XP SP2, SP3) |
interval | আমি এখানে interval লিখেছি। আপনারা আবার তা লেইখেন না। এটা আসলে একটি ইন্টিগার যার মাধ্যমে আপনি নিদ্রিষ্ট একটি কমান্ড যত সেকেন্ড লিখে দিবেন তার পর পর এর রেজাল্ট Continues ভাবে দেখতে পারবেন। মানে এই ভাবে লিখবেন netstat –r 5 এখানে লক্ষ্য করুন আমি 5 লিখেছি মানে হলো প্রতি পাচঁ সেকেন্ড পর পর আপনি নতুন রেজাল্ট দেখতে পারবেন। |
NETSTAT এর এপ্লিকেশন সমুহ:
NETSTAT হলো নেটওয়ার্ক কানেকশন চেক করার জন্য one of a number of command-line tools. এর মাধ্যমে কম্পিউটারের বিভিন্ন কানেকশনের TCP/IP চেক করা হয়। Windows XP SP2 তে –B নামে একটা নতুন সুইচ এ্যাড করা হয়েছে যার মাধ্যমে সত্যিকার ভাবে বিভিন্ন সফটওয়্যার এর এক্সিকিউটেবল কানেকশন দেখা যাবে। এই নতুন সুইচের মাধ্যমে একটি সুযোগ দেয়া হয়েছে ম্যালওয়্যার ধরার জন্য যা আপনার অজান্তে সে কম্পিউটার হতে মালামাল পাচার করে। একজন সিস্টেম এ্যাডমিনেস্টেটর বিভিন্ন উপায়ে এই সকল অবৈধ পাচার কাজ বন্ধ করতে পারেন। কিন্তু আমি আপনাকে দুইটা উধাহরন দিব যা একজন হোম পিসি ইউজারের জন্য খুবই হেল্পফুল।TCP/IP কানেকশন চেক করা:
TCP এবং UDP কানেকশনের এবং তাদের IP ও port addresses দেখার জন্য দুইটি কমান্ড লাইন সুইচ সংযুক্তি করেছি: netstat -an
নিচের ছবিটি খেয়াল করুন এই কমান্ড লাইন ব্যবহারের ফলে কি আউটপুট আসলো:
উপরের ছবিতে যে সকল ইনফরমেশন দেখা যাচ্ছে তা হল প্রটোকল, লোকাল এ্যাডড্রেস(local address), the remote (foreign) address এবং বর্তমান কানেকশনের অবস্থা। দেখুন যে এখানে আইপি এ্যাডড্রেস গুলো দেখা যাচ্ছে। কিন্তু ডানের দিকে State এ দেখা যাচ্ছে যে LISTENING, CLOSE_WAIT এইগুলো আবার কি???? ঠিক আছে নিচের টেবিল হতে দেখে নিন এগুলোর মানে কি।
টেবিল: বিভিন্ন প্রকার কানেকশনের বর্ননা:
State | বর্ননা |
CLOSED | এইটা ইঙ্গিত করে যে client হতে ACK নামক একটা সিগন্যাল server গ্রহন করেছে এবং কানেকশনটি বন্ধ হয়ে গেছে। |
CLOSE_WAIT | এইটা ইঙ্গিত করে যে client হতে first FIN নামক একটা সিগন্যাল server গ্রহন করেছে এবং কানেকশনটি বন্ধ হবার জন্য প্রস্তুত হচ্ছে। |
ESTABLISHED | এইটা ইঙ্গিত করে যে client হতে SYN নামক একটা সিগন্যাল server গ্রহন করেছে এবং কানেকশনটি চালু হয়ে গেছে। |
FIN_WAIT_1 | এইটা ইঙ্গিত করে যে কানেকশনটি এ্যাকটিভ আছে কিন্তু বর্তমানে ব্যবহ্রত হচ্ছে না। |
FIN_WAIT_2 | এইটা ইঙ্গিত করে যে কানেকশনটি মাত্র server হতে first FIN signal গ্রহন করেছে। |
LAST_ACK | এইটা ইঙ্গিত করে যে সার্ভার তার নিজের FIN signal পাঠানোর জন্য প্রস্তুত হচ্ছে। |
LISTENING | এইটা ইঙ্গিত করে যে সার্ভার একটি কানেকশন গ্রহন করবার জন্য প্রস্তুত। |
SYN_RECEIVED | এইটা ইঙ্গিত করে যে client হতে SYN নামক একটা সিগন্যাল এই মাত্র server গ্রহন করেছে। |
SYN_SEND | এইটা ইঙ্গিত করে যে নিদ্রিষ্ট একটি কানেকশন open and active |
TIME_WAIT | এইটা ইঙ্গিত করে যে ক্লায়েন্ট হতে সাড়া পেয়ে কানেকশন এক্টিভ হয়েছে কিন্তু বর্তমানে ব্যবহ্রত হচ্ছে না। |
এখন ম্যালওয়ার চেক করার জন্য দেখবো কোন প্রোগ্রাম কানেক্টটেড হচ্ছে বা হতে চাচ্ছে:
কোন কোন প্রোগ্রাম, বর্হিবিশ্বের সাথে আমার কম্পিউটার কানেক্টেড করছে তার বের করার জন্য নিচের কমান্ডটি ব্যবহার করবো
Netstat –b
আসলে সবচেয়ে ভাল হয় যদি একটি নিদ্রিষ্ট সময় পর পর আমরা এইটা চেক করি। কিন্তু আমরাতো মেশিন না, মানুষ তাই আরো ভাল হয় যদি এই সকল রেজাল্টের দিকে সবসময় চোখ না রেখে একটা লিখিত রেকর্ড রাখি। লিখিত রেকর্ড পাবার জন্য কমান্ডটা হবে এই রকম
netstat -b 5 >> C:\connections.txt
এখন আপনি আপনার সি ড্রাইভে গিয়ে দেখুন যে connections.txt নামক একটা রেকর্ড তৈরী হয়েছে। উল্লেখ্য যে, এই কমান্ডটা প্রতি পাচঁ সেকেন্ড পর পর মনিটর করতে থাকবে। এটি বন্ধ করার জন্য Crtl+c চাপুন। এই পদ্ধতি সিঙ্গেল কোন মেশিনের জন্য সিস্টেম স্লো হবার বার্তা দেখাতে পারে। কিন্তু বর্তমান আধুনিক যে কোন সিপিউ তে কোন সমস্যা হবে না। একটি সাধারন আউটপুট নিচের ছবিতে দেখানো হয়েছে।
উল্লেখ্য যে প্রোসেস আইডি (PID) যখন এক্সপি ব্যবহার করবেন তখন দেখানো হবে। আর সেভেনে সুইচ “o” এ্যাড করা হয়েছে প্রোসেস আইডি (PID) দেখার জন্য। এই কমান্ড গুলো অন্যান্য টুলস যেমন task manager এর সাথে কম্বাইন্ড করা হয়েছে যার মাধ্যমে এক্সিকিউটেবল ফাইলস ও তাদের প্রোসেস যা ইন্টারনেট কানেক্টেড এর জন্য চেষ্টা করে।
0 comments:
একটি মন্তব্য পোস্ট করুন