Linux slogan
Visite também: Segurança Linux · BR-Linux.org · Dicas-L · Doode · NoticiasLinux · SoftwareLivre.org · UnderLinux



» Screenshot
Linux: .EXE e .DLL no GNOME 2
Por mmaster
» Login
Login:
Senha:

Se você ainda não possui uma conta, clique aqui.

Esqueci minha senha



Artigo

Antispam em Shell Script
Linux user
mascote24
02/02/2009
O funcionamento do esquema proposto neste artigo não pretende ser a melhor forma de bloquear emails indesejáveis, existem melhores opções para isto. Serve para exemplificar o poder do shell script junto com ferramentas do sistema normalmente encontradas na maioria das distribuições Linux.
Por: Jorge Alberto Corso
[ Hits: 8061 ]
Conceito: 10.0   1 voto(s)1 voto(s)1 voto(s)1 voto(s)1 voto(s) + quero dar nota ao artigo

Funcionamento

O esquema proposto funciona do seguinte modo: em todo email de entrada será analisado seu remetente pelo Procmail antes de ser entregue para a caixa postal de destino. Primeiro será verificado se o email do remetente se encontra em uma lista de emails permitidos, se for encontrado é direcionado para a caixa postal de destino, senão será verificado se está em uma lista de emails bloqueados, se for encontrado, o email é automaticamente descartado, e por último se não for encontrado em nenhuma das duas listas, três atividades serão executadas:
  • o email é direcionado para a caixa postal de destino;
  • o email do remetente é adicionado na lista de emails bloqueados;
  • e por último um email com um aviso do bloqueio do email e solicitação para o desbloqueio é enviado para o remetente.

No email enviado ao remetente será colocado um link para que o mesmo acesse e então um novo email será direcionado para o destinatário inicial com um assunto padrão, caberá então ao destinatário decidir liberar ou não emails deste remetente.

Funcionalidade

Este esquema apenas eliminará emails verificando o remetente do email. Na primeira vez que um remetente enviar um email ele automaticamente estará bloqueado para receber outros emails do mesmo remetente enquanto o destinatário não receber outro email gerado pelo acesso do remetente ao clicar no link no corpo do email enviado avisando sobre o bloqueio.

Isto implica, por exemplo, em problemas quando um remetente ao tentar enviar um email com arquivo anexo esquece de anexar o arquivo e logo em seguida envia outro email com o devido anexo (situação muito comum), este segundo email será automaticamente descartado.

Requisitos necessários

Não serão explicados como funcionam o programas envolvidos.
  • procmail
  • formail
  • bash
  • apache com php
  • editor de texto
  • sed

Componentes

Todos os arquivos abaixo estarão no diretório home do usuário:
  • emails_bloqueados.txt: lista de emails bloqueados, um email por linha;
  • emails_permitidos.txt: lista de emails permitidos, um email por linha;
  • bloqueados.rc: arquivo procmail com emails bloqueados;
  • permitidos.rc: arquivo procmail com emails permitidos;
  • gera_emails_bloqueados.sh: shell script para criar o arquivo "bloqueados.rc";
  • gera_emails_permitidos.sh: shell script para criar o arquivo "permitidos.rc";
  • gera_email_retorno.sh: shell script para enviar email com aviso de email bloqueado;
  • novo_email.tmp: arquivo temporário para incluir email na lista de emails permitidos;
  • emails_bloqueados.tmp: arquivo temporário para excluir email da lista de emails bloqueados;
  • emails_permitidos.tmp: arquivo temporário para incluir emails na lista de emails permitidos;
  • msg.txt: arquivo com o corpo do email que será enviado para o remetente, solicitando que o mesmo acesso um site;
  • procmail.rc: arquivo de configuração do Procmail personalizado para o usuário.

Preparando o Procmail

Crie ou edite o arquivo .procmailrc no diretório home do usuário com o seguinte conteúdo:

INCLUDERC=~/permitidos.rc
INCLUDERC=~/bloqueados.rc

Sem este arquivo com este conteúdo todo o esquema não funcionará.

Próxima página >>




Páginas do artigo

Outros artigos deste autor

Leitura recomendada

Comentários
[1] Comentário enviado por robsonsbrasil em 16/09/2009 - 13:46h:

Amigo no caso dos usuários que fazem uso do outlook como seria esse bloqueio e inclusão?
Abraços


Contribuir com comentário


  
Para executar esta ação você precisa estar logado no site, caso contrário, tudo o que for digitado será perdido.
Responsável pelo site: Fábio Berbert de Paula - Conteúdo distribuído sob licença GNU FDL
Site hospedado por:

Viva o Linux

A maior comunidade Linux da América Latina! Artigos, dicas, tutoriais, fórum, scripts e muito mais. Ideal para quem busca auto-ajuda em Linux.