安装ClamAV 0.93.3从源(+ Sendmail集成)在CentOS 5.2

安装ClamAV 0.93.3从源(+ Sendmail集成)在CentOS 5.2 这个操作方法指的是Clamav 0的安装和配置...

从CentOS 5.2安装ClamAV 0.93.3(+ Sendmail集成)

作者:Ioan Ungureanu
server@ro-design.net

注意:此操作是指在运行CentOS 5.2和sendmail的Linux服务器上安装和配置Clamav 0.93.3(来源)。
我们假设您从发行版的rpm包中安装了sendmail和sendmail-devel

如果不只是运行命令:

yum install sendmail sendmail-devel

因为我们需要libmilter,所以sendmail-devel包不是可选的。 如果我们不安装sendmail-devel,我们必须处理错误消息libmilter不foud,所以我们避免启动这样一个停止错误。

从源安装ClamAV-0.93.3

我们首先需要创建用户和组:

groupadd clamav
useradd -g clamav clamav

我们将更改用户clamav的密码; 出于安全考虑,这不是真的必要的,但建议选择一个复杂的密码,安装后就不需要记住了; 作为一个安全规则,假设在/ etc / passwd用户clamav中/ sbin / nologin作为shell环境,如下所示,其中uid和gid是为clamav用户分配的用户标识和组ID。

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:安装的zlib版本可能包含一个安全漏洞。 请升级到1.2.2或更高版本: 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 #file max size in Megabytes for archived scaned files.You can modify this to suit your purposes
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

添加以下行:

# we will update the database used by Clamav antivirus daily, twice
0 2,13 * * * /usr/local/bin/freshclam –quiet -l /var/log/clam-update.log

最后:

/etc/rc.d/rc.local

对于任何问题或麻烦,您可以联系我: server@ro-design.net