কম্পিউটার টিউটোরিয়াল

Linux-এ সকল এক্টিভ SSH কানেকশন দেখানোর পদ্ধতি

Linux-এ সকল এক্টিভ SSH কানেকশন দেখানোর পদ্ধতি

SSH একটি জনপ্রিয় এবং কার্যকর প্রোটোকল যা আপনাকে আপনার লোকাল মেশিন থেকে রিমোট হোস্টে লগইন এবং ম্যানেজ করতে দেয়। এই গাইড আপনাকে রিমোট হোস্টে এক্টিভ SSH কানেকশন চেক করার জন্য বিভিন্ন কমান্ড দেখিয়ে যাবে।

নোট: সিস্টেম কনফিগারেশনের উপর নির্ভর করে, আমরা যে কমান্ডগুলো আলোচনা করব সেগুলোর কিছুতে আপনাকে রুট বা sudo প্রিভিলেজ প্রয়োজন হতে পারে।

১. who কমান্ড ব্যবহার

এক্টিভ SSH কানেকশন দেখানোর জন্য আপনি যে প্রথম কমান্ডটি ব্যবহার করতে পারেন সেটি হলো who কমান্ড।

who কমান্ড সিস্টেমে কে কে বর্তমানে লগইন করা আছে তা দেখाने জন্য ব্যবহৃত হয়। এটি আমাদের কানেক্টেড ইউজার এবং তাদের সোর্স IP অ্যাড্রেস ভিউ করতে দেয়।

who কমান্ড ব্যবহার করতে, কোনো প্যারামিটার ছাড়া who লিখুন।

Linux-এ সকল এক্টিভ SSH কানেকশন দেখানোর পদ্ধতি

উপরের আউটপুটে, আপনি দেখতে পাচ্ছেন একটি debian ইউজার tty-র মাধ্যমে কানেক্টেড এবং একটি রিমোট IP অ্যাড্রেস থেকে দুটি SSH সেশন।

আপনি who কমান্ডে প্যারামিটার যোগ করে বিস্তারিত তথ্য দেখাতে পারেন।

উদাহরণস্বরূপ, কানেক্টেড ইউজারদের লাস্ট বুট দেখাতে, -b -u ফ্ল্যাগ যোগ করুন:

who -b -u
Linux-এ সকল এক্টিভ SSH কানেকশন দেখানোর পদ্ধতি

who কমান্ড আরও অপশন অফার করে কাস্টমাইজড রেজাল্ট পেতে। ম্যানুয়াল পেজ দেখুন আরও শিখতে।

২. w কমান্ড ব্যবহার

রিমোট হোস্টে কানেক্টেড বিভিন্ন SSH সেশন এবং ইউজারদের স্ট্যাটাস দেখানোর জন্য আপনি যে পরবর্তী কমান্ডটি ব্যবহার করতে পারেন সেটি হলো w কমান্ড। who কমান্ডের বিপরীতে, w কমান্ড প্রতিটি ইউজারের জন্য রানিং প্রসেস সম্পর্কে আরও তথ্য দেয়।

অতিরিক্তভাবে, w কমান্ড আপনাকে আইডল SSH কানেকশন সম্পর্কে তথ্য দেয়, যা আপনাকে সেগুলো টার্মিনেট করার সময় খুব সাহায্য করে।

আপনি যদি কোনো অন্য অপশন ছাড়া কমান্ড চালান, তবে আপনাকে নিচের মতো আউটপুট मिलবে।

Linux-এ সকল এক্টিভ SSH কানেকশন দেখানোর পদ্ধতি

উপরের উদাহরণে, w কমান্ড বিস্তারিত তথ্য দেয়, যেমন ইউজারনেম, TTY মেথড, সোর্স IP অ্যাড্রেস, লগইন টাইম, আইডল টাইম এবং আরও অনেক কিছু।

who কমান্ডের মতো, আপনি w কমান্ডও বিভিন্ন প্যারামিটার সহ ব্যবহার করতে পারেন। নিচের টেবিলে w কমান্ডের সাথে ব্যবহারযোগ্য বিভিন্ন প্যারামিটার দেখানো হলো।

ParameterWhat it does
-h, --no-headerটার্মিনালকে হেডার প্রিন্ট না করার জন্য বলে
-u, --no-currentটার্মিনালকে ইউজারনেম ইগনোর করতে বলে যেন কানেক্টেড ইউজারদের প্রসেস এবং CPU টাইম দেখানো হয়
-s, --shortটার্মিনালকে সংক্ষিপ্ত আউটপুট প্রিন্ট করতে বলে – লগইন টাইম, JCPU এবং PCPU বাদ দিয়ে
-f, --fromপ্রিন্ট আউটপুটের FROM অপশন সক্রিয়/নিষ্ক্রিয় করে
--helpw কমান্ডের বিভিন্ন অপশন/প্যারামিটার প্রদর্শন করে এবং এক্সিট করে
-v, --versionভার্সন ইনফরমেশন প্রদর্শন করে এবং এক্সিট করে
userস্পেসিফাইড ইউজারের জন্য রেজাল্ট ন্যারো ডাউন করে

নিচের উদাহরণে w কমান্ড -s এবং -f প্যারামিটার সহ ব্যবহার করা হয়েছে যেন বর্তমান SSH সেশনগুলির সংক্ষিপ্ত আউটপুট FROM অংশ ছাড়া দেখানো হয়।

Linux-এ সকল এক্টিভ SSH কানেকশন দেখানোর পদ্ধতি

যদিও কদাচিৎ ব্যবহার হয়, আপনি w কমান্ড এনভায়রনমেন্টাল এবং ফাইল প্যারামিটারও ব্যবহার করতে পারেন। এই প্যারামিটার সম্পর্কে আরও জানতে man pages বিবেচনা করুন।

৩. last কমান্ড ব্যবহার

আপনি last কমান্ডও ব্যবহার করতে পারেন সকল কানেক্টেড SSH সেশন দেখানোর জন্য। last কমান্ড লাস্ট লগইন করা ইউজারদের লিস্ট দেখায়।

এটি ডেজিগনেটেড ফাইল চেক করে কাজ করে। উদাহরণস্বরূপ, /var/log/wtmp ফাইলটি তৈরি হওয়ার পর থেকে লগইন এবং লগআউট করা সকল ইউজার দেখায়। কমান্ডটি ক্লায়েন্ট এবং সার্ভারের মধ্যে তৈরি SSH সেশন সম্পর্কে তথ্যও দেয়।

last কমান্ডের সাধারণ সিনট্যাক্স হলো:

last

এখানে একটি উদাহরণ।

Linux-এ সকল এক্টিভ SSH কানেকশন দেখানোর পদ্ধতি

যেহেতু last কমান্ডের আউটপুট বিশাল, আমরা grep কমান্ড ব্যবহার করে শুধু এক্টিভ সেশন দেখাতে পারি।

উদাহরণস্বরূপ:

last | grep still
Linux-এ সকল এক্টিভ SSH কানেকশন দেখানোর পদ্ধতি

আপনি last কমান্ডের আউটপুট মডিফাই করে বিস্তারিত তথ্য দেখাতে পারেন।

উদাহরণস্বরূপ, ফুল ইউজারনেম এবং ডোমেন দেখাতে, আমরা -w ফ্ল্যাগ ব্যবহার করতে পারি।

last -w

last কমান্ড অনেক অপশন সাপোর্ট করে। last কমান্ডের সবচেয়ে সাধারণ ব্যবহৃত অপশনগুলো এখানে।

ParameterWhat it does
-a, --hostlastলাস্ট কলামে হোস্টনেম ডিসপ্লে করে
-d, --dnsLinux সকল রিমোট হোস্টের হোস্টনেম এবং IP অ্যাড্রেস স্টোর করে। এই প্যারামিটার IP কে হোস্টনেমে রূপান্তর করে
-file, --filelast কমান্ডকে /var/log/wtmp ছাড়া অন্য ডেজিগনেটেড ফাইল ব্যবহার করতে বলে
-F, --fulltimeslast কে সকল লগইন এবং লগআউট ডেট ও টাইম প্রিন্ট করতে বলে
-i, --ip–dns-এর মতো, বাদে হোস্টের হোস্টনেম দেখানোর পরিবর্তে IP নম্বর দেখায়

৪. netstat কমান্ড ব্যবহার

আমরা netstat কমান্ডকে ভুলে যেতে পারি না। Netstat সকল নেটওয়ার্ক কানেকশন, নেটওয়ার্ক ইন্টারফেস, রাউটিং টেবিল এবং আরও অনেক কিছু দেখানোর জন্য ব্যবহৃত হয়।

আপনি netstat কমান্ডও ব্যবহার করতে পারেন আপনার Linux সার্ভারে estaблиশড বা কানেক্টেড SSH সেশন ফিল্টার করতে:

netstat | grep ssh
Linux-এ সকল এক্টিভ SSH কানেকশন দেখানোর পদ্ধতি

উপরোক্ত কমান্ড শুধু estaблиশড SSH কানেকশন দেখায়।

সকল কানেকশন включая লিসেনিং এবং নন-লিসেনিং দেখাতে, আমরা -a ফ্ল্যাগ ব্যবহার করতে পারি:

nestat -a | grep ssh
Linux-এ সকল এক্টিভ SSH কানেকশন দেখানোর পদ্ধতি

৫. ss কমান্ড ব্যবহার

আপনি যদি কানেক্টেড SSH সেশন সম্পর্কে আরও তথ্য জানতে চান, তবে আপনি ss কমান্ড ব্যবহার করতে পারেন, যা সকেট ডেটা দেখায়, netstat-এর মতো।

উদাহরণস্বরূপ, আমরা ss কমান্ডের আউটপুট -a অপশন (সকল) সহ grep করে সকল কানেক্টেড SSH সেশন দেখাতে পারি। সিনট্যাক্স হলো:

ss -a | grep ssh
Linux-এ সকল এক্টিভ SSH কানেকশন দেখানোর পদ্ধতি

উপরোক্ত আউটপুট রিমোট হোস্টে সকল SSH কানেকশন ডিসপ্লে করে। এতে SSHD ডেমনও অন্তর্ভুক্ত থাকবে।

estaблиশড SSH কানেকশন ফিল্টার করতে, আপনি আউটপুট আবার grep-এ পাইপ করতে পারেন।

ss -a | grep ssh | grep ESTAB
Linux-এ সকল এক্টিভ SSH কানেকশন দেখানোর পদ্ধতি

উপরোক্ত কমান্ডগুলো শুধু এক্টিভ SSH কানেকশন রিটার্ন করবে।

ss কমান্ডের আরও টন টন অপশন আছে যা আপনি এক্টিভ সার্ভার কানেকশন সম্পর্কে বিভিন্ন জিনিস জানতে ব্যবহার করতে পারেন। উদাহরণস্বরূপ, আপনি -e ফ্ল্যাগ ব্যবহার করে সকেট ইনফরমেশন সম্পর্কে আরও জানতে পারেন।

উপসংহার

অননুমোদিত SSH লগইন کے জন্য আপনার রিমোট হোস্ট মনিটর করা এবং প্রয়োজনীয় অ্যাকশন নেওয়া, যেমন আপনার সার্ভার সিকিউর করা বা পাসওয়ার্ড অথেনটিকেশন ডিজেবল করা – একটি ভালো অভ্যাস। পাশাপাশি, আপনি রিভার্স SSH টানেলিং ব্যবহার করে আপনার PC-তে এক্সটার্নাল কানেকশন অনুমতি দিতে পারেন।


  1. লিনাক্সে 'echo' কমান্ডের ব্যবহার পদ্ধতি

  2. লিনাক্সে tee কমান্ড ব্যবহার করুন

  3. লিনাক্স হোম সার্ভার সিকিউর করুন

  4. লিনাক্সে নেটওয়ার্ক সংযোগ পর্যবেক্ষণের জন্য ss কমান্ডের ব্যবহার