Categories

A sample text widget

Etiam pulvinar consectetur dolor sed malesuada. Ut convallis euismod dolor nec pretium. Nunc ut tristique massa.

Nam sodales mi vitae dolor ullamcorper et vulputate enim accumsan. Morbi orci magna, tincidunt vitae molestie nec, molestie at mi. Nulla nulla lorem, suscipit in posuere in, interdum non magna.

使用 Clamav + HAVP 實現 HTTP 防毒

安裝 HAVP

一、 說明
HAVP 是 HTTP Anti Virus Proxy 的縮寫,此套軟體follow GPL精神可以免費安裝使用。
此軟體可以與數種防毒軟體結合,針對HTTP資料傳輸進行即使掃瞄,將病毒攔截在Server上。
HAVP官網URL:http://www.server-side.de/


二、 環境
OS的部份採用 FreeBSD 6,防毒軟體則採用免費的Clamav,再搭配Squid Proxy,將 Squid傳回的網頁掃瞄後再決定是否放行。
特別留意Clamav是套免費的防毒軟體,只能針對有無病毒進行掃瞄,一旦發現病毒時,並無解毒功能。

三、 安裝方式
在freeBSD上可以直接採用port方式安裝,安裝步驟如下:
1. # sudo su 為 root
2. # cd /usr/ports/www/havp
3. # make config 進行config,config 的過程中必須在Enable SSL Proxying及Enable libclamav Support兩個選項中打V,才可以將SSL也forward,及支援使用Clamav掃瞄。

4. # make ; make install
5. 編輯 /usr/local/etc/havp/havp.conf 檔案, 修改以下內容:

### 註解以下這行,才會讓設定生效
#REMOVETHISLINE deleteme

### ClamAV Library Scanner (libclamav) → 由 HAVP 直接取用ClamAV 的病毒資料庫
ENABLECLAMLIB true

### ClamAV Socket Scanner (clamd) → 交由 clamd 掃毒 (須先啟動 clamd), 以上兩者擇一使用即可
ENABLECLAMD true
CLAMDSOCKET /tmp/clamd

### 因為使用 Squid Proxy, 所以在此不做通透
TRANSPARENT false

### 顯示自定義的樣版,一旦發生錯誤時會顯示該網頁
TEMPLATEPATH /usr/local/etc/havp/templates/en

### 理論上越多的執行緒效能效能越好,但仍需視伺服器資源而定
SERVERNUMBER 40
MAXSERVERS 400

### LOG_OKS 設成 false,只記錄發現病毒的log,否則log檔會太大
LOG_OKS false

### 只記錄 error log。較少的 Log 記錄可減輕伺服器負擔
LOGLEVEL 0

### 使用 RAM Disk 處理暫存檔案可獲得最佳效能(參考效能調整)
TEMPDIR /ramdisk

### 不對圖片檔掃毒, 可減輕 CPU 負擔
SCANIMAGES false

6. 編輯 /etc/rc.conf 檔案, 新增一行:
havp_enable=”YES”
這樣 havp 就會在系統開機時自動啟動。
7. 都設定好後可以先手動啟動havp:
# /usr/local/etc/rc.d/havp
啟動時會看到如下訊息,代表啟動成功:
Starting havp.
Starting HAVP Version: 0.89
Mandatory locking disabled! KEEPBACK settings not used!

8. Squid 的部份則必須在設定檔 /usr/local/etc/squid/squid.conf 增加如下設定:
acl all src 0.0.0.0/0.0.0.0
cache_peer 127.0.0.1 parent 8080 0 no-query no-digest no-netdb-exchange default
cache_peer_access 127.0.0.1 allow all
# Only http traffic can be scanned
acl Scan_HTTP proto HTTP
never_direct allow Scan_HTTP
9. 設定好後重新載入squid 設定檔:
# /usr/sbin/squid –k reconfigure

四、 效能調整
修改 /etc/fstab 檔案,使用256MB 的ramdisk增加掃瞄效率。
md /ramdisk mfs rw,noatime,-s256M 0 0

原2009/01/04發表於UnixCafe

Leave a Reply

You can use these HTML tags

<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>