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

RHEL/CentOS/Fedora-এ SNMP ইনস্টল ও কনফিগারেশন

Simple Network Management Protocol (SNMP) সার্ভার, নেটওয়ার্ক ইকুইপমেন্ট, প্রিন্টার বা অন্যান্য IP ডিভাই스의 বর্তমান স্ট্যাটাস সম্পর্কে তথ্য পেতে ব্যবহৃত হয়। SNMP-এর মাধ্যমে আপনি ভিন্ন ভিন্ন মেট্রিক পেতে পারেন: CPU ইউটিলাইজেশন, প্রসেস সংখ্যা, সার্ভিসের স্টেট, ইত্যাদি। SNMP-এর প্রধান সুবিধা হল এটি প্রায় সব ডিভাইস দ্বারা সমর্থিত এবং একটি আলাদা মনিটরিং সিস্টেম এজেন্ট ইনস্টল করার প্রয়োজন নেই। এই লেখায় আমরা দেখাব কিভাবে SNMP (এবং SNMP v3) এজেন্ট একটি Linux হোস্টে ইনস্টল ও কনফিগার করতে হয় যা CentOS, RHEL, বা Fedora-এ চলে।

লিনাক্সে SNMP এজেন্ট এবং ডায়াগনস্টিক টুলস ইনস্টলেশন

SNMP প্যাকেজ ইনস্টল করার আগে, dnf (yum) ব্যবহার করে আপনার সার্ভারে লেটেস্ট আপডেট ইনস্টল করুন:

# dnf update -y

তারপর বেস রিপোজিটরি থেকে SNMP এজেন্ট এবং অতিরিক্ত টুলস ইনস্টল করুন:

# dnf install net-snmp net-snmp-utils -y

RHEL/CentOS/Fedora-এ SNMP ইনস্টল ও কনফিগারেশন

লিনাক্সে SNMP এজেন্ট সক্ষম ও কনফিগারেশন কীভাবে করবেন?

SNMP কনফিগারেশনের আগে, মূল কনফিগ ফাইলের একটি কপি তৈরি করুন:

# mv /etc/snmp/snmpd.conf /etc/snmp/snmpd.conf.orig

তারপর SNMP এজেন্টের সেটিংস এডিট করুন:

# nano /etc/snmp/snmpd.conf

নিচের লাইনগুলো যোগ করুন:

rocommunity public syslocation GE-DC2 syscontact gedc2-admins@woshub.com

এই তিনটি হল বেসিক SNMP প্যারামিটার। Net-SNMP এজেন্ট কনফিগার করার জন্য আরও অনেক অপশন আছে, কিন্তু একটি লেখায় সব কভার করা সম্ভব নয়।

ফাইলটি সেভ করুন (সঠিক লোকেশন এবং বৈধ ইমেইল ঠিকানা লিখতে পরামর্শ দেওয়া হয়)। তারপর snmpd সার্ভিস সক্ষম করুন এবং শুরু করুন:

# systemctl enable snmpd.service
# systemctl start snmpd

নিশ্চিত হন সার্ভিস চলছে:

# systemctl status snmpd

RHEL/CentOS/Fedora-এ SNMP ইনস্টল ও কনফিগারেশন

আপনার সার্ভারে ফায়ারওয়াল থাকলে, TCP/UDP পোর্ট ১৬১ এবং ১৬২-এ কানেকশন অনুমতি দিন। firewalld-এ SNMP পোর্ট খুলতে নিচের কমান্ডগুলো ব্যবহার করুন:

# firewall-cmd --zone=public --add-port=161/udp --permanent
# firewall-cmd --zone=public --add-port=161/tcp –permanent
# firewall-cmd --zone=public --add-port=162/udp --permanent
# firewall-cmd --zone=public --add-port=162/tcp --permanent
# firewall-cmd --reload

Snmpwalk ব্যবহার করে SNMP এজেন্ট পোলিং

আপনি snmpwalk টুল ব্যবহার করে SNMP এজেন্ট পোল করতে পারেন। SMMPv2 প্রোটোকল ব্যবহার করে লোকালি সার্ভিস চেক করতে এই কমান্ড ব্যবহার করুন:

# snmpwalk -v 2c -c public -O e 127.0.0.1

যদি SNMP সঠিকভাবে কনফিগার করা থাকে, আপনি এজেন্ট থেকে SNMP ডেটার একটি সেট পাবেন।

কনফিগারেশন ফাইল সেট করা এবং একটি টেস্ট কমান্ড চালানোর পর, আমি নিচের এরর পেয়েছিলাম:

Timeout: No Response from localhost

আমি কনফিগারেশন ফাইলটি ক্লিয়ার করে এবং উপরে নির্দিষ্ট লাইনগুলো মাত্র যোগ করে এটি ফিক্স করেছি। আপনার যদি কোনো স্পেসিফিক সেটিংস প্রয়োজন হয়, তবে সবকিছু ভালোভাবে চেক করুন, কারণ সার্ভিস কোনো সমস্যা ছাড়া শুরু হয়, কিন্তু কাজ করে না।

আপনি লোকালি আপনার সার্ভার কুয়েরি করতে এই কমান্ডও ব্যবহার করতে পারেন:

# snmpwalk -v2c -c public localhost system

SNMPv2-MIB::sysDescr.0 = STRING: Linux server1.test.com 4.18.0-147.8.1.el8_1.x86_64 #1 SMP Thu Apr 9 13:49:54 UTC 2020 x86_64 SNMPv2-MIB::sysObjectID.0 = OID: NET-SNMP-MIB::netSnmpAgentOIDs.10 DISMAN-EVENT-MIB::sysUpTimeInstance = Timeticks: (106564) 0:17:45.64 SNMPv2-MIB::sysContact.0 = STRING: gedc2-admins@woshub.com SNMPv2-MIB::sysName.0 = STRING: server1.test.com SNMPv2-MIB::sysLocation.0 = STRING: GE-DC2 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ SNMPv2-MIB::sysORUpTime.6 = Timeticks: (0) 0:00:00.00 SNMPv2-MIB::sysORUpTime.7 = Timeticks: (0) 0:00:00.00 SNMPv2-MIB::sysORUpTime.8 = Timeticks: (0) 0:00:00.00 SNMPv2-MIB::sysORUpTime.9 = Timeticks: (0) 0:00:00.00 SNMPv2-MIB::sysORUpTime.10 = Timeticks: (0) 0:00:00.00

তারপর নিশ্চিত করুন যে আপনার SNMP এজেন্ট রিমোটলি উপলব্ধ। অন্য একটি সার্ভারে এই কমান্ড চালান (এটি করার আগে snmp টুলস ইনস্টল করুন):

# snmpwalk -v2c -c public 192.168.21.205 system

RHEL/CentOS/Fedora-এ SNMP ইনস্টল ও কনফিগারেশন

আপনি দেখতে পাচ্ছেন, রিমোট সার্ভার SNMP-এর মাধ্যমে সার্ভার থেকে তথ্য পেয়েছে। এখন আপনি সার্ভারটি যেকোনো SNMP মনিটরিং সিস্টেমে (যেমন Zabbix বা Cacti) যোগ করতে পারেন।

VMWare ESXi হোস্টে SNMP কনফিগারেশনের ऊपर একটি লেখা এখানে।

লিনাক্স CentOS/RHEL/Fedora-এ SNMPv3 কনফিগারেশন

লেখার শুরুতে আমরা দেখিয়েছি কিভাবে SNMP v1 এবং v2 ব্যবহার করা একটি SNMP এজেন্ট কনফিগার করতে হয়। SNMPv3 প্রোটোকলের একটি nieuwer এবং আরও সিকিউর ভার্সন যা অথেন্টিকেশন এবং এনক্রিপশন সাপোর্ট করে। SNMPv3 কনফিগার করতে, একটি ইউজার পাসওয়ার্ড সহ তৈরি করুন, এনক্রিপশন পাসওয়ার্ড সেট করুন, অ্যাক্সেস রাইটস এবং এনক্রিপশন অ্যালগরিদম (MD5 বা SHA) সেট করুন।

SNMPv3-এর জন্য একটি ইউজার তৈরি করতে, snmpd ডেমন বন্ধ করুন:

# systemctl stop snmpd

তারপর ইউজার তৈরি করুন:

# net-snmp-create-v3-user -ro -A o2ps2w0dD -a SHA -X r30svV33 -x AES snmpuser

এখানে net-snmp-create-v3-user-এর সিনট্যাক্স:

net-snmp-create-v3-user [-ro] [-A authpass] [-a MD5|SHA] [-X privpass][-x DES|AES] [username]

  • -ro – এর মানে ইউজারের রিড-অনলি প্রিভিলেজ আছে
  • Authpass – অথেন্টিকেশন পাসওয়ার্ড
  • Privpass – প্রাইভেট কি

কমান্ড চালানোর পর, নির্দিষ্ট পাসওয়ার্ড এবং কি সহ একটি ইউজার তৈরি হবে:

RHEL/CentOS/Fedora-এ SNMP ইনস্টল ও কনফিগারেশন

সার্ভিস শুরু করুন:

# systemctl start snmpd

snmpwalk ব্যবহার করে SNMP এজেন্ট পোল করার চেষ্টা করুন। মনে রাখবেন যে SNMPv3-এ পোল করতে হলে, আপনাকে ইউজার নাম, পাসওয়ার্ড এবং কি নির্দিষ্ট করতে হবে।

# snmpwalk -v3 -a SHA -A o2ps2w0dD -x AES -X r30svV33 -l authPriv -u snmpuser 192.168.21.205 | head

  1. RHEL, CentOS এবং Fedora-এর পার্থক্য

  2. ধাপে ধাপে গাইড: Oracle APEX ORDS-সহ ইনস্টল এবং কনফিগারেশন

  3. CentOS/RHEL-এ বাশ অটো-কম্পলিশন সক্ষম করা: ধাপে ধাপে গাইড

  4. Windows 10-এ XAMPP ইনস্টল ও কনফিগারেশন: PHP ডেভেলপমেন্টের জন্য গাইড