ClamAV — антивирусная система с открытым кодом. В отличие от других антивирусных ПО, ClamAV также интегрирует с почтовыми серверами и проверяет файлы, прикрепленные к письмам. С официальной документацией можно ознакомиться на сайте разработчика.
Установка ClamAV
- Debian/Ubuntu
Для обновления пакетов и установки выполните команды:
# apt-get update # apt-get install clamav clamav-daemon
- CentOS
Сперва установите репозиторий EPEL, а затем установите ClamAV со всеми его полезными инструментами:
# yum install epel-release # yum install clamav-server clamav-data clamav-update clamav-filesystem clamav clamav-scanner-systemd clamav-devel clamav-lib clamav-server-systemd
Настройка ClamAV
После установки обновите антивирусные базы утилитой freshclam
. Запускается без параметров:
# freshclam
Настроить регулярное обновление с определенной периодичностью поможет crontab
:
59 23 31 12 * root freshclam
— по такому заданию базы будут обновляться в каждый Новый год.
Дополнительные базы подключаются в файле /etc/clamav/freshclam.conf
при помощи параметра DatabaseCustomURL, в котором указывается ссылка на базу:
DatabaseCustomURL http://www.rfxn.com/downloads/rfxn.hdb DatabaseCustomURL http://www.rfxn.com/downloads/rfxn.ndb
Запуск ClamAV
Теперь можно запустить проверку. Для этого рассмотрим утилиту clamscan
.
Если запустить clamscan
без указания ключей, будет проверен только тот каталог, в котором вы находитесь, узнать его можно с помощью утилиты pwd.
Чтобы проверить определенный каталог, укажите утилите путь к нему.
Ключ -i
укажет, что нужно вывести список только инфицированных файлов, иначе clamscan покажет результаты проверки всех файлов, например:
/home/admin/web/site.org/public_html/1ndex.php: {HEX}php.cmdshell.egyspider.240.UNOFFICIAL FOUND /home/admin/web/site.org/public_html/index.php: OK /home/admin/web/site.org/log.txt: Empty file
Ключ -r
укажет проверять рекурсивно указанный каталог и все его подкаталоги. Глубина проверки составляет 15 уровней для директорий и 8 для архивов. Изменить ограничение можно с помощью опций:
--max-recursion
— для архивов;--max-dir-recursion
— для директорий.
По умолчанию ClamAV только выводит результат проверки, не удаляя найденныe зараженные файлы. Если вы уверены в том, что обнаруженные файлы нужно удалить полностью, в процессе проверки используйте для этого ключ --remove
. Для перемещения файлов в другую директорию на карантин укажите ключ --move
с путем до целевой директории.
Пример запуска:
# clamscan -i /home/admin/web/site.org/ -r --max-dir-recursion=2 --move=/home/quarantine
Утилита проверит директорию /home/admin/web/site.org/
и вложенные в нее директории (но не глубже), найденные файлы переместит в директорию /home/quarantine
. Завершив работу, выведет список зараженных файлов.
Ключ --help
покажет документацию и список возможных ключей, а --version
— текущую версию инструмента.
Таким образом, с помощью утилиты, можно проверять свою виртуальную машину на вирусы и устранять найденные угрозы.