लॉन्चर उत्पाद 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 संदर्भकमांड, फ़्लैग और फ़ाइलें

सारांश #

उपयोग
imaxe clamav <subcomando> [<ruta>] [--recursive] [--quarantine|--remove] [--json]

जो सबकमांड फ़ाइलों को स्कैन, स्थानांतरित या हटाते हैं उन्हें root विशेषाधिकार चाहिए (sudo का उपयोग करें), क्योंकि वे अन्य उपयोगकर्ताओं के पथ पढ़ते हैं और सिस्टम क्वारंटीन में लिखते हैं। मशीन-पठनीय आउटपुट पाने के लिए किसी भी कमांड में --json जोड़ें, जो स्क्रिप्टिंग के लिए उपयुक्त है।

सबकमांड #

सबकमांडयह क्या करता हैप्रासंगिक फ़्लैग
statusClamAV की स्थिति: engine, मोड (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>pathमूल पथquarantine 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)स्कैन ने एक या अधिक खतरे पहचाने।रिपोर्ट देखें; उन्हें अलग करने के लिए scan को --quarantine के साथ फिर से चलाएँ।
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» का आउटपुट भेजें और हम आपको जल्दी जवाब देंगे।

सहायता से संपर्क करें