Como requisito, partirei do ponto que você já tenha configurado e esteja rodando o
Squid,
BIND e o
Apache.
Criaremos um domínio para os relatórios do Squid gerado pelo
Sarg, que irá responder pelo nome de "squid.dalveson.com.br". O IP da máquina onde estará instalado o Squid e o Sarg será 192.168.2.1:
# cd /etc/bind
Aqui a minha zona normal tem o nome de "db.dalveson.com.br" e a reversa tem o nome "db.2.168.192", visto que minha rede é 192.168.2.0/24. Vamos editá-las para adicionar o domínio que será usado na criação do virtual hosts do Apache:
# nano db.dalveson.com.br
No final do arquivo adicione o registro DNS do tipo A, que converte nome em IPv4:
squid IN A 192.168.2.1
Agora edite o arquivo da zona reversa:
# nano db.2.168.192
No final do arquivo adicione um registro do tipo PTR, que converte IP em nome:
* Lembrando que o número 1 no início da linha indica o IP onde estará a aplicação Sarg.
1 PTR squid.dalveson.com.br
Reinicie o seu BIND:
# /etc/init.d/bind9 restart
Agora, no servidor onde está o Apache, crie o diretório onde serão salvos os relatórios do Squid:
# mkdir /var/www/squid-reports
Entre no diretório que você acabou de criar:
# cd /var/www/squid-reports
Agora criaremos o arquivo ".htpasswd", que conterá usuários/senha que terão acesso ao diretório:
# htpasswd -c /var/www/squid-reports/.htpasswd dalveson
Onde:
- /var/www/squid-reports → Diretório que deseja proteger;
- .htpasswd → Arquivo que será criado contendo nome de usuário e senha, que poderá acessar a pasta;
- dalveson → Usuário que acessará a pasta.
Ele irá lhe pedir uma senha e em seguida pedirá para você repeti-la. Se tudo deu certo, no final ele exibirá uma mensagem dizendo que a senha para o usuário foi adicionada.
Adicione os hosts virtuais no arquivo host do sistema:
# nano /etc/hosts
127.0.0.1 localhost.localdomain localhost
192.168.2.1 srv-guardiao.localdomain srv-guardiao
192.168.2.1 squid.dalveson.com.br squid
* Onde "srv-guardiao" é o hostname da minha máquina.
Acesse o diretório de
sites-available:
# cd /etc/apache2/sites-available
Crie o seu site com base no modelo disponibilizado pelo Apache:
# cp default squid.dalveson.com.br
Edite o seu site "squid.dalveson.com.br" e altere o diretório apontando para
/var/www/squid-reports, que será o local onde o Sarg salvará os relatórios de acesso:
# nano squid.dalveson.com.br
E deixe-o da seguinte maneira:
<VirtualHost *:80>
ServerAdmin dalveson@dalveson.com.br
ServerName squid.dalveson.com.br
DocumentRoot /var/www/squid-reports/
<Directory />
Options FollowSymLinks
AllowOverride None
</Directory>
<Directory /var/www/squid-reports/>
Options Indexes FollowSymLinks MultiViews
AllowOverride None
Order allow,deny
allow from all
# AuthType Basic É o tipo de autenticação
AuthType Basic
# AuthName "Acesso Restrito:" É a mensagem que aparece quando pedir a senha
AuthName "Acesso Restrito:"
# AuthUserFile "/var/www/squid-reports/.htpasswd" É o arquivo que armazena a senha
AuthUserFile "/var/www/squid-reports/.htpasswd"
# Require user - Essa linha indica que usuário pode acessar.
Require user dalveson
</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/squid.dalveson.com.br-error.log
LogLevel warn
CustomLog /var/log/squid.dalveson.com.br-access.log combined
</VirtualHost>
Agora é necessário habilitar o site criado, para tanto execute:
# a2ensite squid.dalveson.com.br
Reinicie o Apache:
# /etc/init.d/apache reload
Pronto. Agora que os sites/virtual hosts já estão habilitados, vá até um computador na rede e tente acessar o "squid.dalveson.com.br". Observe que irá lhe pedir usuário e senha.