Galera, nessa primeira etapa instalaremos o SARG, suponho que você já tenha instalado o Squid e que o mesmo esteja configurado e rodando.
Vamos ao primeiro comando:
# apt-get install sarg apache2
Aguarde a sua instalação.
Não abordarei as configurações contidas em
/etc/squid/sarg.conf, pois a intenção aqui e colocar usuário e senha no mesmo.
Sarg e Apache instalados, vamos as configurações!
Para nossa segurança vamos colocar o arquivo que fará a autenticação no
/etc/apache2/.htpasswd, para isso vamos criar o arquivo:
# touch /etc/apache2/.htpasswd
Vamos criar um usuário qualquer:
# htpasswd /etc/apache2/.htpasswd nome_usuário_qualquer
Ele pedirá a senha 2 vezes, feito isso já temos o usuário para autenticação do SARG.
Configuração do Apache2
Vamos criar um link do arquivo default:
# ln -s /etc/apache2/sites-available/default /etc/apache2/sites-enabled/000-default
Pronto, vamos abrir o link simbólico que criamos:
# vim /etc/apache2/sites-enabled/000-default
O mesmo estará assim:
<VirtualHost *:80>
ServerAdmin webmaster@localhost
DocumentRoot /var/www/
<Directory />
Options FollowSymLinks
AllowOverride None
</Directory>
<Directory /var/www/>
Options Indexes FollowSymLinks MultiViews
AllowOverride None
Order allow,deny
allow from all
</Directory>
ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
<Directory "/usr/lib/cgi-bin">
AllowOverride None
Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
Order allow,deny
Allow from all
</Directory>
ErrorLog /var/log/apache2/error.log
# Possible values include: debug, info, notice, warn, error, crit,
# alert, emerg.
LogLevel warn
CustomLog /var/log/apache2/access.log combined
Alias /doc/ "/usr/share/doc/"
<Directory "/usr/share/doc/">
Options Indexes MultiViews FollowSymLinks
AllowOverride None
Order deny,allow
Deny from all
Allow from 127.0.0.0/255.0.0.0 ::1/128
</Directory>
</VirtualHost>
Agora com a autenticação na pasta squid-reports, que é a responsável por guardar os logs do Squid para o sarg:
<VirtualHost *:80>
ServerAdmin webmaster@localhost
DocumentRoot /var/www/
<Directory />
Options FollowSymLinks
AllowOverride None
</Directory>
<Directory /var/www/>
Options Indexes FollowSymLinks MultiViews
AllowOverride None
Order allow,deny
allow from all
</Directory>
ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
<Directory "/usr/lib/cgi-bin">
AllowOverride None
Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
Order allow,deny
Allow from all
</Directory>
ErrorLog /var/log/apache2/error.log
# Possible values include: debug, info, notice, warn, error, crit,
# alert, emerg.
LogLevel warn
CustomLog /var/log/apache2/access.log combined
Alias /doc/ "/usr/share/doc/"
<Directory "/usr/share/doc/">
Options Indexes MultiViews FollowSymLinks
AllowOverride None
Order deny,allow
Deny from all
Allow from 127.0.0.0/255.0.0.0 ::1/128
</Directory>
<Location /squid-reports/> # Local a ser protegido por usuário e senha
AuthType Basic # Tipo de autenticação
AuthName "Aracatuba Turbo Diesel LTDA." # Nome qualquer que aparecerá na tela de login
AuthUserFile /etc/apache2/.htpasswd # onde esta o arquivo com os usuários cadastrados
Require valid-user # Requer Validação do Usuario
</Location>
</VirtualHost>
Pronto, reinicie o Apache:
# /etc/init.d/apache2 restart
Acesse agora http://seu_ip/squid-reports e veja a autenticação.
Galera, tenho a agradecer a Deus primeiramente e segundo ao meu professor de
Linux Tiago H. Pires.