Configuração do Maildrop para criar pasta Spam e aparecer no squirrelmail

Publicado por Edinaldo PS em 29/11/2007

[ Hits: 10.909 ]

 


Configuração do Maildrop para criar pasta Spam e aparecer no squirrelmail



Spamassassim + qmail + qmailscanner + maildrop + squirrelmail

Objetivo: Os spams recebidos devem ser encaminhados para a pasta .spam para que o usuário decida o que é realmente spam e o que não é. Isto porque o spamassassim considera como spam todo e-mail que ultrapasse a pontuação em 6 (setado no arquivo local.cf).

A configuração adotada foi:
  • Todo e-mail que tiver pontuação até 6 é enviado para Inbox.
  • Todo e-mail que for maior que 6 e menor que 10 será encaminhado para a pasta inbox.spam.
  • Todo e-mail que for maior que 10 até 16 será enviado para quarentena e o restante será removido.

O spamassassim somente marca o e-mail como spam, caso tenha pontuação superior a 6.

required_hits 6

O qmailscanner é quem deleta ou não o spam.

sa-quarantine=4
sa-delete=10

--sa-quarantine [num] (default: 0)
Spam messages with a score higher than (required_hits + sa_quarantine) should be quarantined. Only relevant if SpamAssassin is used. Score of 0 means deliver all messages.

--sa-delete [num] (default: 0)
Spam messages with a score higher than (required_hits + sa_delete) should be deleted. Only relevant if SpamAssassin is used. Score of 0 means deliver all messages.

Isto quer dizer que todo e-mail que tiver pontuação de 6 até 10 será encaminhado para a pasta .spam (configurado pelo maildrop) e todo e-mail que tiver pontuação de 10.1 até 16 será enviado para quarentena e o que for maior que isso será deletado.

O maildrop é quem vai encaminhar para a pasta .spam se ela existir, ou então será criada.

Configuração do maildrop:

Deve ser criado um arquivo chamado mailfilter com a seguinte configuração:

1 - Deve ter permissão:

# chmod 600 mailfilter
# chown vpopmail.vchkpw mailfilter
-rw------- 1 vpopmail vchkpw 786 2007-11-05 16:19 mailfilter

2 - Configuração do arquivo mailfilter:

import EXT
import HOST
SHELL="/bin/sh"
VHOME=`/home/vpopmail/bin/vuserinfo -d $EXT@$HOST`
SPAMDIR="$VHOME/Maildir/.Spam"
VPOP="| /home/vpopmail/bin/vdelivermail '' bounce-no-mailbox"
logfile "/var/log/maildrop.log"
TIMESTAMP=`date "+%d %b %H:%M:%S"`
DUMMY=`test -d $VHOME/Maildir`
if ( $RETURNCODE == 1 )
{
   log "conta inexistente: $EXT@$HOST em $TIMESTAMP"
   EXITCODE=100
   exit
}

#if (/^X-Spam-Flag: *YES/)
if  (/^X-Spam-Status: YES/)
{
   RETURNCODE=`[ -d $SPAMDIR ] || echo 1`
   if ( $RETURNCODE == 1 )
   {
      log "pasta $SPAMDIR ainda nao existia na conta $EXT@$HOST, criando..."
      `/usr/local/bin/maildirmake $SPAMDIR`
      `chown -R vpopmail:vchkpw $SPAMDIR`
      `echo "INBOX.Spam >> $VHOME/Maildir/courierimapsubscribed"`
      `/usr/local/sbin/subscribeIMAP.sh Spam $VHOME`    
      ## este arquivo é que faz a pasta Spam ser visível no squirrelmail
   }
   to "$SPAMDIR"
}

to "$VPOP"

OBS: Observe que o arquivo /usr/local/sbin/subscribeIMAP.sh é quem diz para o squirrelmail que a pasta Spam deve ser visível.

3 - Arquivo /usr/local/sbin/subscribeIMAP.sh.

Páginas pesquisadas:
#!/bin/sh
#
# This subscribes the folder passed as $1 to courier imap
# so that Maildir reading apps (Sqwebmail, Courier-IMAP) and
# IMAP clients (squirrelmail, Mailman, etc) will recognize the
# extra mail folder.
# Matt Simerson - 12 June 2003


LIST="$2/Maildir/courierimapsubscribed"
if [ -f "$LIST" ]; then
   # if the file exists, check it for the new folder
   TEST=`cat "$LIST" | grep "INBOX.$1"`
   # if it is not there, add it
   if [ "$TEST" = "" ]; then
      echo "INBOX.$1" >> $LIST
   fi
else
   FULL="INBOX\nINBOX.Sent\nINBOX.Trash\nINBOX.Drafts\nINBOX.$1"
   echo -e $FULL > $LIST
   /bin/chown vpopmail:vchkpw $LIST
   /bin/chmod 644 $LIST
fi

# chmod 755 /usr/local/sbin/subscribeIMAP.sh
# qmailctl stop
# qmailctl start
# qmailctl stat


4 - Arquivo de log:

# touch /var/log/maildrop.log
# chown vpopmail:vchkpw /var/log/maildrop.log
# chmod 774 /var/log/maildrop.log


5 - Arquivo .qmail-default:

# chown vpopmail:vchkpw .qmail-default

| /usr/local/bin/maildrop /home/vpopmail/domains/ipec.fiocruz.br/mailfilter

Outras dicas deste autor
Nenhuma dica encontrada.
Leitura recomendada

Corretor ortográfico em português no Thunderbird

Mantendo logs do SMTP para auditoria em servidores de grande movimento

Apagando "Frozen Message" na fila de email do Exim

Cyrus IMAPD - Erro "Unsupported feature(s) in require" ao aplicar filtros Sieve

Cyrus Aggregator - Serviço Sieve não conecta no Backend [Resolvido]

  

Comentários
[1] Comentário enviado por Gabriel_Silva em 03/12/2008 - 16:20h

Este filtro desconsidera que existem aliases ou apelidos. Ele somente testa a existencia do homedir.

T+
Pablo Costa



Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts