Objectivo
O pacote dansguardian é um proxy de filtro de conteúdos. Quando um site Internet é acedido através do dansguardian, este analisa o seu conteúdo e, em função de uma lista de regras predefinidas e configuráveis pelo utilizador, permite ou bloqueia o acesso. É assim possível bloquear o acesso a sítios indesejáveis, impedir a descarga de determinado tipo de ficheiros, ou evitar a propagação de vírus.
Instalação
server:~# aptitude install dansguardian
Configuração
Toda a configuração é efectuada no ficheiro /etc/dansguardian/dansguardian.conf.
As mensagens do dansguardian podem ser configuradas para diversas línguas (a lista completa pode ser consultada em /etc/dansguardian/languages):
# [...]
# language to use from languagedir.
language = 'portuguese'
# [...]
Por omissão, o dansguardian aceita ligações na porta 8080. No entanto estas definições podem ser alteradas:
# [...]
# Network Settings
#
# the IP that DansGuardian listens on. If left blank DansGuardian will
# listen on all IPs. That would include all NICs, loopback, modem, etc.
# Normally you would have your firewall protecting this, but if you want
# you can limit it to a certain IP. To bind to multiple interfaces,
# specify each IP on an individual filterip line.
filterip =
# the port that DansGuardian listens to.
filterport = 8080
# [...]
O próprio dansguardian deve usar um proxy para optimização da largura de banda, neste caso o squid, a correr no mesmo servidor:
# [...]
# the ip of the proxy (default is the loopback - i.e. this server)
proxyip = 127.0.0.1
# the port DansGuardian connects to proxy on
proxyport = 3128
# [...]
Caso tenha sido instalado o pacote anti-vírus ClamAV, o dansguardian pode filtrar conteúdos para detectar vírus:
# [...]
# # Content Scanners (Also known as AV scanners)
# These are plugins that scan the content of all files your browser fetches
# for example to AV scan. The options are limitless. Eventually all of
# DansGuardian will be plugin based. You can have more than one content
# scanner. The plugins are run in the order you specify.
# This is one of the few places you can have multiple options of the same name.
#
# Some of the scanner(s) require 3rd party software and libraries eg clamav.
# See the individual plugin conf file for more options (if any).
#
contentscanner = '/etc/dansguardian/contentscanners/clamav.conf'
# [...]
Após terminar a configuração, deve ser comentada a linha de segurança:
# [...]
# UNCONFIGURED - Please remove this line after configuration
# [...]
O dansguardian utiliza, entre outras técnicas, um sistema de análise de texto em que atribui penalização a determinadas palavras consideradas "obscenas" e atingindo um determinado limite a página é bloqueada. Este limite pode ser alterado em função do perfil dos utilizadores, sendo que quanto mais alto for o valor, mais permissivo é o filtro. Normalmente são considerados razoáveis os valores de 50 para crianças pequenas, 100 para crianças mais velhas, 160 para adolescentes e 200 a 240 para adultos. Este valor deve ser indicado no parâmetros naughtynesslimit do ficheiro /etc/dansguardian/dansguardianf1.conf:
# [...]
# Naughtyness limit
# This the limit over which the page will be blocked. Each weighted phrase is given
# a value either positive or negative and the values added up. Phrases to do with
# good subjects will have negative values, and bad subjects will have positive
# values. See the weightedphraselist file for examples.
# As a guide:
# 50 is for young children, 100 for old children, 160 for young adults.
# naughtynesslimit = 50
naughtynesslimit = 240
# [...]
Finalmente, reiniciar o serviço dansguardian, para ter em conta as alterações efectuadas:
server:~# /etc/init.d/dansguardian restart
Configuração de clientes
É possível configurar o browser Firefox para utilizar um proxy, acedendo ao menu Ferramentas —> Opções… —> Avançadas —> Rede —> Definições…, activar a opção Configuração manual do proxy e inserir o endereço do servidor proxy (192.168.1.100) e a porta (8080). Podem-se definir excepções para o próprio posto (127.0.0.1) e para a rede local (192.168.1.0/24):
No caso de sistemas Linux, é possível declarar a variável "http_proxy" com a URL do proxy a utilizar:
fribeiro@server:~$ export http_proxy="http://192.168.1.100:8080/"
No entanto, na próxima sessão terá que ser declarada novamente.
Um método mais duradouro é declarar a variável automaticamente a cada login, incluindo a declaração no ficheiro ~/.profile do utilizador:
fribeiro@server:~$ echo 'http_proxy="http://192.168.1.100:8080/"' >> ~/.profile
A declaração pode ainda ser feita de modo automático e para todos os utilizadores, se incluída no ficheiro de sistema /etc/profiles:
server:~# echo 'http_proxy="http://192.168.1.100:8080/"' >> /etc/profile
Utilização
Após configurar o browser para utilizar o proxy dansguardian, sempre que o utilizador tentar aceder a um site com conteúdo indesejável, aparecerá uma mensagem informando que o acesso foi bloqueado e qual a razão. Um bom teste é tentar aceder à página de testes da Eicar:
- NOTA:
- A configuração de base do dansguardian é extremamente restritiva! Por exemplo, será negado o acesso a ficheiros relativamente comuns, como do tipo "iso", "zip" ou "mp3". As listas de filtros poderão ser encontradas na directoria /etc/dansguardian/lists. No entanto, a sua configuração sai fora do âmbito deste guia.
Referências
- DansGuardian (http://dansguardian.org/)
- DansGuardian Documentation Wiki (http://contentfilter.futuragts.com/wiki/doku.php)
- EICAR (http://www.eicar.org/)




















