ClamAV® — это антивирус с открытым исходным кодом, способный обнаруживать трояны, вирусы, вредоносные программы и другие угрозы. |
Contents
Установка
ClamAV можно установить, выполнив следующую команду в терминале:
$ sudo apt install clamav clamav-daemon
Описание пакетов:
- clamav: антивирусный пакет ClamAV. Включает:
- clamav-freshclam: утилита ClamAV для обновления сигнатур вирусной базы данных и используемая для интеграции с почтовым сервером
- clamav-daemon: демон-сканер для ClamAV для автоматического сканирования. Включает:
- clamdscan: интерфейс командной строки для clamav-daemon
После завершения установки проверьте статус службы ClamAV с помощью команды ниже.
$ sudo systemctl is-enabled clamav-daemon && sudo systemctl status clamav-daemon
Поддержание актуальных обновлений с freshclam
После установки ClamAV вам нужно настроить зеркало и обновить базы сигнатур, а затем запустить и включить службу clamav-freshclam, чтобы обеспечить автоматическое обновление баз сигнатур вредоносного ПО/вирусов.
Откройте конфигурацию freshclam '/etc/clamav/freshclam.conf':
$ sudo nano /etc/clamav/freshclam.conf
Настройте параметр ?DatabaseMirror, указав код вашей страны по умолчанию. Либо можете оставить значение по умолчанию.
DatabaseMirror db.<country code>.clamav.net
Сохраните файл и выйдите из редактора.
Теперь выполните команду freshclam, приведённую ниже, чтобы обновить антивирусную базу данных.
$ sudo freshclam
Как только база данных будет обновлена, выполните команду systemctl, приведённую ниже, чтобы запустить и включить службу clamav-freshclam. Антивирусная база данных будет обновляться автоматически службой clamav-freshclam.
$ sudo systemctl enable --now clamav-freshclam
Наконец, проверьте службу clamav-freshclam с помощью команды ниже. Вы увидите, что служба запущена и включена.
$ sudo systemctl status clamav-freshclam
Примечание: Рекомендуется перезагрузить машину после установки, чтобы база сигнатур вирусов обновилась и ClamAV получил информацию об обновлении.
Сканирование файлов и каталогов с помощью ClamAV
Перед сканированием файлов или каталогов убедитесь, что служба clamav-daemon запущена. Проверьте её с помощью команды ниже.
$ sudo systemctl status clamav-daemon
Если служба запущена, вы увидите вывод вида active (running).
ClamAV может сканировать отдельные файлы или, при необходимости, целые каталоги. Примеры команд приведены ниже.
Чтобы просканировать файл с помощью ClamAV, выполните команду clamscan, указав затем имя файла, как показано ниже.
clamscan file.docx
При сканировании каталога укажите имя каталога после команды, например, как показано ниже.
clamscan /home/
Теперь вы можете выполнить команду ниже, чтобы пропустить любые результаты со статусом OK.
clamscan -o /home/
Или можно показывать только заражённые файлы с помощью параметра -i.
clamscan -i /home/
Выполните команду ниже, чтобы просканировать каталог рекурсивно и вывести только заражённые файлы.
clamscan -i -r /home
В заключение вы можете использовать -r вместе с параметром --move, чтобы переместить заражённые файлы в целевой каталог.
clamscan -i -r --move=/home/$USER/infected /home/
Примечание: Если вы хотите, чтобы ClamAV удалял заражённые файлы, добавьте параметр --remove.
По умолчанию ClamAV не сканирует файлы размером больше 20 МБ. Чтобы переопределить это ограничение, к команде нужно добавить параметры --max-filesize=2000M --max-scansize=2000M, где значение 2000M при необходимости может быть заменено пользователем. Пример приведён ниже.
$ clamscan --max-filesize=2000M --max-scansize=2000M --recursive=yes --infected /home
Примечание: Полное сканирование ClamAV каждого файла в вашей домашней папке может занять много времени (2+ часа) в зависимости от количества файлов в вашей домашней папке.
Автоматическое сканирование и защита в реальном времени с помощью демона ClamAV
ClamAV обеспечивает автоматическое сканирование через службу clamav-daemon. Чтобы настроить clamav-daemon на автоматическое сканирование системных каталогов, таких как /home, /etc и /var.
Отредактируйте конфигурацию демона ClamAV /etc/clamav/clamd.conf.
$ sudo nano /etc/clamav/clamd.conf
Вставьте конфигурацию ниже, чтобы настроить автоматическое сканирование каталогов вроде /home, /etc и /var. Параметр ?ScanOnAccess включит защиту в реальном времени через clamd, чтобы сканировать файлы при обращении к ним.
ScanOnAccess yes OnAccessIncludePath /home OnAccessIncludePath /etc OnAccessIncludePath /var
Сохраните файл и выйдите из редактора.
Теперь выполните команду systemctl, приведённую ниже, чтобы запустить и включить службу clamav-daemon.
sudo systemctl restart clamav-daemon
Проверьте статус службы clamav-daemon, чтобы убедиться, что она запущена:
sudo systemctl status clamav-daemon
Отладка ClamAV
Файл журнала ClamAV по умолчанию находится по пути /var/log/clamav/clamav.log. Проверить его можно командой tail, как показано ниже:
tail -f /var/log/clamav/clamav.log
Теперь выполните команду tail ниже, чтобы проверить лог службы freshclam, которая автоматически обновляет базу антивирусных сигнатур:
tail -f /var/log/clamav/freshclam.log
Также вы можете мониторить статус демона ClamAV в реальном времени с помощью clamdtop:
clamdtop
