Squid + SquidClamav2014/08/12 |
Squid と Clamav を連携させて Webブラウジング時のダウンロードファイルをリアルタイムスキャンできるように設定します。
|
|
[1] |
こちらを参考に Clamav をインストールしておきます。
|
[2] | Clamd をインストールします。 |
[root@prox ~]# /etc/rc.d/init.d/clamd start Starting Clam AntiVirus Daemon: [ OK ] [root@prox ~]# chkconfig clamd on
|
[3] | SELinux を有効にしている場合、Clamd の起動/動作にはブール値の変更が必要です。 |
[root@prox ~]# setsebool -P antivirus_can_scan_system on [root@prox ~]# setsebool -P antivirus_use_jit on
|
[4] | c-icap をインストールします。 |
[root@prox ~]#
[root@prox ~]# yum -y install gcc make [root@prox ~]# curl -L -O http://downloads.sourceforge.net/project/c-icap/c-icap/0.4.x/c_icap-0.4.2.tar.gz
tar zxvf c_icap-0.4.2.tar.gz [root@prox ~]# cd c_icap-0.4.2 [root@prox c_icap-0.4.2]# ./configure [root@prox c_icap-0.4.2]# [root@prox c_icap-0.4.2]# make install [root@prox c_icap-0.4.2]# [root@prox ~]# cp /usr/local/etc/c-icap.conf /etc
[root@prox ~]#
vi /etc/c-icap.conf # 161行目:管理者アドレス変更 ServerAdmin root@srv.world
# 170行目:サーバー名変更 ServerName prox.srv.world
# 568行目:追記 Service squidclamav squidclamav.so
#!/bin/bash # c-icap: Start/Stop c-icap # chkconfig: - 70 30 # description: c-icap is an implementation of an ICAP server. # processname: c-icap # pidfile: /var/run/c-icap/c-icap.pid . /etc/rc.d/init.d/functions . /etc/sysconfig/network CONFIG_FILE=/etc/c-icap.conf PID_DIR=/var/run/c-icap RETVAL=0 start() { echo -n $"Starting c-icap: " daemon /usr/local/bin/c-icap -f $CONFIG_FILE RETVAL=$? echo [ $RETVAL -eq 0 ] && touch /var/lock/subsys/c-icap return $RETVAL } stop() { echo -n $"Stopping c-icap: " killproc c-icap rm -f /var/run/c-icap/c-icap.ctl RETVAL=$? echo [ $RETVAL -eq 0 ] && rm -f $PID_DIR/c-icap.pid /var/lock/subsys/c-icap return $RETVAL } case "$1" in start) start ;; stop) stop ;; status) status c-icap ;; restart) stop start ;; *) echo $"Usage: $0 {start|stop|status|restart}" exit 1 esac exit $? chmod 755 /etc/rc.d/init.d/c-icap |
[5] | SquidClamav をインストールします。 ( 下記サイトで最新のものを確認してダウンロードしてください ) http://sourceforge.net/projects/squidclamav/files/squidclamav/ |
[root@prox ~]# curl -L -O http://downloads.sourceforge.net/project/squidclamav/squidclamav/6.14/squidclamav-6.14.tar.gz [root@prox ~]# tar zxvf squidclamav-6.14.tar.gz [root@prox ~]# cd squidclamav-6.14 [root@prox squidclamav-6.14]# ./configure --with-c-icap [root@prox squidclamav-6.14]# [root@prox squidclamav-6.14]# make install [root@prox squidclamav-6.14]# [root@prox ~]# ln -s /usr/local/etc/squidclamav.conf /etc/squidclamav.conf
[root@prox ~]#
vi /etc/squidclamav.conf # 18行目:変更( リダイレクト先URL(あらかじめ適当なものを作っておく ) redirect http://www.srv.world/error.html
# 27行目:変更( clamdの設定とあわせる ) clamd_local /var/run/clamav/clamd.sock
/etc/rc.d/init.d/c-icap start Starting c-icap: [ OK ] [root@prox ~]# chkconfig --add c-icap [root@prox ~]# chkconfig c-icap on |
[6] | Squid の設定です。 |
[root@prox ~]#
vi /etc/squid/squid.conf # 最終行に追記
icap_enable on
icap_send_client_ip on icap_send_client_username on icap_client_username_header X-Authenticated-User icap_service service_req reqmod_precache bypass=1 icap://127.0.0.1:1344/squidclamav adaptation_access service_req allow all icap_service service_resp respmod_precache bypass=1 icap://127.0.0.1:1344/squidclamav adaptation_access service_resp allow all /etc/rc.d/init.d/squid restart Stopping squid: ................ [ OK ] Starting squid: . [ OK ] |
[7] | 以上で設定完了です。 動作確認として、クライアントPC から Web ブラウザで以下のテストウィルスが置いてあるページにアクセスして、 http://eicar.org/85-0-Download.html 「eicar.com」をクリックし、テストウィルスのダウンロードを試みて、設定したリダイレクト先 URL にリダイレクトされることを確認してください。 |
Sponsored Link |