Ubuntu: установка и настройка антивируса ClamAV

Автор: | 03/05/2013
 

clamavВ дополнение к статье ClamAV: установка и настройка, в которой описывается то же, но для операционной системы FreeBSD — ещё одна, с учётом особенностей системы Debian/Ubuntu.

В целом, этот антивирус предназначен и больше всего используется для почтовых серверов. Однако, никто не мешает держать его в системе даже домашней — проверить «флешку» после посещения ей каких-либо Windows-машин (ниже будет привён пример как раз с таким накопителем после Windows).

Официальный сайт проекта — http://www.clamav.net.

Установка весьма проста:

# aptitude -y install clamav

Во время установки создаются пользователь и группа clamav.

После установки — обновим антивирусные базы:

# freshclam
ClamAV update process started at Tue Mar  5 16:32:12 2013
Downloading main.cvd [100%]
main.cvd updated (version: 54, sigs: 1044387, f-level: 60, builder: sven)
Downloading daily.cvd [100%]
daily.cvd updated (version: 16785, sigs: 892039, f-level: 63, builder: neo)
Downloading bytecode.cvd [100%]
bytecode.cvd updated (version: 214, sigs: 41, f-level: 63, builder: neo)
Database updated (1936467 signatures) from db.local.clamav.net (IP: 194.186.47.19)

Теперь можно запустить проверку. Для проверки используется две утилиты: clamscan или clamav-daemon.

clamav-daemon необходимо устанавливать отдельным пакетом:

# install clamav-daemon

Но его установку и использование в данной статье мы рассматривать не будем.

В настоящий момент — нас интересует утилита clamscan.

Если запустить clamscan без указания ключей — она проверит каталог, в котором вы находились в момент запуска.

Для проверки определённого каталога — он указывается в конце команды. Так же, для удобства, можно использовать ключ -i — этот ключ укажет программе выводить список только инфицированных файлов.

Ключ -r укажет проверять рекурсивно указанный каталог и все его подкаталоги. А опция —bell — воспроизводить звуковой сигнал при обнаружении проблемы.

Глубина проверки по-умолчанию составляет 15 уровней для каталогов, 8 для архивов. Изменить ограничение можно с помощью опций:

—max-recursion — для архивов;
—max-dir-recursion — каталоги;
—max-mail-recursion — e-mail.

Кроме того, по-умолчанию программа только сообщает о проблемных файлах, но не удаляет их. Для того, что бы в процессе проверки выполнялись действия — необходимо указать соответствующие опции:

—remove — удалить вирус;
—move=путь — переместить;
—copy=путь — скопировать.

Для ведения лога процесса проверки — используется опция —log.

Теперь — можно запустить проверку.

При проверке укажем:

# clamscan -i -r —bell —max-dir-recursion 50 —copy /home/setevoy/Infected/ —log=/var/log/clamav.log /media/1C6A-19CC/

-i — выводить информацию только о зараженных файлах;
-r — проверять подкаталоги;
—bell — подать звуковой сигнал при обнаружении вируса;
—max-dir-recursion 50 — проверять до 50 уровней вложенности каталогов;
—copy /home/setevoy/Infected/ — при обнаружении вируса копировать его в каталог /home/setevoy/Infected/;
—log=/var/log/clamav.log — записывать события в файл лога /var/log/clamav.log;
/media/1C6A-19CC/ — каталог, который необходимо просканировать.

Результат выполнения:

/media/1C6A-19CC/RECYCLER/f5399233.exe: Worm.Dorkbot-3 FOUND
/media/1C6A-19CC/RECYCLER/f5399233.exe: copied to ‘/home/setevoy/Infected//f5399233.exe’

———— SCAN SUMMARY ————
Known viruses: 1931063
Engine version: 0.97.6
Scanned directories: 10
Scanned files: 62
Infected files: 1
Data scanned: 12.46 MB
Data read: 11.09 MB (ratio 1.12:1)
Time: 6.356 sec (0 m 6 s)

На флешке найден один зараженный файл, который был перемещён в «карантин».

Обновление антивируса ClamAV

Создадим файл лога, в который будут записываться попытки обновления:

# touch /var/log/clam-update.log

Самый простой путь — запускать обновления с помощью cron. Для этого — выполняем:

# crontab -e

И добавляем новое задание:

0 0 * * * /usr/local/bin/freshclam —quiet -l /var/log/clam-update.log

Эта строка будет запускать обновление в 0 минут 0 часов каждый день. Для удобства устанвоки другого времени — можно воспользоваться Cron: удобная подсказка.

Другой вариант — запустить обновление в режиме «демона» командой:

# freshclam -d -c 2 -l /var/log/clam-update.log

-d — указывает способ запуска (daemon),
-c — количество обновлений в сутки, в данном случае 2 раза,
-l — файл лога.

Параметры обновления устанавливаются в файле /etc/clamav/freshclam.conf. Например, для изменения количества обновлений в сутки — измените в нём строку:

Checks 24