Squid + SquidClamav2015/06/01 |
Squid と Clamav を連携させて Webブラウジング時のダウンロードファイルをリアルタイムスキャンできるように設定します。
|
|
[1] | |
[2] | Clamav Server をインストールします。 |
[root@prox ~]#
[root@prox ~]# dnf -y install clamav-server clamav-server-systemd cp /usr/share/doc/clamav-server*/clamd.conf /etc/clamd.d/squid.conf
[root@prox ~]#
vi /etc/clamd.d/squid.conf # 8行目:コメントにする # Example
# 14行目:コメント解除し変更 LogFile /var/log/clamd.squid
# 66行目:コメント解除し変更 PidFile /var/run/clamd.squid/clamd.pid
# 70行目:コメント解除 TemporaryDirectory /var/tmp # 85行目:コメント解除し変更 LocalSocket /var/run/clamd.squid/clamd.sock
# 101行目:コメント解除 TCPSocket 3310 # 195行目:変更 User squidclamav
useradd -d /var/tmp -M -s /sbin/nologin squidclamav [root@prox ~]# mkdir /var/run/clamd.squid [root@prox ~]# chown squidclamav. /var/run/clamd.squid [root@prox ~]# cp /usr/share/doc/clamav-server*/clamd.sysconfig /etc/sysconfig/clamd.squid
[root@prox ~]#
vi /etc/sysconfig/clamd.squid # 1, 2行目:コメント解除し変更 CLAMD_CONFIGFILE=/etc/clamd.d/ squid.conf CLAMD_SOCKET=/var/run/ clamd.squid /clamd.sock
[root@prox ~]#
vi /etc/tmpfiles.d/clamd.squid.conf # 新規作成 d /var/run/clamd.squid 0755 squidclamav squidclamav -
[root@prox ~]#
vi /usr/lib/systemd/system/clamd@.service # 最終行に追記 [Install] WantedBy=multi-user.target touch /var/log/clamd.squid [root@prox ~]# chown squidclamav. /var/log/clamd.squid [root@prox ~]# chmod 600 /var/log/clamd.squid [root@prox ~]# systemctl start clamd@squid [root@prox ~]# systemctl enable clamd@squid |
[3] | c-icap をインストールします。 |
[root@prox ~]#
[root@prox ~]# dnf -y install gcc make [root@prox ~]# curl -L -O http://downloads.sourceforge.net/project/c-icap/c-icap/0.3.x/c_icap-0.3.5.tar.gz
tar zxvf c_icap-0.3.5.tar.gz [root@prox ~]# cd c_icap-0.3.5 [root@prox c_icap-0.3.5]# ./configure [root@prox c_icap-0.3.5]# [root@prox c_icap-0.3.5]# make install [root@prox c_icap-0.3.5]# [root@prox ~]# cp /usr/local/etc/c-icap.conf /etc
[root@prox ~]#
vi /etc/c-icap.conf # 140行目:管理者アドレス変更 ServerAdmin root@srv.world
# 149行目:サーバー名変更 ServerName prox.srv.world
# 517行目:追記 Service squidclamav squidclamav.so
[root@prox ~]#
vi /etc/tmpfiles.d/c-icap.conf # 新規作成 d /var/run/c-icap 0755 root root -
[root@prox ~]#
vi /usr/lib/systemd/system/c-icap.service # 新規作成 [Unit] Description=c-icap service After=network.target [Service] Type=forking PIDFile=/var/run/c-icap/c-icap.pid ExecStart=/usr/local/bin/c-icap -f /etc/c-icap.conf KillMode=process [Install] WantedBy=multi-user.target |
[4] | SquidClamav をインストールします。 ( 下記サイトで最新のものを確認してダウンロードしてください ) http://sourceforge.net/projects/squidclamav/files/squidclamav/ |
[root@prox ~]# curl -L -O http://downloads.sourceforge.net/project/squidclamav/squidclamav/6.13/squidclamav-6.13.tar.gz [root@prox ~]# tar zxvf squidclamav-6.13.tar.gz [root@prox ~]# cd squidclamav-6.13 [root@prox squidclamav-6.13]# ./configure --with-c-icap [root@prox squidclamav-6.13]# [root@prox squidclamav-6.13]# make install [root@prox squidclamav-6.13]# [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/clamd.squid/clamd.sock
|
[5] | 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 systemctl start c-icap [root@prox ~]# systemctl enable c-icap [root@prox ~]# systemctl restart squid |
[6] | 以上で設定完了です。 動作確認として、クライアントPC から Web ブラウザで以下のテストウィルスが置いてあるページにアクセスして、 http://eicar.org/85-0-Download.html 「eicar.com」をクリックし、テストウィルスのダウンロードを試みて、設定したリダイレクト先 URL にリダイレクトされることを確認してください。 |
Sponsored Link |