Установка ПО · 2 min read · Oct 22, 2025

Установка ClamAV 0.93.3 из исходников (+ интеграция с Sendmail) на CentOS 5.2

Установка ClamAV 0.93.3 из исходников (+ интеграция с Sendmail) на CentOS 5.2

Автор: Ioan Ungureanu
[email protected]

Примечание: Этот гид относится к установке и настройке Clamav 0.93.3 (из исходников) на сервере Linux с установленной CentOS 5.2 и sendmail.
Мы предполагаем, что вы установили sendmail и sendmail-devel из RPM-пакетов вашего дистрибутива.

Если нет, просто выполните команду:

yum install sendmail sendmail-devel

Пакет sendmail-devel здесь не является необязательным, потому что нам нужна libmilter. Если мы не установим sendmail-devel, мы столкнемся с сообщением об ошибке libmilter not found, поэтому мы избегаем такой ошибки с самого начала.

Установка ClamAV-0.93.3 из исходников

Сначала нам нужно создать пользователя и группу:

groupadd clamav
useradd -g clamav clamav

Мы изменим пароль для пользователя clamav; по соображениям безопасности это не обязательно, но рекомендуется, выберите сложный пароль, который вам не нужно будет запоминать после установки; в качестве правила безопасности предположим, что в вашем /etc/passwd пользователь clamav имеет /sbin/nologin в качестве оболочки, как показано ниже, где uid и gid — это идентификатор пользователя и идентификатор группы, назначенные пользователю clamav.

cat /etc/passwd |grep 'clamav'
clamav:x:uid:gid::/home/clamav:/sbin/nologin
passwd clamav

Далее мы создаем рабочие директории для демона и место для хранения логов:

mkdir /var/clamav  
chown clamav:root /var/clamav  
mkdir /var/log/clamav/  
chown clamav:root /var/log/clamav/  
mkdir /usr/local/share/clamav  
chown clamav:clamav /usr/local/share/clamav

Теперь загрузите исходники ClamAV 0.93.3 с зеркала (мы использовали heatnet в качестве зеркала, если оно медленное или не отвечает, вы можете выбрать другое зеркало из):

wget http://dl.sourceforge.net/sourceforge/clamav/clamav-0.93.3.tar.gz

или используйте зеркало, например http://sourceforge.net/project/downloading.php?group_id=86638&use_mirror=osdn&filename=clamav-0.93.3.tar.gz&88361377&abmode=1.

tar xzvf clamav-0.93.3.tar.gz
cd clamav-0.93.3  
./configure –disable-clamuko –enable-milter –with-dbdir=/usr/local/share/clamav

В основном, на дистрибутивах на базе Red Hat, при попытке скомпилировать clamav мы видим ошибку из-за несовместимости с zlib. У вас есть возможность установить как zlib, так и zlib-devel с помощью

yum install zlib zlib-devel

Если возникают ошибки, такие как configure: error: The installed zlib version may contain a security bug. Please upgrade to 1.2.2 or later: http://www.zlib.net. Вы можете пропустить эту проверку с помощью –disable-zlib-vcheck, но НЕ ДОКЛАДЫВАЙТЕ о любых проблемах со стабильностью тогда!
мы пишем команду:

yum update zlib zlib-devel

Вероятность возникновения ошибки все еще существует, поэтому безопасно выполнить:

./configure –disable-clamuko –enable-milter –with-dbdir=/usr/local/share/clamav –disable-zlib-vcheck

После выполнения, в обоих случаях:

make
make install

Нам нужен файл с именем clamav.conf. Мы редактируем его в /etc:

vi /etc/clamav.conf

Напишите следующие строки:

#/etc/clamav.conf
LogTime
LogSyslog
LogFile /var/log/clam/clamd.log
PidFile /var/run/clam/clamd.pid
LocalSocket /var/run/clam/clamd.sock
FixStaleSocket
MaxThreads 50
ThreadTimeout 600
MaxDirectoryRecursion 15
FollowFileSymlinks
SelfCheck 600
User clamav
ScanMail
ScanArchive
ArchiveMaxFileSize 10M #максимальный размер файла в мегабайтах для архивируемых сканируемых файлов. Вы можете изменить это в соответствии с вашими потребностями
ArchiveMaxRecursion 5
ArchiveMaxFiles 1000

Сохраните и закройте файл.

Теперь скажите вашему скрипту запуска загрузить демон ClamAV:

echo “/usr/local/sbin/clamd” >> /etc/rc.d/rc.local  
echo “/usr/local/sbin/clamav-milter -l -o -q /var/milter/clmilter.sock” >> /etc/rc.d/rc.local

cp /etc/clamav.conf /usr/local/etc/
touch /var/log/clam-update.log
chown clamav:clamav /var/log/clam-update.log
touch /tmp/clamd.log
chown clamav:root /tmp/clamd.log
mkdir /var/milter
chown clamav:root /var/milter/
cd /usr/local/etc/

Мы изменяем некоторые конфигурационные файлы [вы можете скачать/использовать те, которые использовал я] в директории /etc:

cd /etc

wget ftp://ftp.ro-design.net/pub/clamd.conf
wget ftp://ftp.ro-design.net/pub/freshclam.conf
mkdir /var/lib/clamav
chown clamav:root /var/lib/clamav/
/usr/local/bin/freshclam -l /var/log/clam-update.log
cp /usr/local/sbin/clamd /etc/init.d/
/etc/init.d/clamd restart

В файле /etc/mail/sendmail.mc добавьте строки:

INPUT_MAIL_FILTER(`clmilter’,`S=local:/var/milter/clmilter.sock, F=, T=S:4m;R:4m’)
dnl define(`confINPUT_MAIL_FILTERS’, `clmilter’)
m4 /etc/mail/sendmail.mc > /etc/mail/sendmail.cf
/etc/init.d/sendmail restart  
crontab -e

Добавьте строки ниже:

# мы будем обновлять базу данных, используемую антивирусом Clamav, ежедневно, дважды
0 2,13 * * * /usr/local/bin/freshclam –quiet -l /var/log/clam-update.log

Наконец:

/etc/rc.d/rc.local

По любым вопросам или проблемам вы можете связаться со мной по адресу: [email protected]

Share: X/Twitter LinkedIn

Get new posts in your inbox

No spam. Unsubscribe anytime.