clamav 0.98.3¶
警告
このコンテンツは古くなりました。手順通り実施してもインストールできない可能性があります。
Contents
コンパイル¶
注釈
基本的には管理者ユーザ(rootなど)で実施していることを前提としています
#------------------------------------------------------------
# clamav-0.98.3
#------------------------------------------------------------
BASE=/opt/brew
export PATH=${BASE}/bin:${PATH}
export PYTHONPATH=${BASE}/seo
export LD_LIBRARY_PATH=${BASE}/lib
export CPPFLAGS="-I${BASE}/include"
export LD_RUN_PATH=${BASE}/lib
export LDFLAGS="-L${BASE}/lib -R${LD_RUN_PATH}"
# ソースダウンロード先
comp_dir=/usr/local/src
# パッケージ名
pack_name=clamav
# バージョン
version=-0.98.3
# ソースのファイル形式
ext=.tar.gz
# tar解凍時のオプション
ext_opt=z
# インストール先ディレクトリ
ins_dir=/opt/${pack_name}/${version##-}
# ダウンロード元パッケージ
dl_uri="http://downloads.sourceforge.net/project/clamav/clamav/0.98.3/clamav-0.98.3.tar.gz?r=http%3A%2F%2Fwww.clamav.net%2Flang%2Fen%2Fdownload%2Fsources%2F&ts=1402022159&use_mirror=jaist"
cd ${comp_dir}
rm -rf ${pack_name}${version}
test -f ${pack_name}${version}${ext} \
|| wget ${dl_uri} -O ${pack_name}${version}${ext}
tar ${ext_opt}xf ${pack_name}${version}${ext}
cd ${pack_name}${version}
./configure \
--prefix=${ins_dir} \
--with-openssl=${BASE} \
--with-xml=${BASE} \
--with-zlib=${BASE} \
&& make \
&& make install
# ウィルス定義ファイルの保存先ディレクトリの作成
mkdir -p ${ins_dir}/share/clamav
Pathの設定¶
for type in sbin bin lib lib64 include
do
for src in $(find ${ins_dir}/${type} -xtype f)
do
parent=`dirname ${src#*/${type}/}`
filename=`basename ${src}`
mkdir -p /opt/brew/$type/$parent
echo "ln -fs ${src} ${BASE}/${type}/${parent}/${filename}"
ln -fs ${src} ${BASE}/${type}/${parent}/${filename}
done
done
grep -q ${BASE}/bin ~/.bashrc \
|| echo "export PATH=${BASE}/bin:${BASE}/sbin:"'${PATH}' >> ~/.bashrc \
; source ~/.bashrc
主なconfigureオプション¶
--prefix=[DIR]
- インストール先ディレクトリの指定
--with-openssl=[DIR]
- opensslのインストール先ディレクトリの指定
--with-xml=[DIR]
- libxml2のインストール先ディレクトリの指定
--with-zlib=[DIR]
- zlibのインストール先ディレクトリの指定
設定ファイル¶
ウィルス更新系¶
設定ファイルの作成¶
# {PREFIX}/etc 配下にサンプルファイルがあります
# そのサンプルファイルをコピーして作成します
cd ${ins_dir}/etc
cp clamd.conf.sample clamd.conf
最低限の設定¶
設定ファイルにはサンプルの場合、サンプルと区別するための文言がありますので消去します。 その他ローカル接続の際、ソケットファイルを用いて動作させるように設定します。
# diff clamd.conf clamd.conf.sample
8c8
< # Example
---
> Example
85c85
< LocalSocket /tmp/clamd.sock
---
> #LocalSocket /tmp/clamd.socket
簡単な動作確認¶
# ウィルス定義更新
freshclam
# ウィするスキャン
clamscan --infected --remove --recursive
# ダミーウィルスのダウンロード
wget http://www.eicar.org/download/eicar.com
wget http://www.eicar.org/download/eicar.com.txt
wget http://www.eicar.org/download/eicar_com.zip
wget http://www.eicar.org/download/eicarcom2.zip
# もう一度スキャン
/opt/brew/bin/clamscan --infected --remove --recursive