アンチウィルスとの連携2009/06/20 |
clamav はインストール済みとして、
squid と clamav を連携させてWebブラウジング時のダウンロードファイルをリアルタイムスキャンできるようにします。
追加で clamd と squidclamav というソフトをインストールします。
clamav についてはこちらを参照してインストールしてください。
さらに追加で clamd というソフトも必要になるのでインストールしておきます。
|
|
[1] | clamd インストール&設定 |
[root@lan ~]# yum -y install clamav-server [root@lan ~]# vi /etc/clamd.conf # 以下の内容で新規作成
LogFile /var/log/clamav/clamd.log LogFileMaxSize 0 LogTime yes LogSyslog yes PidFile /var/run/clamav/clamd.pid TemporaryDirectory /var/tmp DatabaseDirectory /var/lib/clamav LocalSocket /var/run/clamav/clamd.sock FixStaleSocket yes TCPSocket 3310 TCPAddr 127.0.0.1 MaxConnectionQueueLength 30 ReadTimeout 300 User clamav AllowSupplementaryGroups yes ScanPE yes ScanELF yes DetectBrokenExecutables yes ScanOLE2 yes ScanArchive yes [root@lan ~]# mkdir /var/run/clamav [root@lan ~]# chown clamav. /var/run/clamav [root@lan ~]# mkdir /var/log/clamav [root@lan ~]# chown clamav. /var/log/clamav [root@lan ~]# vi /etc/rc.d/init.d/clamd # 起動スクリプト作成 # 以下の内容で新規作成
#!/bin/sh # # Startup script for the Clam AntiVirus Daemon # # chkconfig: 2345 61 39 # description: Clam AntiVirus Daemon is a TCP/IP or socket protocol \ # server. # processname: clamd # pidfile: /var/run/clamav/clamd.pid # config: /etc/clamd.conf . /etc/rc.d/init.d/functions . /etc/sysconfig/network [ -x /usr/sbin/clamd ] || exit 0 case "$1" in start) echo -n "Starting Clam AntiVirus Daemon: " daemon clamd RETVAL=$? echo [ $RETVAL -eq 0 ] && touch /var/lock/subsys/clamd ;; stop) echo -n "Stopping Clam AntiVirus Daemon: " killproc clamd rm -f /var/clamav/clamd.socket rm -f /var/run/clamav/clamav.pid RETVAL=$? echo [ $RETVAL -eq 0 ] && rm -f /var/lock/subsys/clamd ;; status) status clamd RETVAL=$? ;; restart|reload) $0 stop $0 start RETVAL=$? ;; condrestart) [ -e /var/lock/subsys/clamd ] && restart RETVAL=$? ;; *) echo "Usage: clamd {start|stop|status|restart|reload|condrestart}" exit 1 esac exit $RETVAL [root@lan ~]# chmod 755 /etc/rc.d/init.d/clamd [root@lan ~]# /etc/rc.d/init.d/clamd start Starting Clam AntiVirus Daemon: [ OK ] [root@lan ~]# chkconfig --add clamd [root@lan ~]# chkconfig clamd on
|
[2] | squidclamav インストール |
[root@lan ~]# yum -y install curl-devel [root@lan ~]# wget http://www.darold.net/projects/squidclamav/squidclamav-4.0.tar.gz [root@lan ~]# tar zxvf squidclamav-4.0.tar.gz [root@lan ~]# cd squidclamav-4.0 [root@lan squidclamav-4.0]# ./configure [root@lan squidclamav-4.0]# [root@lan squidclamav-4.0]# make install [root@lan squidclamav-4.0]# cp squidclamav.conf.dist /etc/squidclamav.conf [root@lan squidclamav-4.0]# [root@lan ~]# vi /etc/squidclamav.conf # 55行目より以降, 59行目を除く全行コメント解除 squid_ip 127.0.0.1 # 変更( Proxyポート ) squid_port 8080 logfile /var/log/squidclamav.log # 変更( リダイレクト先URL。あらかじめ適当なものを作成しておく ) redirect http://www.srv.world/error.html #squidguard /usr/local/squidGuard/bin/squidGuard debug 0 force 1 stat 1 maxredir 10 # 変更( clamdの設定とあわせる ) clamd_local /var/run/clamav/clamd.sock # 変更 clamd_ip 127.0.0.1 clamd_port 3310 timeout 60 useragent Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1) trust_cache 0 abort ^.*\.pdf$ abort ^.*\.js$ abort ^.*\.html$ abort ^.*\.css$ abort ^.*\.xml$ abort ^.*\.xsl$ abort ^.*\.js$ abort ^.*\.html$ abort ^.*\.css$ abort ^.*\.xml$ abort ^.*\.xsl$ abort ^.*\.js$ abort ^.*\.jsp$ abort ^.*\.jsp\?.*$ aborti ^.*servlet.*$ abort ^.*\.ico$ aborti ^.*\.gif$ aborti ^.*\.png$ aborti ^.*\.jpg$ aborti ^.*\.swf$ abortcontenti ^.*application/x-mms-framed.*$ abortcontenti ^.*application/x-javascript.*$ content ^.*application\/.*$ # ホワイトリスト設定 whitelist www.google.com Scan all files content ^.*\/.*$ |
[3] | squid 設定 |
[root@lan ~]# vi /etc/squid/squid.conf # 639行目:コメント解除 http_access deny to_localhost # 最終行に以下3行追記 url_rewrite_access deny localhost redirect_program /usr/local/bin/squidclamav redirect_children 15 [root@lan ~]# touch /var/log/squid/squidclamav.log [root@lan ~]# chown squid. /var/log/squid/squidclamav.log [root@lan ~]# vi /etc/logrotate.d/squid # テキトーに最終行にでも追記
/var/log/squid/squidclamav.log { weekly rotate 5 copytruncate compress notifempty missingok } [root@ns ~]# /etc/rc.d/init.d/squid restart Stopping squid: ............. [ OK ] Starting squid: . [ OK ]
|
[4] | 試しに以下のテストウィルスが置いてあるページにアクセスして、 http://www.eicar.org/anti_virus_test_file.htm テキトーに「eicar.com」でもクリックして、テストウィルスのダウンロードを試みてみます。 すると、以下のように[2]で設定したリダイレクトページにリダイレクトされます。 |
Sponsored Link |