Ми опишемо та вирішимо найпоширеніші помилки, які виникають при використанні антивірусу ClamAV (clamscan, clamdscan та freshclam).
Помилки компіляції ClamAV із вихідного коду тут не розглядаються.
clamdscan "Can't open file or directory ERROR"
Коли ви скануєте файли або каталоги, можливо, деякі з них викликатимуть цю помилку. Відповідні файли не скануються і уникають перевірки на наявність шкідливого програмного забезпечення.
Це може бути пов'язано з правами доступу до каталогів або файлів, тому потрібно переконатися, що clamdscan має права на читання і запис цих папок і файлів.
Але це також може бути пов'язано з AppArmor. Рішення — перевести clamd у режим "complain" в AppArmor. Ось рішення для Debian:
apt-get install apparmor-utils
aa-complain /usr/sbin/clamd
clamdscan "File path check failure: Permission denied. ERROR"
Щоб виправити цю помилку, ви можете спробувати три наступні рішення:
- Надати файлам і каталогам права 666: chmod 666 *
- Використовувати clamdscan з опцією --fdpass: clamdscan --fdpass
- Використовувати clamdscan з опцією --stream: clamdscan --stream
"Ignoring mirror (due to previous errors)" у журналах freshclam
Коли з'являється це повідомлення про помилку, це означає, що ви не можете завантажити бази даних сигнатур антивірусу.
Це повідомлення відповідає версіям ClamAV до 0.102.
Починаючи з версії 0.102, код мережевої частини freshclam був радикально змінений. Таким чином, для вирішення цієї помилки необхідно оновити версію ClamAV.
"nonblock_connect: connect(): fd=5 errno=101: Network is unreachable" і "WARNING: getpatch: Can't download daily-xxx.cdiff from db.local.clamav.net" у журналах freshclam
Це повідомлення вказує на неможливість підключення до серверів ClamAV для завантаження баз даних сигнатур антивірусу.
- Можливо, на вашому сервері є проблема з підключенням до Інтернету.
- Можливо, ви використовуєте проксі-сервер (прозорий чи ні). Freshclam надає перевагу прямому підключенню до серверів ClamAV і погано підтримує підключення через проксі. Особливо якщо проксі змінює властивості HTTP(S)-з'єднання, наприклад, змінює User-Agent.
- Можливо, ви використовуєте дуже стару версію антивірусу ClamAV, і її необхідно оновити.
"WARNING: Can't read main.cvd header from db.local.clamav.net (IP: )" у журналах freshclam
Ви не можете завантажити бази даних сигнатур антивірусу.
Можливо, файл mirrors.dat переповнений. Цей файл використовується для чорного списку серверів-дзеркал ClamAV, які не працюють. Якщо у вас сталася втрата підключення до Інтернету, можливо, freshclam заблокував усі дзеркала, і жодне більше не доступне.
Рішення — видалити цей файл (наприклад, /var/lib/clamav/mirrors.dat для Debian) і перезапустити freshclam.
Зауважте, що починаючи з версій 0.100 ця проблема більше не існує. Отже, якщо ви бачите таку помилку, це означає, що важливо оновити ClamAV.
"WARNING: Message: SSL peer certificate or SSH remote key was not OK" у журналах freshclam
Ви не можете оновити бази даних сигнатур антивірусу, і з'являється це повідомлення.
Можливо, ваш комп'ютер має неправильну дату та час. Оновіть дату та час за допомогою NTP.
"ERROR: This tool requires libclamav with functionality level XXX or higher (current f-level: XXX)"
Можливо, у вас встановлено дві різні версії libclamav на вашій системі. Це можуть бути дві версії, надані вашою операційною системою. Тому просто видаліть старішу версію. Це також може бути змішанням між встановленням через вихідний код ClamAV та версією, наданою операційною системою. Завжди слід переконатися, що на вашій системі встановлена лише одна версія libclamav.
"LibClamAV Error: yyerror()" і "LibClamAV Warning: cli_loadyara: failed to parse or load 1 yara rules from file"
ClamAV підтримує антивірусні сигнатури у форматі YARA. Але використовуваний інтерпретатор YARA є специфічним і внутрішнім для ClamAV. І цей інтерпретатор yara не є на 100% сумісним з офіційним інтерпретатором Yara.
Тому деякі правила YARA не працюють повністю з ClamAV.
Щоб вирішити цю проблему:
- Або ви переписуєте правило YARA, яке викликає проблему, щоб зробити його сумісним з ClamAV.
- Або ви сподіваєтеся, що в найближчому майбутньому інтерпретатор Yara для ClamAV буде покращено.
Помилки "LibClamAV Error", такі як "LibClamAV Error: [scan_biff_for_xlm_macros] Unexpected state value 4" при використанні ClamAV.
Ці помилки є дуже специфічними і можуть вказувати на проблему сканування даних, погано оброблених ClamAV. Тому рекомендується повідомити про цю інформацію команду розробників ClamAV через
офіційний Github.
"LibClamAV Warning: fmap: map allocation failed", "LibClamAV Error: CRITICAL: fmap() failed" і "Can't allocate memory ERROR" при використанні ClamAV
Це повідомлення про помилку зазвичай вказує на відсутність оперативної пам'яті під час сканування. Отже:
- Або у вас недостатньо пам'яті, буде доцільно збільшити обсяг оперативної пам'яті на вашому сервері або VPS.
- Або ви скануєте надто великий об'єкт. Щоб уникнути цього, встановіть обмеження на розмір об'єктів, що скануються: --max-filesize або --max-scansize у командному рядку.
- Або ви скануєте системні файли або каталоги, наприклад каталог /proc під Linux. Це заборонено, не робіть цього.
"Segmentation fault (core dumped)" при використанні ClamAV
Це повідомлення про помилку, ймовірно, є найважливішим з усіх. Воно вказує на аварійне завершення роботи антивірусу, яке було настільки серйозним, що операційна система завершила процес ClamAV.
Але це повідомлення є занадто загальним і може бути спричинене різними можливими причинами, такими як налаштування вашої операційної системи, доступні ресурси (RAM) або об'єкт, який ви намагаєтесь сканувати з ClamAV (надто великий, або системний файл, як /proc, наприклад).
Тому неможливо визначити точну причину цієї помилки, і найкращим рішенням буде відкрити звіт про помилку для команди розробників ClamAV на їхньому
офіційному Github.
TCP: No tcp AF_INET/AF_INET6 SOCK_STREAM socket received from systemd
Демон ClamAV працює, але TCP-порт 3310 не відкритий: команда "lsof -i|grep clamd" нічого не повертає.
Під час запуску clamd з'являється наступне повідомлення про помилку: "TCP: No tcp AF_INET/AF_INET6 SOCK_STREAM socket received from systemd".
Рішенням є створення каталогу /etc/systemd/system/clamav-daemon.socket.d/ і додавання до нього файлу /etc/systemd/system/clamav-daemon.socket.d/extend.conf:
cat /etc/systemd/system/clamav-daemon.socket.d/extend.conf
[Socket]
SocketUser=clamav
ListenStream=3310
Потім перезапустіть ваш сервер.
Політика кінця життя (End-Of-Life або EOL) антивірусу ClamAV
З 15 грудня 2024 року підтримуються та оновлюються лише
версії 1.0.x, 1.3.x та 1.4.x антивірусу ClamAV.
Якщо у вас встановлена більш стара версія, ClamAV більше не повинен працювати, оскільки нові бази даних сигнатур більше не сумісні з цими старими версіями. Отже, або ви використовуєте наші
додаткові сигнатури для ClamAV принаймні в професіональній версії, або вам терміново слід оновити ваш антивірус ClamAV. Або обидва варіанти — це ще краще!
Для того щоб дізнатися більше, я рекомендую прочитати нашу статтю про
старі версії антивірусу ClamAV.
Антивірус ClamWin більше не працює
ClamWin — це порт для Windows антивірусу ClamAV, розроблений сторонніми розробниками. Тому ClamWin не підтримується і не розвивається командами Cisco / Sourcefire. На жаль, цей антивірус для Windows більше не розвивається його власником, а остання доступна версія — 0.103.2.1. Як було зазначено в попередньому пункті, версії 0.103 більше не підтримуються ClamAV, тому ClamAV припинив завантаження баз даних сигнатур для ClamWin, що робить його абсолютно неефективним. Тому не рекомендується використовувати ClamWin для використання в компанії або в продуктивному середовищі.
Рішення, яке ми радимо, — це
завантажити офіційну версію ClamAV для Windows. Доступні версії для 32-біт та 64-біт. Хоча ця версія не має графічного інтерфейсу (GUI), командний рядок ClamAV не є дуже складним, і кілька простих файлів BAT будуть потрібні для автоматизації сканування вашого жорсткого диска.
Також існує
неофіційний порт антивірусу ClamAV для Windows, який є цікавим, оскільки працює з дуже старими версіями Windows (WinNT і Windows 98!). Але це також командний рядок, і немає графічного інтерфейсу.
Помилка 426 з сигнатурами SecuriteInfo.com
Якщо ви отримуєте помилку 426 при використанні freshclam для завантаження
наших антивірусних сигнатур, це означає, що у вас є безкоштовний обліковий запис і застарілий антивірус ClamAV.
Рішення полягає в тому, щоб оновити вашу установку ClamAV або вибрати професійну підписку для завантаження наших сигнатур. Або зробити обидва кроки, щоб значно покращити виявлення шкідливих програм за допомогою вашої установки.
Не можу завантажити securiteinfoold.hdb або маю помилки 'nonblock_recv: recv timing out (30 secs)' або 'Download failed (28) ... Message: Timeout was reached'
- Для ClamAV версії старшої за 0.102.2 додайте "ReceiveTimeout 2400" до вашого файлу freshclam.conf та перезапустіть демон freshclam.
- Для ClamAV версії 0.102.2 та новіших, видаліть ReceiveTimeout з вашого файлу freshclam.conf та перезапустіть демон freshclam.
Оновлення вашої версії ClamAV
Як ви бачите, більшість проблем вирішуються оновленням антивірусу ClamAV до останньої відомої версії. Є кілька методів для цього, і ви можете вибрати той, який відповідає вашому середовищу.
- Якщо ви перекомпілювали ClamAV з його вихідних кодів, достатньо взяти останню версію вихідних файлів ClamAV і перекомпілювати їх у вашому середовищі. Однак будьте обережні з версією вашої операційної системи: якщо ви використовуєте занадто стару операційну систему, остання версія ClamAV може викликати помилки компіляції.
- Якщо у вас є виконувана версія ClamAV, наприклад, для ClamAV для Windows, достатньо встановити пакет, що містить нову версію виконуваного файлу. Це найпростіший варіант!
- Якщо вашу операційну систему надала ClamAV, як це зазвичай буває для більшості середовищ Linux (Ubuntu, Debian, Red Hat, CentOS...), тоді необхідно оновити вашу операційну систему. Якщо це оновлення неможливе через обмеження, то рекомендуємо видалити пакет ClamAV з вашої операційної системи та встановити та перекомпілювати ClamAV з вихідних кодів. Але як згадувалося раніше, якщо ваша операційна система занадто стара, ClamAV може не скомпілюватися.
Щоб дізнатися більше, ми рекомендуємо прочитати нашу статтю
Що загрожує використанню старої версії антивірусу ClamAV?
Підтримка SecuriteInfo.com
Якщо у вас є конкретні потреби щодо ClamAV, такі як договір на технічне обслуговування, підтримка компіляції або технологічне спостереження, не соромтеся
звернутися до нас та пояснити свої потреби. Ми будемо раді допомогти вам у захисті від шкідливих програм за допомогою ClamAV.
Офіційна підтримка ClamAV
Якщо у вас є інші повідомлення про помилки або якщо ви хочете отримати безпосередню підтримку від команд розробників ClamAV, у вас є два варіанти:
- Або ви реєструєтеся на офіційному списку розсилки (тільки англійською мовою) і потім можете задати своє питання по електронній пошті. Спільнота та деякі розробники ClamAV дадуть відповідь на ваш запит у цьому списку.
- Або ви створюєте тикет на їхньому офіційному Github. Але для цього ви повинні бути розробником, оскільки вам потрібно буде надати багато технічних даних для вашого тикета. Це не для широкої аудиторії.
Чи знали ви?
SecuriteInfo.com надає
додаткові антивірусні сигнатури для ClamAV. Це значно підвищує ефективність виявлення шкідливих програм та спаму.
Примітка: ClamAV є зареєстрованою торговою маркою Cisco
Tags
ANTIVIRUS
CLAMAV
LINUX
WINDOWS
MACOS
Inscription à notre lettre d'information
Inscrivez-vous à notre
lettre d'information pour vous tenir au courant de nos actualités et de nos dernières trouvailles.