close

最近公司的電腦老是在中毒,發現了這個好東西。

Havp (HTTP Anti Virus Proxy) 

正如其名,透過Proxy對User下載的東西作即時的病毒掃瞄,發現病毒就直接阻擋。

Havp可以搭配多種防毒引擎,這邊我使用了ClamAV搭配Trend (因為ClamAV的防毒能力實在有點糟糕,只好加上Trend作輔助。)

系統使用CentOS 4.4 

1.首先下載ClamAV相關套件
    yum install  clamav clamav-devel 安裝好ClamAV

2.到 趨勢科技 下載 for Linux專用的防毒引擎
   http://www.trendmicro.com/download/zh-tw/engine.asp
   tar zxvf vsapi-x86-linux-xxxx.tar.Z 
   解開後將 libvsapi.so 複製到 /usr/lib
  mkdir /etc/iscan
  ln -sf /usr/lib/libvsapi.so /etc/iscan/   建立連結
  
  在/etc/cron.daily底下建立一個trophie_update.sh用來每日更新病毒碼
  檔案內容為
   







#!/bin/bash
cd /usr/local/trophie/pattern
rm -f pattern.asp lpt*.zip
wget -q http://www.trendmicro.com/download/zh-tw/pattern.asp
if [ -f pattern.asp ]
then
{
 PATTERN=$(fgrep lpt pattern.asp | grep "ftp" | awk -F"<" '{print $2}' | awk -F"\"" '{print $2}')
 if [ "$PATTERN" != "" ]
 then
 {
  echo $PATTERN
  RELEASE=`basename $PATTERN | cut -b 4-|cut -f1 -d"."`;
  PRESENT=`ls -asl /etc/iscan/*.$RELEASE 2> /dev/null | wc -l`;
  if [ $PRESENT != 1 ]
  then
  {
   wget $PATTERN && FILENAME=`basename $PATTERN` && unzip -o $FILENAME  \
   -d /etc/iscan && kill -SIGHUP `cat /var/run/trophie.pid`
  }
  fi
 }
 fi
}
fi

   建立暫存目錄mkdir -p /usr/local/trophie/pattern
   執行/etc/cron.daily/trophie_update.sh 下載病毒碼 
   
3.到 http://www.vanja.com/tools/trophie/ 下載Trophie 病毒掃瞄程式
   Trophie使用TrendMicro的引擎,目前最新版本為1.12
    tar jxvf trophie-1.12.tar.bz2 解開原始碼
    cd trophie-1.12
    執行./configure;make clean all
    中途如果沒有編譯失敗,就會產生一個trophie的執行檔。

    執行./trophie

    Initializing    : VSAPI version 8.000-1001
    Initializing    : Pattern version 927 (pattern number 142913)
    Socket path     : /var/run/trophie
    Timeout         : 300 seconds
    Running as user : mail
    Socket group    : mail
    Max processes   : 20
    PID file        : /var/run/trophie.pid
   Trophie version : 1.12
    
   看到以上訊息就表示Trophie正常運作嘍
   
   將trophie copy到/usr/sbin底下  cp ./trophie /usr/sbin

   在/etc/rc.local中加上
    /usr/sbin/trophie -D
   讓trophie開機時自動啟動

4.安裝Havp
   首先到Havp的官方網站,下載最新版的原始碼。
    http://www.server-side.de/download.htm
    tar zxvf havp-0.83.tar.gz 解開原始碼
  cd havp-0.83
    ./configure;make clean all install
    編譯完成後
  在/usr/local/sbin 會多出一個havp的執行檔

  編輯/usr/local/etc/havp/havp.config
    修改以下幾個地方
    TEMPDIR /var/tmp/havp
   
TRANSPARENT true
    設定掃瞄最大檔案大小為3MB
    MAXSCANSIZE 3145728
  啟用 ClamAV 掃瞄病毒
  ENABLECLAMD true
  CLAMDSOCKET /var/run/clamav/clamd.sock
  啟用 Trophie 掃瞄病毒
    ENABLETROPHIE true
    如果你有上層的Proxy 請加入Proxy設定
    PARENTPROXY localhost
    PARENTPORT 3128

    建立Havp的使用者帳號以及群組
    useradd -s /bin/false havp
    建立暫存目錄
    mkdir -p /var/tmp/havp

    因為Havp需要獨立分割區運作,我們採用檔案掛載的方式來解決。
  dd if=/dev/zero of=/home/havp/havp_tmp.img bs=128K count=1 seek=1024
    這邊我們建立一個128MB的空間
    接著將他格式化為ext3
    mkfs -t ext3 /home/havp/havp_tmp.img
    
    在/etc/fstab裡加入
  /home/havp/havp_tmp.img /var/tmp/havp    ext3    defaults,loop,mand 0,0

    接著掛載檔案
    mount /var/tmp/havp
  變更目錄擁有者以及權限
    chown havp.havp /var/tmp/havp
    chmod 700 /var/tmp/havp
    
    再來就是啟動havp嘍
  /etc/init.d/havp start
    將/etc/init.d/havp start 加入到/etc/rc.local中讓他開機自動啟動
  
5.將使用者對外的http連線統統導向Havp
   iptables -t nat -A PREROUTING -p tcp -s 192.168.0.0/24
--dport 80 -j REDIRECT --to-ports 8080

   這邊是假設您的內部網路是192.168.0.*,請依照您實際的網路架構作修改。

6.測試
    連結到eicar,下載他的病毒測試檔,他的病毒測試檔,只是用來測試您的防毒軟體定義是否正確,並不會危害到您的電腦。
  http://www.eicar.org/anti_virus_test_file.htm
  如果您看到了以下的網頁,那就恭喜您,Havp已經正常運作嘍。
 
 

 

arrow
arrow
    全站熱搜
    創作者介紹
    創作者 rickysu 的頭像
    rickysu

    Ricky的學習手札

    rickysu 發表在 痞客邦 留言(1) 人氣()