লঞ্চার পণ্য Bitnami ডকুমেন্টেশনimaxe CLI ব্লগ যোগাযোগ
imaxe clamav অ্যান্টিভাইরাস v1.0.0

অ্যান্টিভাইরাস, সবসময় হালনাগাদ

ClamAV ইঞ্জিন দিয়ে ফাইল ও ডিরেক্টরিতে ম্যালওয়্যার স্ক্যান করুন, সংক্রমিত জিনিস কোয়ারেন্টাইনে আলাদা করুন এবং freshclam দিয়ে সিগনেচার হালনাগাদ রাখুন। একটি কমান্ড স্ক্যান করে; আরেকটি হালনাগাদ করে — কোনো চমক নেই।

$ imaxe clamav scan /srv/uploads --recursive --quarantine
সংস্করণ
v1.0.0
সাবকমান্ড
5
কনফিগ
/etc/imaxe/clamav.yml
root প্রয়োজন
হ্যাঁ
সিগনেচার
freshclam

এই মডিউল কী করে #

একটি অ্যান্টিভাইরাস আপনার সার্ভারের ফাইলগুলোকে পরিচিত ম্যালওয়্যারের সিগনেচার-এর একটি ক্যাটালগের সাথে তুলনা করে। যদি কিছু মিলে যায়, এটি সেটিকে সংক্রমিত হিসেবে চিহ্নিত করে যাতে সেটি ছড়াতে না পারে — উদাহরণস্বরূপ, একটি পাবলিক ফোল্ডারে আপলোড করা একটি ক্ষতিকর অ্যাটাচমেন্ট বা FTP-এর মাধ্যমে আসা একটি কলুষিত ফাইল।

clamav মডিউলটি কয়েকটি পরিষ্কার কমান্ডের মাধ্যমে ClamAV ইঞ্জিনকে হাতের নাগালে আনে: এর অবস্থা যাচাই করুন, আপনি যে পাথ চান তা স্ক্যান করুন (একটি ফাইল বা একটি সম্পূর্ণ গাছ), সংক্রমিত যেকোনো কিছু নিয়ে কী করবেন তা ঠিক করুন — কেবল রিপোর্ট করুন, মুছে ফেলুন বা একটি নিরাপদ কোয়ারেন্টাইনে সরান যেখান থেকে আপনি পরে তা পুনরুদ্ধার করতে পারেন — এবং freshclam দিয়ে সিগনেচার ডাটাবেস হালনাগাদ রাখুন। কোয়ারেন্টাইন ফাইলটি না মুছে আলাদা করে রাখে, তাই আপনি কখনো ভুলবশত কিছু হারান না।

শুরু করার আগে

একটি স্ক্যান সেই মুহূর্তে আপনার কাছে যে সিগনেচার ডাটাবেস আছে তা দিয়ে শনাক্ত করে। কয়েক দিন হালনাগাদ না করে থাকলে, সাম্প্রতিক হুমকি যাতে হাতছাড়া না হয় তার জন্য আগে imaxe clamav update চালান। বড় গাছ স্ক্যান করতে সময় ও CPU লাগতে পারে: আপনি সত্যিই যা যাচাই করতে চান সেই পাথে সংকুচিত করুন।

দ্রুত নির্দেশিকাধাপে ধাপে কাজ

সাধারণ কাজ #

আপনি কী করতে চান তা বেছে নিন। প্রতিটি রেসিপিতে কমান্ডটি প্রস্তুত অবস্থায় আছে — শুধু পাথটি নিজেরটি দিয়ে বদলান এবং কপি করুন চাপুন।

1

ClamAV প্রস্তুত কিনা দেখুন

ইঞ্জিন, মোড এবং আপনার সিগনেচার কত পুরনো তা যাচাই করে।

SSH-এর মাধ্যমে আপনার সার্ভারে সংযোগ করুন এবং সামগ্রিক অবস্থা চান:

terminal
$ sudo imaxe clamav status

কেবল সিগনেচার ডাটাবেসে আগ্রহী — সংস্করণ, তারিখ ও ফাইল? db ব্যবহার করুন:

terminal
$ sudo imaxe clamav db
আপনি ইঞ্জিন, মোড (daemon বা on-demand), freshclam-এর অবস্থা এবং সিগনেচার কত পুরনো তা দেখতে পাবেন। পুরনো হয়ে থাকলে, সিগনেচার হালনাগাদ করুন-এ যান।
2

একটি ফোল্ডার স্ক্যান করুন

একটি পাথ যাচাই করুন এবং কিছু স্পর্শ না করেই রিপোর্ট রাখুন।

--recursive দিয়ে একটি ডিরেক্টরি ও তার সব বিষয়বস্তু স্ক্যান করুন। ডিফল্টভাবে এটি কেবল রিপোর্ট করে: এটি কিছু মুছে না বা সরায় না।

terminal
$ sudo imaxe clamav scan /home --recursive

শুধু একটি ফাইল? --recursive ছাড়াই এটিকে সরাসরি পাথ দিন:

terminal
$ sudo imaxe clamav scan /srv/uploads/factura.pdf
শেষ হলে আপনি দেখতে পাবেন কতগুলো ফাইল যাচাই হয়েছে এবং, যদি থাকে, কোনগুলো একটি সিগনেচারের সাথে মেলে। কোনো সংক্রমিত কিছু পাওয়া গেলে, পরের রেসিপিতে যান।
3

সংক্রমিত জিনিস স্ক্যান ও আলাদা করুন

পজিটিভ আসা সবকিছু স্বয়ংক্রিয়ভাবে কোয়ারেন্টাইনে সরায়।

একটি পাথ স্ক্যান করুন এবং --quarantine দিয়ে, প্রতিটি সংক্রমিত ফাইলকে যেখানে আছে সেখানে না রেখে কোয়ারেন্টাইনে সরান:

terminal
$ sudo imaxe clamav scan /srv/uploads --recursive --quarantine

আলাদা করার বদলে সংক্রমিত জিনিস সরাসরি মুছে ফেলতে চাইলে, --remove ব্যবহার করুন (এটি অপরিবর্তনীয়, বুদ্ধিমানের মতো ব্যবহার করুন):

terminal
$ sudo imaxe clamav scan /srv/uploads --recursive --remove
পজিটিভ ফাইলগুলো তাদের ফোল্ডার ছেড়ে সংরক্ষিত ও আলাদা অবস্থায় রাখা হয়। কেউ সেগুলো চালাতে পারে না, এবং পরে সেগুলো পুনরুদ্ধার নাকি মুছবেন তা আপনি ঠিক করেন।
4

কোয়ারেন্টাইন পর্যালোচনা ও পুনরুদ্ধার করুন

কী আলাদা করা আছে দেখুন এবং প্রয়োজনে একটি ফলস পজিটিভ পুনরুদ্ধার করুন।

কোয়ারেন্টাইনে কী আছে তার তালিকা দিন — প্রতিটি এন্ট্রি এর শনাক্তকারী, উৎস, সিগনেচার ও তারিখসহ আসে:

terminal
$ sudo imaxe clamav quarantine list

এটি কি একটি ফলস পজিটিভ ছিল? তালিকায় দেখানো শনাক্তকারী ব্যবহার করে এটি তার মূল পাথে পুনরুদ্ধার করুন:

terminal
$ sudo imaxe clamav quarantine restore a1b2c3d4

আলাদা করা সবকিছু আবর্জনা তা নিশ্চিত হওয়ার পর, কোয়ারেন্টাইন একেবারে খালি করুন:

terminal
$ sudo imaxe clamav quarantine purge --yes
আপনি কোয়ারেন্টাইন পুরোপুরি নিয়ন্ত্রণ করেন: পর্যালোচনা করুন, যা ক্ষতিকর ছিল না তা পুনরুদ্ধার করুন এবং বাকিটা কোনো চিহ্ন ছাড়াই মুছে ফেলুন।
5

সিগনেচার হালনাগাদ করুন

নতুন হুমকি শনাক্ত করতে সর্বশেষ সংজ্ঞাগুলো ডাউনলোড করুন।

সবচেয়ে সাম্প্রতিক সিগনেচার ডাটাবেস আনতে freshclam চালান:

terminal
$ sudo imaxe clamav update

এরপর, ডাটাবেসটি তার সংস্করণ ও তারিখসহ হালনাগাদ কিনা নিশ্চিত করুন:

terminal
$ sudo imaxe clamav db
এখন থেকে আপনার স্ক্যানগুলো সর্বশেষ হুমকি চিনতে পারে। ঘন ঘন হালনাগাদ করুন — প্রতিদিন নতুন ম্যালওয়্যার দেখা দেয়।
--remove নিয়ে সতর্ক থাকুন

মুছে ফেলা ফাইলটিকে ফিরে পাওয়ার উপায় ছাড়াই সরিয়ে দেয়, আর কোনো অ্যান্টিভাইরাসই ফলস পজিটিভ থেকে মুক্ত নয়। সন্দেহ হলে, সবসময় --quarantine ব্যবহার করুন: এটি সমানভাবে আলাদা করে এবং আপনি ভুল করলে পুনরুদ্ধার করতে দেয়।

CLI রেফারেন্সকমান্ড, ফ্ল্যাগ ও ফাইল

সারসংক্ষেপ #

uso
imaxe clamav <subcomando> [<ruta>] [--recursive] [--quarantine|--remove] [--json]

যে সাবকমান্ডগুলো ফাইল স্ক্যান, সরানো বা মুছে ফেলে সেগুলোর জন্য root প্রিভিলেজ প্রয়োজন (sudo ব্যবহার করুন), কারণ এগুলো অন্য ব্যবহারকারীর পাথ পড়ে এবং সিস্টেম কোয়ারেন্টাইনে লেখে। স্ক্রিপ্টিং-এর উপযোগী মেশিন-পাঠযোগ্য আউটপুট পেতে যেকোনো কমান্ডে --json যোগ করুন।

সাবকমান্ড #

সাবকমান্ডকী করেপ্রাসঙ্গিক ফ্ল্যাগ
statusClamAV-এর অবস্থা: ইঞ্জিন, মোড (daemon/on-demand), freshclam ও সিগনেচার ডাটাবেস।--json
scanএকটি পাথ স্ক্যান করে; সংক্রমিত জিনিস রিপোর্ট, মুছে ফেলা বা কোয়ারেন্টাইন করতে পারে।--recursive, --remove, --quarantine, --json
updatefreshclam-এর মাধ্যমে সিগনেচার ডাটাবেস হালনাগাদ করে।--json
dbসিগনেচার ডাটাবেসের তথ্য: সংস্করণ, তারিখ ও ফাইল।--json
quarantineসংক্রমিত ফাইলের কোয়ারেন্টাইন পরিচালনা করে (সাবকমান্ড গ্রুপ)।list · restore · purge

quarantine গ্রুপটি তিনটি সাবকমান্ড একত্র করে:

সাবকমান্ডকী করেপ্রাসঙ্গিক ফ্ল্যাগ
quarantine listকোয়ারেন্টাইনে থাকা ফাইলের তালিকা দেয় (উৎস, সিগনেচার, তারিখ)।--json
quarantine restoreকোয়ারেন্টাইন থেকে একটি ফাইল তার মূল পাথে বা একটি নির্দিষ্ট গন্তব্যে পুনরুদ্ধার করে।<id> [<destino>]
quarantine purgeকোয়ারেন্টাইনের সবকিছু স্থায়ীভাবে মুছে ফেলে।--yes

আর্গুমেন্ট ও ফ্ল্যাগ #

ফ্ল্যাগ / আর্গুমেন্টধরনডিফল্টবিবরণ
<ruta> আবশ্যকpathscan-এ, স্ক্যান করার ফাইল বা ডিরেক্টরি।
<id> আবশ্যকstringquarantine restore-এ, কোয়ারেন্টাইন করা আইটেমের শনাক্তকারী (quarantine list-এ দেখানো হয়)।
<destino>pathruta originalquarantine restore-এ, ফাইলটি যে পাথে পুনরুদ্ধার করতে হবে। ডিফল্টভাবে এর মূল অবস্থান।
--recursiveboolfalsescan-এ, ডিরেক্টরির রিকার্সিভ স্ক্যান।
--quarantineboolfalsescan-এ, সংক্রমিত ফাইলগুলো কোয়ারেন্টাইনে সরায়।
--removeboolfalsescan-এ, সংক্রমিত ফাইলগুলো মুছে ফেলে। অপরিবর্তনীয়; --quarantine-এর সাথে পারস্পরিকভাবে বর্জনীয়।
--yesboolfalsequarantine purge-এ, জিজ্ঞাসা না করেই মুছে ফেলা নিশ্চিত করে।
--jsonboolfalseফলাফল stdout-এ JSON হিসেবে দেয়। প্রতিটি সাবকমান্ডে উপলব্ধ।

ফাইল ও পাথ #

পাথবিষয়বস্তু
/etc/imaxe/clamav.ymlমডিউলের কনফিগারেশন: কোয়ারেন্টাইন ডিরেক্টরি এবং স্ক্যান থেকে বাদ দেওয়া পাথ।
/var/lib/imaxe/clamav/quarantineকোয়ারেন্টাইন স্টোর: এখানেই পুনরুদ্ধারযোগ্য সংক্রমিত ফাইলগুলো আলাদা করে রাখা হয়।
/var/lib/clamav/freshclam দ্বারা রক্ষণাবেক্ষণ করা সিগনেচার ডাটাবেস (ম্যালওয়্যার সংজ্ঞা)।
/var/log/imaxe/clamav.logপ্রতিটি স্ক্যান, কোয়ারেন্টাইন ও হালনাগাদের কাঠামোবদ্ধ লগ।

clamav.yml-এর উদাহরণ:

/etc/imaxe/clamav.yml
quarantine_dir: /var/lib/imaxe/clamav/quarantine
scan:
  exclude:
    - /proc
    - /sys

scan.exclude হলো স্ক্যান যে পাথগুলো এড়িয়ে যায় তার একটি তালিকা; এটি ডিফল্টভাবে খালি আসে।

প্রস্থান কোড ও লগ #

প্রতিটি চালানো একটি কোড ফেরত দেয় যা আপনি echo $? দিয়ে যাচাই করতে পারেন — স্ক্রিপ্টে চেইন করার জন্য উপযোগী:

0OKঅপারেশন সফল; কোনো হুমকি নেই।
1ERRশ্রেণিবদ্ধ নয় এমন সাধারণ ত্রুটি। লগ পর্যালোচনা করুন।
2USAGEঅবৈধ বা অনুপস্থিত আর্গুমেন্ট।
3INFECTEDস্ক্যান সংক্রমিত ফাইল খুঁজে পেয়েছে।
4UPDATEসিগনেচার হালনাগাদ ব্যর্থ হয়েছে (freshclam)।

সমস্যা সমাধানের সময় লগটি সরাসরি অনুসরণ করুন:

terminal
$ sudo tail -f /var/log/imaxe/clamav.log

সমস্যা সমাধান #

উপসর্গসম্ভাব্য কারণসমাধান
আপনি INFECTED (কোড 3) পানস্ক্যান এক বা একাধিক হুমকি শনাক্ত করেছে।রিপোর্ট পর্যালোচনা করুন; সেগুলো আলাদা করতে --quarantine দিয়ে আবার scan চালান।
আপনি UPDATE (কোড 4) পানfreshclam সিগনেচার ডাউনলোড করতে পারেনি (নেটওয়ার্ক বা মিরর বন্ধ)।সার্ভারের ইন্টারনেট প্রবেশাধিকার যাচাই করুন এবং clamav update আবার চেষ্টা করুন।
স্ক্যানে অনেক সময় লাগেপাথটি অনেক বেশি ফাইল বা সিস্টেম পাথ জুড়ে বিস্তৃত।পাথটি সংকুচিত করুন এবং clamav.yml-এ scan.exclude দিয়ে অপ্রয়োজনীয় জিনিস বাদ দিন।
আমি একটি বৈধ ফাইল হারিয়েছি--quarantine দিয়ে কোয়ারেন্টাইনে সরানো একটি ফলস পজিটিভ।quarantine list দিয়ে এটি খুঁজুন এবং quarantine restore <id> দিয়ে পুনরুদ্ধার করুন।
অবস্থা পুরনো সিগনেচার দেখায়freshclam কিছুকাল চলেনি।clamav update চালান এবং clamav db দিয়ে যাচাই করুন।

ClamAV মডিউল নিয়ে আটকে গেছেন?

«imaxe <module> status --json» এর আউটপুট সহ আমাদের লিখুন, আমরা দ্রুত উত্তর দেব।

সাপোর্টে যোগাযোগ করুন