Differences

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

Link to this comparison view

instalacao_e_configuracao_do_lightsquid_no_centos_6.3_pt_br [2017/09/05 12:18] (current)
Line 1: Line 1:
 +====== Instalação e Configuração do lightsquid no CentOS 6.3  ======
  
 +
 +E ai galera, aqui eu vou abordar a Instalação e configuração do lightsquid, um gerador de relatórios para o squid escrito em perl.
 +
 +
 +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.
 +
 +Podemos ver um demo do lightsquid em http://​lightsquid.sourceforge.net/​demo18/​index.cgi?​year=2009&​month=08
 +
 +Agora vamos fazer um update dos repositórios e um upgrade do sistema
 +<sxh bash>
 +yum check-update && yum update -y
 +</​sxh>​
 +
 +Agora vamos instalar as dependências dele
 +<sxh bash>
 +yum install perl-GD perl-CGI httpd
 +</​sxh>​
 +
 +Agora vamos obter o lightsquid
 +<sxh bash>
 +cd /​var/​www/​html/​
 +wget -c http://​wiki.douglasqsantos.com.br/​Downloads/​monitoring/​lightsquid-1.8.tgz
 +</​sxh>​
 +
 +Agora vamos desempacotar ele
 +<sxh bash>
 +tar -xzvf lightsquid-1.8.tgz
 +</​sxh>​
 +
 +Agora vamos remover o tgz
 +<sxh bash>
 +rm -rf lightsquid-1.8.tgz
 +</​sxh>​
 +
 +Agora vamos renomear o nosso diretório do lightsquid
 +<sxh bash>
 +mv lightsquid-1.8 lightsquid
 +</​sxh>​
 +
 +Agora vamos acertar as permissões dos arquivos
 +<sxh bash>
 +cd lightsquid
 +chmod +x *.cgi
 +chmod +x *.pl
 +</​sxh>​
 +
 +Agora vamos mudar o dono do diretório
 +<sxh bash>
 +chown -R apache:​apache /​var/​www/​html/​lightsquid
 +</​sxh>​
 +
 +Agora vamos ajustar o arquivo do apache
 +<sxh apache>
 +vim /​etc/​httpd/​conf/​httpd.conf
 +[...]
 +#Insira as linhas abaixo após a linha 362 do arquivo
 +<​Directory "/​var/​www/​html/​lightsquid">​
 +   ​DirectoryIndex index.cgi
 +   ​Options +ExecCGI -Indexes -MultiViews +SymLinksIfOwnerMatch
 +   ​AddHandler cgi-script .cgi
 +   ​AllowOverride All
 +</​Directory>​
 +[...]
 +</​sxh>​
 +
 +Agora vamos ajustar o idioma do lightsquid
 +<sxh bash>
 +vim /​var/​www/​html/​lightsquid/​lightsquid.cfg
 +[...]
 +$lang                ="​pt_br";​
 +</​sxh>​
 +
 +Agora vamos testar o lightsquid
 +<sxh bash>
 +perl  /​var/​www/​html/​lightsquid/​check-setup.pl
 +LightSquid Config Checker, (c) 2005-9 Sergey Erokhin GNU GPL
 +
 +LogPath ​  : /​var/​log/​squid
 +reportpath: /​var/​www/​html/​lightsquid/​report
 +Lang      : /​var/​www/​html/​lightsquid/​lang/​pt_br
 +Template ​ : /​var/​www/​html/​lightsquid/​tpl/​base
 +Ip2Name ​  : /​var/​www/​html/​lightsquid/​ip2name/​ip2name.simple
 +
 +
 +all check passed, now try access to cgi part in browse
 +</​sxh>​
 +
 +Agora vamos inserir o apache na inicialização do sistema
 +<sxh bash>
 +chkconfig --add httpd
 +chkconfig httpd on
 +</​sxh>​
 +
 +Agora vamos iniciar o apache
 +<sxh bash>
 +/​etc/​init.d/​httpd start
 +</​sxh>​
 +
 +Agora vamos gerar os nossos relatórios
 +<sxh bash>
 +/​var/​www/​html/​lightsquid/​lightparser.pl
 +</​sxh>​
 +
 +Agora já podemos acessar o nosso relatório em http://​ip_servidor/​lightsquid/​
 +
 +Umas das opções interessantes que eu acho desse cara é que podemos configurar grupos para os usuários, com isso podemos mandar consultar quais grupos acessaram o que e quais usuários pertences a eles.
 +
 +Vamos acessar o diretório do lightsquid
 +<sxh bash>
 +cd /​var/​www/​html/​lightsquid
 +</​sxh>​
 +
 +Agora vamos fazer uma copia do group.cfg
 +<sxh bash>
 +cp group.cfg.src group.cfg
 +</​sxh>​
 +
 +Agora vamos editar o nosso arquivo
 +<sxh bash>
 +vim group.cfg
 +douglas.santos ​   01      ti-admin
 +anderson.angelote 01      ti-admin
 +hillary ​          ​02 ​     matriz-logistica
 +nerso             ​02 ​     matriz-logistica
 +</​sxh>​
 +
 +Aqui temos na primeira coluna o nome do usuário poderia ser o endereço ip do cliente, na segunda coluna o número do grupo e a terceira coluna é o nome do grupo
 +
 +Agora para que apareça a identificação dos grupos precisamos gerar novamente o nosso relatório.
 +<sxh bash>
 +/​var/​www/​html/​lightsquid/​lightparser.pl
 +</​sxh>​
 +
 +Outra opção bacana que temos é fazer o mapeamento para nomes completos por exemplo o nome douglas.santos vamos mapear para Douglas Quintiliano dos Santos, o arquivo que precisamos editar é o seguinte
 +<sxh bash>
 +vim /​var/​www/​html/​lightsquid/​realname.cfg
 +douglas.santos Douglas Quintiliano dos Santos
 +192.168.1.3 ​   Nerso da Silva
 +</​sxh>​
 +
 +Aqui podemos mapear tanto nomes de usuários como endereço ip com isso no relatório podemos não lembrar na hora quem utilizar o ip 192.168.1.3 mais pelo nome é bem mais fácil de cobrar um determinado usuário, após efetuar a modificação precisamos gerar o relatório novamente
 +<sxh bash>
 +/​var/​www/​html/​lightsquid/​lightparser.pl
 +</​sxh>​
 +
 +Agora vamos criar um agendamento no cron para gerar automaticamente o nosso relatório:
 +<sxh bash>
 +crontab -e
 +[...]
 +*/20 * * * * /​var/​www/​htdocs/​lightsquid/​lightparser.pl today
 +</​sxh>​
 +
 +
 +Agora vamos criar um virtualhost para o lightsquid
 +<sxh apache>
 +vim /​etc/​httpd/​conf.d/​lightsquid.conf
 +<​VirtualHost *:80>
 + ​ServerName lightsquid.douglasqsantos.com.br
 + ​ServerAlias lightsquid.douglasqsantos.com.br
 + ​DocumentRoot "/​var/​www/​html/​lightsquid"​
 +
 + #​Controle de acesso ao lightsquid
 + <​Directory "/​var/​www/​html/​lightsquid">​
 +   ​DirectoryIndex index.cgi
 +   ​Options +ExecCGI -Indexes -MultiViews +SymLinksIfOwnerMatch
 +   ​AddHandler cgi-script .cgi
 +   ​AllowOverride All
 +
 + #​Autenticação do lightsquid
 + ​AuthUserFile /​etc/​httpd/​access/​lightsquid-htpasswd
 + ​AuthName "​LightSquid"​
 + ​AuthType Basic
 + ​require valid-user
 + </​Directory>​
 +
 + #​Configuração dos logs do apache
 + ​ErrorLog /​var/​log/​httpd/​lightsquid.douglasqsantos.com.br-error.log
 + ​CustomLog /​var/​log/​httpd/​lightsquid.douglasqsantos.com.br-access.log common
 +
 + #​Retirando a assinatura do Apache
 + ​ServerSignature Off
 +
 + ​IndexIgnore .??* *~ *# README RCS CVS *,v *,t *
 +
 + # Possible values include: debug, info, notice, info, error, crit,
 + # alert, emerg.
 + ​LogLevel info
 +</​VirtualHost>​
 +</​sxh>​
 +
 +Agora vamos criar o diretório que vai conter o arquivo de controle dos usuários que podem acessar o lightsquid
 +<sxh bash>
 +mkdir /​etc/​httpd/​access/​
 +</​sxh>​
 +
 +Agora vamos gerar o usuário e a senha, aqui eu vou cadastrar o usuário lightsquid
 +<sxh bash>
 +htpasswd -s -c /​etc/​httpd/​access/​lightsquid-htpasswd lightsquid
 +New password: ​
 +Re-type new password: ​
 +Adding password for user lightsquid
 +</​sxh>​
 +
 +Agora vamos reiniciar o apache
 +<sxh bash>
 +/​etc/​init.d/​httpd restart
 +</​sxh>​
 +
 +Agora já podemos acessar http://​lightsquid.douglasqsantos.com.br ou http://​ip_servidor
 +
 +====== Referências ======
 +  - http://​lightsquid.sourceforge.net/​Installs.html
 +  - http://​lightsquid.sourceforge.net/​Index2.html