Original Article: Spambayes
Author: Entrian Solutions

Spambayes

Este é um suplemento ao artigo "Uma introdução ao projeto Spambayes", publicado na edição de março de 2003 do Linux Journal (mas ainda é útil mesmo se você não leu o artigo).

Como prometido, várias coisas mudaram desde que o artigo foi impresso::

Website

O artigo do Linux Journal aponta para a nossa página do projeto SourceForge em http://sf.net/projects/spambayes - esse é o lugar para ir para downloads, para denunciar bugs ou recursos de solicitação, e assim por diante. Nós também temos agora uma página inicial em http://spambayes.sf.net que fornece alguns antecedentes e documentação para o projeto, e tem dicas para nossa lista de discussão e recursos relacionados na.

Instalador

Agora existe um instalador para o software. Ainda é uma distribuição de código-fonte, então você ainda precisa ter o Python 2.2.2 ou posterior instalado. Você pode baixar o instalador na página do projeto SourceForge em http://sf.net/projects/spambayes - para instalá-lo, descompactar o arquivo em um diretório temporário, cd spambayes-1.0a2 e depois executar python setup.py install. No Windows, isso irá instalar as várias aplicações que compõem o Spambayes na área de scripts da sua instalação do Python. No Unix, eles entrarão no local padrão para scripts Python, geralmente /usr/local/bin.

Não esqueça que no Windows, você também precisará do módulo bsddb3. Há um instalador binário disponível a partir no http://pybsddb.sf.net

Configuração baseada na Web

Para as pessoas que desejam usar o Spambayes através do proxy POP3, não há mais necessidade de criar e editar um bayescustomize.ini - você pode configurar tudo através da Web:

  • Crie um diretório para o Spambayes para armazenar seus dados.
  • cd para esse diretório e execute python pop3proxy.py -b. Seu navegador deve aparecer, mostrando a página inicial do aplicativo Spambayes. Se o seu navegador não aparecer, você deve executá-lo e apontá-lo para o URL impresso pelo pop3proxy.py.
  • Clique no link da página Configuração e digite o nome do seu servidor POP3 e o número da porta para o proxy para escutar. No Windows, é mais conveniente usar a porta 110, uma vez que é o padrão para o POP3. Em Unix (ou sistemas derivados de Unix como MacOS X), você deve usar uma porta alta como 1110. Clique em Salvar para salvar sua configuração.
  • Reconfigure seu cliente de e-mail para conversar com o proxy. Se o seu cliente de e-mail atualmente fala com pop3.example.com na porta 110 e você configurou o proxy para escutar na porta 1110, você deve reconfigurar seu cliente de e-mail para falar com o localhost (ou o nome da máquina em que você " rodando o proxy) na porta 1110.

Agora você pode coletar seu e-mail através do proxy e ver os cabeçalhos de X-Spambayes-Classification adicionados às mensagens. Agora você pode configurar filtros no seu cliente de e-mail para lidar com spam suspeita, como você escolheu. Todo o seu correio será classificado como inseguro até você treinar o software, o que você também faz através da web usando a página de Revisar mensagens. Se você não quiser aguardar que as mensagens cheguem ao treinamento, você pode usar o formulário "carregar uma mensagem ou arquivo mbox" para treinar através da interface da web, seja em mensagens individuais ou em arquivos unix mbox.

Privacidade para interface web

Se você está preocupado com outras pessoas que acessam sua interface da web do Spambayes, você pode configurá-lo para aceitar apenas conexões da máquina em que está sendo executado. Você faz isso adicionando isso:

    [html_ui]
    html_ui_allow_remote_connections: False

Para o seu bayescustomize.ini.

Integração com Mutt e Gnus

No diretório contrib da distribuição de origem são muttrc e spambayes.el, que permitem treinar Spambayes de dentro de Mutt e Gnus - veja esses arquivos para obter detalhes.

Executando vários proxies na mesma porta

Alguns clientes de e-mail (nomeadamente Eudora) não permitem que você defina diferentes portas para diferentes servidores POP3. Este é um problema para o Spambayes, porque o proxy POP3 só pode falar com um servidor por porta. A solução para isso é atribuir vários endereços à sua máquina e executar um proxy por endereço. Aqui está um exemplo (para o MacOS X, mas deve funcionar de forma semelhante em qualquer plataforma baseada em Unix). Ele executa dois proxies POP3, ambos na porta 110, mas em diferentes endereços locais:

    #!/bin/sh
    sudo ifconfig lo0 inet 127.0.0.2 add
    sudo python pop3proxy.py

E em bayescustomize.ini:

    pop3proxy_servers = pop3.example1.com, pop3.example2.com
    pop3proxy_ports = 127.0.0.1:110, 127.0.0.2:110

Usando a interface de treinamento na web com procmail

Se você estiver usando o hammiefilter para classificar o correio via procmail, você ainda pode usar a interface de treinamento na web para treinar o Spambayes. Onde você tem uma regra de procmail, algo assim:

    :0fw
    | hammiefilter.py

Você pode adicionar outra regra como esta:

    :0fw
    | proxytee.py

Isso enviará cada mensagem recebida para a interface da web para treinamento posterior. Você precisa estar executando pop3proxy.py para isso, mas você não precisa ter servidores POP3 configurados.

Observe que atualmente hammiefilter.py e pop3proxy.py usam padrões diferentes para a localização do banco de dados - isso é algo que abordaremos em uma versão futura, mas, por enquanto, você precisa resolver isso configurando pop3proxy.py para apontar para o mesmo banco de dados usado por hammiefilter.py. Por padrão, isso é ~/.hammiedb - vá para a página de configuração da web, insira ~/.hammiedb como seu nome de arquivo do banco de dados e clique Salvar.