Differences

This shows you the differences between two versions of the page.

Link to this comparison view

instalacao_e_configuracao_squidclamav_no_centos_6.3_pt_br [2019/08/08 15:23] (current)
Line 1: Line 1:
 +====== Instalação e Configuração do SquidClamav no CentOS 6.3  ======
  
 +
 +E ai galera, aqui eu vou abordar a instalação e a configuração do SquidClamav que é um plugin que habilita o squid a utilizar o clamav para verificar vírus nas páginas que estamos navegando.
 +
 +Prepare o seu sistema com o seguinte script http://wiki.douglasqsantos.com.br/doku.php/confinicialcentos6_en para que não falte nenhum pacote ou configuração.
 +
 +Agora vamos atualizar os repositórios e vamos fazer um upgrade do sistema
 +<sxh bash>
 +yum check-update && yum update -y
 +</sxh>
 +
 +Agora vamos armazenar o anti-vírus
 +<sxh bash>
 + yum install clamd -y
 +</sxh>
 +
 +Agora vamos colocar ele na inicialização
 +<sxh bash>
 +chkconfig --add clamd
 +chkconfig clamd on
 +</sxh>
 +
 +Agora vamos inicializar ele
 +<sxh bash>
 +/etc/rc.d/init.d/clamd start 
 +</sxh>
 +
 +Vamos acessar o diretório que vai armazenar os fontes
 +<sxh bash>
 +cd /usr/src
 +</sxh>
 +
 +Agora vamos obter o c-icap que é um carinha que vai auxiliar o squidclamav
 +<sxh bash>
 +wget -c http://www.douglasqsantos.com.br/Downloads/security/c_icap-0.2.4.tar.gz
 +</sxh>
 +
 +Agora vamos obter o squidclamav
 +<sxh bash>
 +wget -c http://www.douglasqsantos.com.br/Downloads/security/squidclamav-6.10.tar.gz
 +</sxh>
 +
 +Agora vamos descompactar o c_icap
 +<sxh bash>
 +tar -xzvf c_icap-0.2.4.tar.gz
 +</sxh>
 +
 +Agora vamos acessar o diretório
 +<sxh bash>
 +cd c_icap-0.2.4
 +</sxh>
 +
 +Agora vamos configurar ele
 +<sxh bash>
 +./configure 
 +</sxh>
 +
 +Agora vamos compilar e instalar ele
 +<sxh bash>
 +make && make install clean
 +</sxh>
 +
 +Agora vamos copiar a configuração dele para o /etc
 +<sxh bash>
 +cp /usr/local/etc/c-icap.conf /etc
 +</sxh>
 +
 +Agora Agora vamos fazer alguns ajustes nele
 +<sxh bash>
 +sed -i 's/ServerAdmin you@your.address/ServerAdmin douglas@douglasqsantos.com.br/g'  /etc/c-icap.conf
 +sed -i 's/ServerName YourServerName/ServerName proxy.douglasqsantos.com.br/g'  /etc/c-icap.conf
 +sed -i '497s/^/Service squidclamav squidclamav.so/' /etc/c-icap.conf
 +</sxh>
 +
 +Agora vamos criar o script de inicialização do c-icap
 +<sxh bash>
 +vim /etc/rc.d/init.d/c-icap
 +#!/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 $?
 +</sxh>
 +
 +Agora vamos dar a permissão de execução para ele
 +<sxh bash>
 +chmod 755 /etc/rc.d/init.d/c-icap
 +</sxh>
 +
 +Agora vamos colocar ele na inicialização do sistema
 +<sxh bash>
 +chkconfig --add c-icap
 +chkconfig c-icap on 
 +</sxh>
 +
 +Agora vamos preparar o squidClamav
 +<sxh bash>
 +cd /usr/src
 +tar -xzvf squidclamav-6.10.tar.gz
 +</sxh>
 +
 +Agora vamos acessar o diretório dele
 +<sxh bash>
 +cd squidclamav-6.10
 +</sxh>
 +
 +Agora vamos mandar configurar ele
 +<sxh bash>
 +./configure
 +</sxh>
 +
 +Agora vamos mandar compilar e instalar ele
 +<sxh bash>
 +make && make install clean
 +</sxh>
 +
 +Agora precisamos ajustar a sua configuração
 +<sxh bash>
 +sed -i 's,redirect .*,redirect http://www.douglasqsantos.com.br/error.html,g' /etc/squidclamav.conf 
 +sed -i 's,clamd_local .*,clamd_local /var/run/clamav/clamd.sock,g' /etc/squidclamav.conf
 +echo 'trustclient ^192\.168\.1\.21$' >> /etc/squidclamav.conf
 +echo 'trustuser douglas.santos' >> /etc/squidclamav.conf
 +</sxh>
 +
 +Aqui nas configurações acima o **redirect** é para enviar o cliente para uma página de erro quando ele tentar acessar um vírus, a opção **clamd_local** é o caminho do socket do clamav, a opção **trustclient** é o ip do cliente que não vamos fazer checagem e o **trustuser** é o cliente que não vamos fazer checagem.
 +
 +Agora precisamos inicializar o c-icap
 +<sxh bash>
 +/etc/rc.d/init.d/c-icap start 
 +</sxh>
 +
 +Agora vamos inserir as seguintes linhas no final do arquivo de configuração do squid
 +<sxh apache>
 +vim /etc/squid/squid.conf
 +[...]
 +#Final do arquivo
 +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
 +</sxh>
 +
 +Agora precisamos reiniciar o squid
 +<sxh bash>
 +/etc/rc.d/init.d/squid restart 
 +</sxh>
 +
 +Agora podemos testar acessando http://www.eicar.org/download/eicar.com.txt devemos ser direcionados para a página de erro.
 +
 +Agora se acessar com o usuário douglas.santos ou da máquina 192.168.1.21 não vamos ser bloqueados.
 +
 +====== Referências ======
 +  - http://sourceforge.net/projects/c-icap/
 +  - http://squidclamav.darold.net/
 +  - http://squidclamav.darold.net/install.html
 +  - http://squidclamav.darold.net/config.html