http://www.zago.eti.br/email/procmail.txt Use CTRL+F para refinar a pesquisa. Linha de: **************** separa mensagens ou tópicos. ******************************************************** Zago http://www.zago.eti.br/menu.html FAQ e artigos sobre Linux veja neste diretório (site) email.txt ******************************************************************* O Procmail funciona em conjunto com outros pacotes, por exemplo o Postfix, Sendmail ou outro MTA, a finalidade do Procmail é filtrar as mensagens pra descartar mensagens indesejadas, separa-las em pastas por assunto, remetente, conteudo, etc. Algumas indicações: Inicie pelo site oficial do Procmail http://www.procmail.org Timo's procmail tips and recipes http://www.uwasa.fi/~ts/info/proctips.html SPAM e ferramentas para barrar SPAM, veja indicações no FAQ: http://www.zago.eti.br/email/spamassassin.txt Obter ajuda no manual: man procmailex Algumas sugestões de pesquisa no Google: Re: procmail ~linux procmail ~linux how to procmail ~linux define:procmail Não entendeu porque está em ingles? então use o próprio google pra traduzir a página, copie a URL atual, vá pro final da página, clique em "Ferramentas de idiomas", cole o endereço, clique em "traduzir", ou cole em outra abra do navegador a URL que deseja traduzir (CTRL+T), ou acesse diretamente o tradutor em: http://translate.google.com/translate_t ******************************************************************* Arquivo de regras do prcmail /etc/procmailrc DICAS: # Bloqueio por assunto/subject, as mensagens que contenha no assunto # as palavras especificadas serão redirecionadas para /var/log/mail/assunto :0 * ^Subject:.*(PALAVRA1|Palavra2|palavra3).* /var/log/mailassunto # Bloqueio por palavras no corpo da mensagem, as mensagens que contenha # as palavras especificadas serão redirecionadas para /var/log/mailassunto :0 B * (\ PALAVRA1\ |\ Palavra2\ |\ palavra3\ ) /var/log/mail/corpo # Bloqueio por dominio, as mensagens com origem no dominio especificado # serão redirecionadas para /var/log/mail/dominio :0 * ^From:.*(dominio1.com.br|dominio2.net|dominio3.com) /var/log/mail/dominio Pra jogar o e-mail fora, redirecione pra /dev/null :0: * ^Subject:.*email automático /dev/null Pra "inverter" a regra use o sinal NOT representado pelo sinal '!'. por exemplo: :0 * !^From:.*uol.com.br /dev/null ******************************************************************* Lixo no Correio Eletrônico --------------------------------------------------------------------- Como eu já disse anteriormente, travo uma batalha constante contra o lixo no correio eletrônico. Como mantenho diversas listas com muitos assinantes, frequentemente sofro com as infames respostas automáticas. Esta, reconheço, é uma guerra que nunca vou ganhar. Mas existem algumas medidas que podem contribuir para diminuir as perdas. A minha arma mais valiosa é o software procmail, uma das melhores ferramentas existentes para lidar com correio eletrônico. Simplesmente fabulosa. O procmail permite que se criem filtros que dão destino apropriado para as mensagens que chegam. Eu possuo vários filtros: para listas, mensagens indesejáveis e alguns outros. Estou incluindo aqui a minha lista de filtros para o lixo que recebo. Cada filtro é composto de três linhas. A primeira linha indica o início de um novo filtro, a segunda indica os caracteres que devem ser encontradas para a regra ser aplicada e a terceira indica o destino que deve ser dado à mensagem. Para simplesmente apagar, redirecione a mensagem para /dev/null. Para não apagar acidentalmente mensagens que possam ser importantes, às vezes eu as redireciono para um arquivo, neste caso "IN.lixo", que depois examino quando tenho tempo. Esta coleção de filtros é bastante valiosa e foi desenvolvida ao longo do tempo a partir das mensagens indesejáveis que recebo. Em outra oportunidade estarei divulgando um tutorial mais completo sobre o procmail. Aguardem. A busca por estes caracteres é feita no campo "Subject:", que é o padrão, ou no corpo da mensagem quando especificado :0B: Leiam também o artigo que escrevi sobre a auto-resposta em http://www.revista.unicamp.br/navegacao/index3.html A seguir, as regras que utilizo. Espero que sejam úteis. :0: * ^From:.*postmaster@zipmail.com.br /dev/null :0: * ^Subject:.*Auto Response /dev/null :0: * ^Subject:.*Auto-Resposta Zipmail /dev/null :0: * ^Subject:.*Resposta Autom /dev/null :0: * ^Subject:.*auto reply /dev/null :0: * ^Subject:.*autoreply /dev/null :0: * ^Subject:.*auto-reply /dev/null :0: * ^Subject:.*email automatico /dev/null :0: * ^Subject:.*email automático /dev/null :0: * ^Subject:.*recebimento de mensagem . ok /dev/null :0: * ^Subject:.*mensagem automatica /dev/null :0: * ^Subject:.*auto response /dev/null :0: * ^Subject:.*auto resposta /dev/null :0: * ^Subject:.*auto-resposta /dev/null :0: * ^Subject:.*cc:mail link to smtp /dev/null :0: * ^Subject:.*out of office /dev/null :0: * ^Subject:.*ferias IN.lixo :0: * ^Subject:.*férias IN.lixo :0: * ^Subject:.*via the vacation program /dev/null :0: * ^Subject:.*mensagem de resposta automática /dev/null :0: * ^Subject:.*(auto response) /dev/null :0: * ^Subject:.*(auto-response) /dev/null :0: * ^Subject:.*em breve mandarei uma resposta /dev/null :0: * ^Subject:.*muito obrigado por sua mensagem /dev/null :0: * ^Subject:.*resposta automática /dev/null :0: * ^Subject:.*resposta de férias do /dev/null :0: * ^Subject:.*i am on vacation /dev/null :0B: * .*\<estou de férias\> IN.lixo :0B: * .*\<auto resposta\> IN.lixo :0B: * .*\<resposta automática\> IN.lixo :0B: * .*\<fora do escritório\> IN.lixo :0B: * .*\<out of the office\> IN.lixo :0B: * .*\<estarei ausente de\> IN.lixo :0B: * .*\<responderei o mais breve possível\> IN.lixo --------------------------------------------------------------- As mensagens da lista Dicas-L são veiculadas diariamente para 8976 assinantes. Para sair ou assinar a lista Dicas-L, consulte o documento que se encontra em http://www.Dicas-l.com.br/FAQ.html. A redistribuição desta e outras mensagens da lista Dicas-L pode ser feita livremente, deste que o conteúdo, inclusive esta nota, não sejam modificados. --------------------------------------------------------------- ******************************************************************* Remoção de Mensagens Repetidas com Procmail --------------------------------------------------------------------- Colaboração: Elgio Schlemer Esta mensagem circulou na lista sed-br@yahoogroups.com. É mais uma ferramenta na luta sem fim contra o lixo na Internet. Permite a remoção de mensagens duplicadas automaticamente. O programa procmail, para ambientes Unix e derivados, já foi abordado nesta lista diversas vezes, e serve para, entre outras coisas, fazer um pré-processamento de mensagens eletrônicas, arquivando, apagando e muito mais. Agora, a dica: Para eliminar mensagens duplicadas, basta incluir no arquivo .procmailrc as seguintes linhas: :0 Wh: msgid.lock | formail -D 8192 msgid.cache Caso se queira manter as cópias: :0 Whc: msgid.lock | formail -D 8192 msgid.cache --------------------------------------------------------------- As mensagens da lista Dicas-L são veiculadas diariamente para 15370 assinantes. Para sair ou assinar a lista Dicas-L, consulte o documento que se encontra em http://www.Dicas-l.com.br/FAQ.html. A redistribuição desta e outras mensagens da lista Dicas-L pode ser feita livremente, deste que o conteúdo, inclusive esta nota, não sejam modificados. --------------------------------------------------------------- ******************************************************************* Lixo no Email --------------------------------------------------------------------- Antes da mensagem de hoje, uma novidade. Os sistemas Rau-Tu hospedados na Unicamp estão agora residindo em um computador dedicado, o que vai nos dar bem mais flexibilidade e espaço para seu crescimento. Para quem ainda não conhece, o endereço do portal Rau-Tu é http://www.rau-tu.unicamp.br. Também ao final desta mensagem algumas dicas para racionalização do uso de energia elétrica :-) Agora, a dica: --------------------------------------------------------------------- Lixo no Email Eu recentemente acrescentei mais algumas regras de filtragem ao meu sistema de correio eletrônico, baseado no programa procmail, para ambiente Unix e similares. Toda mensagem que contiver os caracteres "$", vírus ou virus, cash, money, dinero, rich, rico, são automaticamente eliminadas. Acho extremamente improvável que alguém vá me dar dinheiro nesta altura da minha vida, então qualquer mensagem que contenha algo deste tipo vai para o lixo na hora. E a outra praga, que assola os usuários de sistemas Microsoft, os vírus, não me dizem respeito pois uso GNU/Linux (Conectiva). As regras para o procmail que uso são: :0: * ^Subject:.*\$ /dev/null :0: * ^Subject:.*rico /dev/null :0: * ^Subject:.*rich /dev/null :0: * ^Subject:.*dinero /dev/null :0: * ^Subject:.*money /dev/null :0: * ^Subject:.*cash /dev/null :0: * ^Subject:.*virus /dev/null Mas estas não são as únicas regras que uso. O meu arquivo para lidar com o lixo no email tem 437 linhas. E cresce todos os dias. Quem não usa procmail pode facilmente implementar regras semelhantes na maioria dos leitores de email. É só pesquisar um pouquinho que dá para fazer. Para mais informações sobre o programa procmail consulte o arquivo da Dicas-L, em http://www.Dicas-l.com.br. Para encerrar esta mensagem, estou colaborando aqui com algumas dicas para racionalização do uso de energia elétrica: Assunto: Lições de economia de energia (releitura) APRENDA A ECONOMIZAR 01 - Não assista TV em casa. Visite os seus velhos amigos e assista às 0 novelas por lá; 02 - Só alugue filmes curta-metragem; 03 - No rádio, só escute música lenta; 04 - Só use a máquina para lavar roupas limpas. Roupa suja agora se lava é no Congresso Nacional; 05 - Peça à sua Prefeitura desligar os semáforos; 06 - Durma cedo, acorde tarde e trabalhe em marcha lenta; 07 - Use o chuveiro elétrico à vontade, mas desligado; 08 - Tome banho junto com a vizinha; 09 - Deixe o portão automático sempre aberto; 10 - Desligue a campainha. As pessoas baterão palmas para você; 11 - Só use o elevador do décimo sexto andar em diante; 12 - Bote um gerador na sua bicicleta ergométrica; 13 - Jante à luz de velas; 14 - Evite tomar café, para não ficar aceso; 15 - Só tenha idéias brillhantes quando a casa estiver a escuras; 16 - Passe a noite caçando vaga-lumes e latindo, para espantar ladrão; 17 - Tente votar direito, uma vez por outra! --------------------------------------------------------------- As mensagens da lista Dicas-L são veiculadas diariamente para 15789 assinantes. Para sair ou assinar a lista Dicas-L, consulte o documento que se encontra em http://www.Dicas-l.com.br/FAQ.html. A redistribuição desta e outras mensagens da lista Dicas-L pode ser feita livremente, deste que o conteúdo, inclusive esta nota, não sejam modificados. --------------------------------------------------------------- ******************************************************************* Veja neste endereço abaixo tem uma ferramenta otima para isto. http://www.ppgia.pucpr.br/~borchardt/tools ou http://www.linuxsecurity.com.br/article.php?sid=2949 Alguem ai já conseguiu colocar o bloqueio de anexos via procmail funcionando em contas de e-mail virtuais??? ******************************************************************* De: dicas-l-owner@unicamp.br Assunto: [Dicas-L] Filtragem de Mensagens com Procmail Data: 24 May 2002 00:19:41 -0300 Quer ter seu próprio endereço na Internet? Garanta já o seu e ainda ganhe cinco e-mails personalizados. DomíniosBOL - http://dominios.bol.com.br -------------------------------------------------------------------- Endereço: http://www.Dicas-l.com.br/dicas-l/20020524.shtml -------------------------------------------------------------------- Software Livre na Unicamp http://www.softwarelivre.unicamp.br -------------------------------------------------------------------- Filtragem de Mensagens com Procmail Usuários com acesso a servidores com Unix e derivados, podem usar o procmail para fazer uma filtragem de pacotes removendo o lixo tão abundante hoje em dia. Algumas recomendações de sites com tutoriais interessantes sobre procmail: - http://www.laas.fr/~felix/despam.html - http://junkfilter.zer0.org/ - http://www.spambouncer.org/proctut.shtml - http://www.acme.com/mail_filtering.html e também - http://www.antispam.org.br/ Para vocês terem uma idéia, eu recebo por volta de 2500 mensagens por dia. Após a filtragem eu fico com cerca de 50. É muito lixo. Na minha máquina com GNU/Linux (Conectiva), eu uso um software chamado Spastic, que implementa regras de filtragem também com procmail. Funciona muito bem. Fica em http://spastic.sourceforge.net/ --------------------------------------------------------------- LIVRO:As Palavras Mais Comuns da Língua Inglesa Rubens Queiroz de Almeida http://www.Dicas-l.com.br/palavrasmaiscomuns.html --------------------------------------------------------------- As mensagens da lista Dicas-L são veiculadas diariamente para 19146 assinantes. Todas as mensagens da Dicas-L ficam armazenadas em http://www.Dicas-l.com.br. A redistribuição desta e outras mensagens da lista Dicas-L pode ser feita livremente, deste que o conteúdo, inclusive esta nota, não sejam modificados. --------------------------------------------------------------- ******************************************************************* De: Rauklei P.S.=?ISO-8859-1?Q?Guimar=E3es?= Para: raphael Cc: Lista Assunto: Re: (linux-br) procmail Data: 15 Jan 2003 22:37:46 -0200 On Wed, 15 Jan 2003 16:38:41 -0200 raphael wrote: > e ai galera , blz ??? > > gostaria de saber se no procmail tem como fazer um regra onde o > usuario só possa receber e-mail de um determinado dominio. > ex.; > > se o "from" for diferente de "*uol.com.br" ele envia para /dev/null > Use o sinal NOT, para "inverter" a regra, que aliás se representa pelo '!'. Algo como: :0 * !^From:.*uol.com.br /dev/null Maiores detalhes: man procmailex ******************************************************************* De: Jorge Godoy Para: Luiz Fernando Klein Cc: linux Assunto: Re: (linux-br) Procmail Data: 09 Jan 2003 09:37:23 -0200 "Luiz Fernando Klein" writes: > Pessoal, eu configurei o procmail, para filtrar os emails, conforme > os roteiros de instalação, porem ele manda a mensagem para o > remetente, de que pode conter virus, eu gostaria que ele mandasse a > mensagem para que recebeu o email, como eu posso fazer isso??? Remova a instrução que manda para o remetente. Se você configurou isso no procmail, simplesmente remova esta receita ou a parte que trata este envio. Agora, pela descrição, acho que a configuração que você quer não é do procmail (não tem nada a ver com ele) e sim do anti-vírus que está usando. -- Godoy. ******************************************************************* De: sss Para: linux-br@bazar.conectiva.com.br Assunto: (linux-br) PROCMAILRC - problemas com users /bin/false (sem bash) Data: 07 Jan 2003 14:49:56 -0300 Olá pessoal Baseado nas excelentes dicas sobre procmail em http://www.uwasa.fi/~ts/info/proctips.html montei algumas regras no nosso servidor, sendo uma delas abaixo descrita. LOGANEXOS=/var/mail/loganexos # Barra alguns anexos que podem conter virus == filtro *3* === :0 B * filename=.+\.(exe|com|bat|pif|lnk|scr|js|scr|vbs|dll) { # Cria um copia carbono, que eh passada ao formail. # O formail gera cabecalhos de reply, que concatenado # com o /etc/procmail.anexo.msg, gera uma mensagem que é passada # ao agente SMTP, no caso o sendmail. # :0 c |(formail -r -i"From:antivirus"; \ cat /etc/procmail.anexo.msg)|$SENDMAIL -oi -t :0 fhw | echo "===== Filtro *3* ${LOGNAME} Barra anexos =====" ; \ echo ; cat - :0: ${LOGANEXOS} # copia do e-mail } No caso, o remetente recebe uma mensagem de antivirus@servidor com o conteúdo de /etc/procmail.anexo.msg dizendo que a msg não foi recebida pelo destinatário, bla bla bla... E além disso ele faz uma cópia da msg em /var/mail/loganexos. Isso funciona perfeitamente para usuários que possuem shell no sistema. Mas dá problemas para usuários que no /etc/passwd estão como /bin/false. Acredito que tenha a ver com os comandos do sistema que são executados como cat ou echo. Alguém pode me dar uma ajuda como fazer o procedimento descrito acima. Ou seja: quando receber um anexo proibido o sendmail mande uma msg de volta altertando que a mensagem não foi entregue por conter o anexo proibido. Importante: quero que meus usuários continuem com /bin/false. Muito Obrigado ******************************************************************* De: Vini Para: Rauklei P.S.Guimarães Cc: Linux-br Assunto: Re: (linux-br) PROCMAIL mensagem de cota excedida... Data: 29 Jan 2003 00:42:38 -0200 Não tem nada criado só cota de disco mesmo, e a responsabilidade de gravar a mensagem no disco é do procmail, e consequentemente a mensagem que volta dizendo que a quota exedeu é dele pra quem enviou. Até mais Vini ----- Original Message ----- From: "Rauklei P.S.Guimarães" To: "Vini" Cc: "linux-br" Sent: Tuesday, January 28, 2003 10:20 PM Subject: Re: (linux-br) PROCMAIL mensagem de cota excedida... On Tue, 28 Jan 2003 11:07:46 -0200 Vini wrote: > Oi pessoal, > > Ser? que por acaso alguem sabe, personalizar a mensagem de quota > excedida que o procmail manda de volta pro cara que envio a mensagem > se a quota do destinatario tiver no limite. > > Agrade?o qualquer dica. > > Acho que há um engano aí, pois quem "trata" as cotas é o seu MTA, que trabalha em conjunto com o procmail para redirecionar o e-mail. A não ser q vc criou uma regra no procmail para testar o tamanho do e-mail que está sendo enviado para o usuário no momento, mas aí o termo adequado é o filtro e não cota ;-) []'s -- Rauklei P.S. Guimaraes ******************************************************************* De: Jorge Godoy Para: Helvécio Lopes Teixeira Cc: linux-br@bazar.conectiva.com.br Assunto: Re: (linux-br) Resposta Automática Data: 12 Feb 2003 22:41:15 -0200 "Helvécio Lopes Teixeira" writes: > Estou fazendo filtragem de mensagens com o procmail e queria > implementar a respota automática. Por exemplo, sempre q recebo uma man procmailex ******************************************************************* De:  sss Para:  mjurevicius@ig.com.br, linux-br@bazar.conectiva.com.br Assunto:  (linux-br)Re: procmail Data:  Fri, 11 Jul 2003 17:17:39 -0300 Este eu acho excelente: http://www.uwasa.fi/~ts/info/proctips.html tem esses tb: http://www.iki.fi/era/procmail/mini-faq.html http://www.gl.umbc.edu/~ian/procmail.html --- Marcelo wrote --- Date: Fri, 11 Jul 2003 09:16:51 -0300 From: "Marcelo" Subject: (linux-br)procmail To: "Lista Linux" Message-ID: <001c01c347a6$4f5d8ca0$0e0110ac@cdc.com.br> Content-Type: text/plain; charset="iso-8859-1"  Estou precisando de um site que tenha bastante documentação sobre o  procmail com sendmail.... preciso criar umas regras mais específicas pois as  mais comuns eu já testei. ******************************************************************* De:  Flavio Villalva Civatti Responder-a:  Flavio Villalva Civatti Para:  JOV Cc:  linux-br@bazar2.conectiva.com.br Assunto:  Re: (linux-br)Pra quem manja de procmail Data:  Fri, 18 Jul 2003 07:49:49 -0300 (BRT) On Thu, 17 Jul 2003, JOV wrote: [...] > Como eu posso fazer pra os emails que estiverem no arquivo liberados passar > pelo blockmail2.pl por exemplo? [...]   Use a flag "A": do man procmailrc: =============================8<--------------------------------------       A    This  recipe  will  not  be executed unless the conditions            on the last preceding recipe (on the current block-nesting            level) without the `A' or `a' flag  matched as well.  This            allows you to chain actions that depend on a common            condition. =============================8<--------------------------------------   Veja também o man procmailex.   Sds. ====================================================================== Flavio Villalva Civatti  |PETROBRAS doesn't necessarily| \|/ ,,,, \|/ Av ACM 1113 s/416, Pituba|    know, understand,        |  @~/ o0 \~@ Salvador, Bahia, Brasil  |  or agree with my opinions! | /_( \ _/ )_\ +55-71-3503677 (work)    |                             |    \ _U_/ jgs --------------------------------------------------------------------------- ******************************************************************* De:  sedrez@tecgraf.puc-rio.br Para:  JOV Cc:  linux-br@bazar2.conectiva.com.br Assunto:  RE: (linux-br)Pra quem manja de procmail Data:  Fri, 18 Jul 2003 20:36:33 -0300 (BRT) On 17-Jul-2003 JOV wrote: >:0 H > * ? formail -x"To" -x"Cc" -x"Bcc" -x"BCC" -x"Delivered-To:" \ >     | egrep -isv -f /etc/procmail.d/liberados > { >         :0 HB >         * ! ? /etc/procmail.d/blockmail.pl >         { >           :0 >           /var/log/refused-mail >         } > } > > > Ou seja, os emails que estiverem no arquivo liberados, nao passarao pelo > blockmail.pl > Como eu posso fazer pra os emails que estiverem no arquivo liberados > passar > pelo blockmail2.pl por exemplo? Rio de Janeiro, 18-Jul-2003 Acrescente outra regra: :0 HB * ! ? /etc/procmail.d/blockmail2.pl {         :0         /var/log/refused-mail2 } depois das que vocj ja tem. O procmail vai seguir todas ati encontrar o "match" que permita entragar a mensagem (a menos que vocj acrescente o flag "c" na regra, neste caso ele continua nas regras seguintes). ----- Paulo F. Sedrez Diretor Presidente ******************************************************************* De:  Marcelo Para:  Lista Linux Assunto:  (linux-br)procmail Data:  Tue, 22 Jul 2003 10:17:31 -0300 Gostaria de saber se alguém já passou por um problema parecido ... Tenho a seguinte regra criada no procmail : :0 HB * ^[Ff]rom.*teste@dominio.com.br * ^.*filename=.*\.(ppt|pps|zip|vbs|js|exe|bat|wmv|mpeg|mpg|avi|mov|qiv|asf|mpe )         | ($FORMAIL -r ; cat /etc/procmail/to_sender.txt) | $SENDMAIL -oi -t -fFulano Onde tudo que vier de teste@dominio.com.br contendo as extenções acima sera descartado ...porém a pessoa ira receber uma notificação que o e-mail não poderá ser entregue .... Essa regra chegou até funcionar porém não sei o porque esses dias apareceu o seguinte problema : procmail: Error while writing to " ($FORMAIL -r ; cat /etc/procmail/to_sender.txt) | $SENDMAIL -oi -t -fFulano" Alguém já passou por algo parecido ??? Grato marcelo ******************************************************************* De:  Paulo Condutta Para:  seguranca@distro.conectiva.com.br Assunto:  [seguranca] Procmail analizando corpo da mensagem Data:  Fri, 1 Aug 2003 06:09:14 -0700 (PDT) blz, Como  posos faze rpara meu procmail analizar e filtrar o corpo da mensagem bloqueando links web que apontem para arquivos executavies em sites tipo www.xxx.com.br/virus.exe ? eu adicionei em minha regra do procmail :0B * *.exe /var/spool/mail/junkmail Mas ele pega tanto mensagens vom links para arquivo sexecutaveis .exe como tambem paravras que contenham exe como executivo. Como posos fazer ele reconhecer apenas a arquivos exe ? Abraços ******************************************************************* De:  sss Para:  diniz@unesc.rct-sc.br Cc:  linux-br@bazar.conectiva.com.br Assunto:  Re: (linux-br) Barrar e-mai's com anexos comextensãopif scr e outros Data:  Mon, 4 Aug 2003 17:25:05 -0300 Olá Diniz, On Thu, 2003-07-31 at 21:11, Diniz Alexandre Daminelli wrote: > possuo um servidor de e-mail, no qual está rodando o sendmail; gostaria de > barrar e-mail's com anexos do tipo: > .pif > .scr > .bat > e outros. Eu uso procmail pra fazer esse filtro. Na realidade estudei procmail e criei uma série de regras em cima dele (para nosso caso). Um tutorial prático de tutorial, com dicas encontra-se em: http://www.uwasa.fi/~ts/info/proctips.html#flist Aqui está a regra que tu precisas. SHELL=/bin/bash LOGANEXOS=/var/mail/loganexos # Descarta emails gigantes ou com extensoes duvidosas mandando uma resposta ao remetente :0 HB # Procura por name= ou ename= #para pegar filename, poderia tb ser * [file| ]name= #seguido de ponto ou =2E que é o código do ponto #seguido da lista de extensões # terminado por " ou $ ou ?= # observe que tudo a seguir eh numa linha só, até o { que está na nova linha. * [e| ]name=.+(\.|=2E)(exe|com|bat|pif|lnk|scr|js|vbs|dll|shs|chm|hta|isn|ade| adp|cmd|cpl|crt|eml|hlp|inf|ins|isp|jse|mdb|mde|msc|msi|msp|mst|pcd|reg|sct| url|vb|vbe|wsc|wsf|wsh|htt|mp3|wma|wmv|wav|ra|avi|mpg|mpeg|mov|rm|asf|pps|pp t)("|$|?=)         {         # Cria um copia carbono, que eh passada ao formail.         # O formail gera cabecalhos de reply, que concatenado         # com o /etc/procmailrc.anexo.msg, gera uma mensagem que é passada         # ao agente SMTP, no caso o sendmail.         #         :0 c         |(formail -r -i"From:antivirus.pmnh"; \                 cat /etc/procmailrc.anexo.msg)|$SENDMAIL -oi -t         # loga os e-mails que são descartados, se alguem reclamar tem como trazer de volta         :0 c:         ${LOGANEXOS}         # descarta         :0         /dev/null         } #Caso contrário, joga na caixa postal do usuário :0: ${DEFAULT} Espero que tenha sido útil. ******************************************************************* De:  sss Para:  rimeson@admed.com.br, linux-br@bazar2.conectiva. Assunto:  Re: (linux-br)barra e-mail com procmail Data:  Fri, 5 Sep 2003 16:21:02 -0300 Olá Rimeson Fiz todas as regras aqui em procmail, já faz um par de anos então estou meio enferrujado pra fazer regras novas mas acho que isso aqui funciona pra ti. Recomendo que teste bem. Qualquer problema me avisa que eu te ajudo. cria um arquivo no /etc chamado procmailrc # ls -la /etc/procmailrc -rw-r--r--    1 root     root        12852 Ago 24 10:14 procmailrc o conteúdo do procmailrc é o seguinte ###  inicio do procmailrc SHELL=/bin/bash # regra 1 : vem de um ip interno (192.168. ...) entao joga na caixa do usuario # Troque 192.168 para o seu caso :0: * ^Received: from[ ].*\[192\.168\. $DEFAULT #A partir daqui o e-mail vem de ip externo pq a regra 1 pegou os internos # regra 2: vem de fora e para lista@dominio.com.br entao discarta (/dev/null) :0 * ^TO_lista@dominio.com.br|\   for[ ]*lista@dominio.com.br /dev/null ###  Fim do procmailrc Rossano Prefeitura de Novo Hamburgo - RS Date: Thu, 4 Sep 2003 17:43:28 -0300 From: "Rimeson Cardoso" Subject: (linux-br)barra e-mail com procmail To: "Lista" Message-ID: <01a301c37325$34529f40$4469a8c0@pisuporte001> Content-Type: text/plain; charset="iso-8859-1"                              Ola pessoal tenho um servidor de e-mail com sendmail e amavis ,so que existe um alias que é comum a todos os usuarios do tipo lista@dominio.com.br que contempla todos os e-mails da empresa, como posso barrar mensagens de fora para dentro para esse alias "email" com o procmail ou qualquer outro utilitario. Se possivel manden exemplos ******************************************************************* De:  Jorge Godoy Para:  Leonardo Lemos Cc:  Linux - BR Assunto:  Re: (linux-br)Regras de envio de e-mail (duvida) Data:  Fri, 26 Sep 2003 10:06:02 -0300 Leonardo Lemos writes: > a minha pergunta e: > qual software (tanto em linux ou windows) eu uso para resolver este > problema (de preferencia free) de regras de reevio de e-mail segundo o > campo assunto? Para o Windows sugiro um contato com o suporte da Microsoft ou alguém que preste serviços nesta área. Para o Linux há dezenas deles, sendo o procmail o meu favorito e um dos mais poderosos. -- Godoy.     ******************************************************************* De:  sedrez@tecgraf.puc-rio.br Para:  Leonardo Lemos Cc:  Linux - BR Assunto:  RE: (linux-br)Regras de envio de e-mail (duvida) Data:  Fri, 26 Sep 2003 20:52:59 -0300 (BRT) On 25-Sep-2003 Leonardo Lemos wrote: > qual software (tanto em linux ou windows) eu uso para resolver este > problema (de preferencia free) de regras de reevio de e-mail segundo o > campo assunto? Rio de Janeiro, 26-Sep-2003 procmail Você pode escrever quantas regras você quiser, por quantos e quaisquer campos quiser, mandando para quantas pessoas quiser, de quantas contas quiser. BTW, se eu entendi direito, você consulta com Outloko via POP, certo? Para pegar e-mails periodicamente, você pode usar o fetchmail no cron. ----- Paulo F. Sedrez ******************************************************************* De:  Jorge Godoy Para:  Felipe Piccirilo Cc:  Linux-br maillist Assunto:  Re: (linux-br)Procmail + Sendmail Data:  Fri, 03 Oct 2003 11:50:41 -0300 Felipe Piccirilo writes: > Porém, quando o campo "To" possui vários destinatários para o meu > próprio domínio e consequentemente para meu servidor onde fica este > procmailrc, o SENDMAIL gera a quantidade de e-mails equivalente aos > destinatários e cada um destes e-mails passam pelo procmailrc e são > encaminhados um a um. O sendmail deve ter uma opção para configurar isso. Como e onde fazer deve ser consultado na documentação do sendmail, mas deve haver alguma macro m4 a ser adicionada ao seu arquivo '.mc' que resolve este problema. O uso de lmtp também é uma alternativa, mas pode não atender a todas as tuas necessidades... > Ja tentei alterar o cabeçalho, marcar X-Loop porém acredito que o > procmail trabalhe apenas após o envio do sendmail e como o sendmail > envia uma cópia para cada destinatário "To:" isto não poderia ser > controlado pelo procmail. Isto é fato???? Sim, é. A mensagem é tratada individualmente e isso é uma fonte constante de repetições de mensagens para regras feitas sem muito cuidado. > exemplo da minha regra: > > :0 >  * ^From.*fpiccirilo@terra.com.br >  * ^(Cc):.*joao@dominio.com.br >  * !^X-Loop: antispam@dominio.com.br >  | formail -A "X-Loop: antispam@dominio.com.br" \ >  | $SENDMAIL -oi outrousuario@terra.com.br Parece-me que há maneiras melhores de implementar isso sem o uso do procmail... Mas, não sei o que você deseja fazer exatamente. Reencaminhar mensagens para outros servidores pode ser feito mais eficientemente com o uso de aliases. Sds, -- Godoy.     ******************************************************************* De:  Paulo R.B Oliveira Para:  linux-br@bazar.conectiva.com.br Assunto:  (linux-br)Duvida s/ procmail Data:  Tue, 23 Sep 2003 16:31:50 -0300 Ola pessoal Depois de ler os man e de algumas consultar eu criei uma regra no procmail para filtrar as extensoes que geralmente contem virus das mensagens que entram e saem do meu servidor postfix. Acontece que ele só esta filtrando as que chegam, as que saem não são capturadas. Eu fiz algo errado? Ou falta alguma coisa? As minhas regras sao assim:  --------------------------------------------------------------------  :0 HB  * ^(X-Original-|Delivered-)?(To|Cc|Cco):.*(compra)@amy.com.br  * .*filename=".*\.(gif|jpg|exe|vbs|shs|com|pif|bat|scr|pps|mpg|mpeg)"  {    :0 hc     /var/spool/procmail/tmp.`date "+%Y%m%d"`     :0 hc     | (\     formail -r \     -i"From:${LOGNAME}" \     -i"Subject: Email recusado pelo recebedor..." ;\     cat /etc/email.msg; \     echo "---------- MENSAGEM ORIGINAL --------------------------" ;\     head -100 /var/spool/procmail/tmp.`date "+%Y%m%d"` \     ) | $SENDMAIL -oi -t ; \     rm -f /var/spool/procmail/tmp.`date "+%Y%m%d"`     :0:     /dev/null  } #           ---------------------------------- :0 HB * ^From.*(compra|cobranca)@axial.inf.br * .*filename=".*\.(mmm|lnk|gif|jpg|exe|vbs|shs|com|pif|bat|scr|pps|mpg|mpeg)" {   :0 hc    /var/spool/procmail/tmp.`date "+%Y%m%d"`    :0 hc    | (\    formail -r \    -i"From:${LOGNAME}" \    -i"Subject: Email nco enviado" ;\    cat /etc/virus1.msg; \    echo "" ; \    echo "---------- MENSAGEM ORIGINAL --------------------------" ;\    echo "" ; \    head -100 /var/spool/procmail/tmp.`date "+%Y%m%d"` \    ) | $SENDMAIL -oi -t ; \    rm -f /var/spool/procmail/tmp.`date "+%Y%m%d"`    :0:    /dev/null }  ------------------------------------------------------- Como eu faria para bloquear as que SAEM (sao enviadas) pela conta "compra" ? Outra coisa, essa regra nao esta conseguindo executar os comandos head e rm, no log do  procmail ele diz:  head: /var/spool/procmail/tmp.20030922: Permission denied  rm: cannot unlink `/var/spool/procmail/tmp.20030922': Permission denied  o arquivo tmp+date é gravado como "root mail" (dono e grupo) e  permissao rw  apenas para o dono.  Alguma luz?  Grato e abraços..  Paulo ******************************************************************* De:  sss Para:  Fábio Augusto , linux-br@bazar2.conectiva. Assunto:  Re: (linux-br)Problemas com procmail Data:  Mon, 1 Mar 2004 12:32:23 -0300 Documentação (dicas) sobre procmail no primeiro link abaixo http://www.uwasa.fi/~ts/info/proctips.html http://www.xs4all.nl/~rsmith/spamblock.html ----- Original Message ----- From: "Fábio Augusto" > Bom Dia pessoal, acabei de instalar o procmail > onde posso encontrar uma boa documentacao a respeito dele... ******************************************************************* De:  Marcelo Vivan Borro Para:  Listas Inter.Net Cc:  linux-br@bazar.conectiva.com.br Assunto:  Re: (linux-br) Procmail bloqueando extensões Data:  Tue, 16 Mar 2004 20:20:15 -0300 Dê uma olhada no blockmail http://www.ppgia.pucpr.br/~maziero/pesquisa/seguranca/blockmail/ Marcelo Vivan Borro Listas Inter.Net escreveu: Pessoal, estou usando a seguinte regra no meu > /etc/procmailrc > > :0 B > * filename=.+\....\.(pif|com|exe|bat|lnk|scr|vbs) > /dev/null > > Mas a mesma não esta funcionando... como eu posso > efetuar esse bloqueios ? > Alguém pode me indicar uma boa regra para o procmail ? > ******************************************************************* De:  Prefeitura de Novo Hamburgo Para:  linux-br@bazar2.conectiva. Assunto:  Re: (linux-br) Procmail bloqueando extensões Data:  Wed, 17 Mar 2004 17:40:44 -0300 Eu uso mais ou menos assim (tirei outras coisas pra ficar inteligivel) e funciona # Barra extensoes de virus :0 HB * [e| ]name=.+(\.|=2E)(exe|com|bat|pif|lnk|scr|js|vbs|dll|dot)("|$|?=)             /dev/null > Já olhei esse link, eu queria algo menos complexo > :-) > > Mas muito obrigado. > > -Carlos >:0 B >* filename=.+\....\.(pif|com|exe|bat|lnk|scr|vbs) >/dev/null ******************************************************************* De:  Jorge Godoy Para:  Marcelo Melli Cc:  Lista Linux Assunto:  Re: (linux-br) Só usuário root recebe e-mail no sendmail... Data:  Fri, 03 Oct 2003 20:01:36 -0300 "Marcelo Melli" writes: > procmail: Error while writing to "/var/spool/mail/marcelo" > 550 5.0.0 "Marcelo" ... Can't create output > > Alguem sabe me falar como resolvo isso? Dê ao procmail permissões suficientes para criar o arquivo. Ou altere as permissões da pasta (preferível) de forma que ele consiga fazê-lo. -- Godoy.     ******************************************************************* De:  Thiago Macieira Para:  linux-br@bazar2.conectiva.com.br Assunto:  Re: (linux-br)Procmail Maiuscula Vs Minuscula Data:  Tue, 20 Jul 2004 20:39:21 -0300 -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 gustavo@disal.com.br wrote: >Blz galera, tipo no procmail tenho essa regra > * >.*filename=".*\.(exe|vbs|shs|com|pif|bat|scr|dat|cdr|pdf|arj|zip|avi|m >pg|mpe g|mid|wav|mp3|dbf|mdb|ini|cfg|lnk|pps)" > >  mas se o email vem com arquivo tipo rrrrr.Exe ou rrr.EXE passa tem > como ele não diferenciar maiuscula de minuscula? man procmailrc: [...]        D    Tell  the  internal  egrep  to distinguish between upper and lower             case (contrary to the default which is to ignore case). [...] O padrão é ignorar caixa. - --   Thiago Macieira  -  Registered Linux user #65028    thiago (AT) macieira (DOT) info     ICQ UIN: 1967141   PGP/GPG: 0x6EF45358; fingerprint: ******************************************************************* De:  Leonardo Giantini Trabuco Para:  linux-br@bazar2.conectiva.com.br Assunto:  Re: (linux-br)Redirecionamento de emails Data:  Thu, 2 Sep 2004 09:03:57 -0300 » Juscelino (HCS) escreveu: > Estou com um pequeno problema para redirecionar os email's baixados via > fetchmail + procmail.... > o redirecionamento esta funcionando legal, mas quando alguem manda uma > mensagem > com o Cc Tipo > > To:  vendas@dominio.com.br > Cc: fernanda@dominio.com.br > > o procmail apenas esta redirecionando a mensagem para 1 das pessoas no caso > aqui a fernanda..... a outra não recebe.... essas são as regras: > > LOGFILE=/var/log/procmail.log > DEFAULT=/var/spool/mail/fernanda > :0c: > * ^(To|Cc).*vendas@dominio.com.br* > /var/spool/mail/junior > > :0c: > * ^(To|Cc).*fernanda@dominio.com.br* > /var/spool/mail/fernanda Eu chuto que a fernanda tá recebendo o e-mail porque é o "default" (ou ela tá recebendo duas cópias deste e-mail? isto é o que deveria acontecer...) Se possível, liga o verbose do procmail com a linha: VERBOSE=on e manda uma mensagem como a acima. Aí você manda pra lista o log da entrega desta mensagem (em /var/log/procmail.log). Este procmail tá rodando na conta da fernanda, certo? Talvez ela não tenha permissão de escrita no arquivo /var/spool/mail/junior ? Só algums detalhes sem importância: - quando você coloca o "*" no final da sua expressão regular, você *não*   está buscando por "qualquer coisa", e sim está buscando por "zero ou   mais caracteres 'r'" - os pontos (".") em dominio.com.br estão buscando qualquer caractere, e   não um ponto (sim, isso não vai fazer diferença, mas formalmente o que   você quer é "domino\.com\.br" Leo ******************************************************************* De:  claudio@conectiva.com Para:  {*GSN*} Cc:  Linux-br Assunto:  Re: (linux-br)Barrar no Procmail por texto na tag Data:  Thu, 16 Sep 2004 13:59:30 -0300 (BRT) On Thu, 16 Sep 2004, {*GSN*} wrote: > > > :0B: > * .*.ibn*.info* > /dev/null Verifique a expressão regular. Não parece estar correta, e não casa com a string da URL. Note que ".*." não tem significado, é a mesma coisa que ".*". A sua expressão diz que só tem um caracter entre ibn[nnn...] e info[ooo...]. ******************************************************************* De:  Thiago Macieira Para:  linux-br@bazar2.conectiva.com.br Assunto:  Re: (linux-br)Procmail usando whitlist Data:  Wed, 29 Sep 2004 10:35:32 -0300 -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 {*GSN*} wrote: >Senhores estou tentando criar uma regra que barre qualquer mensagem que >venha de um endereço diferente do que esteja dentro de um arquivo >"whitlist.pl", minhas tentativas deram nisto, porém sem sucesso. > >-------------------------------------------------------- > >:0 > >* ^To:.*teste@meudominio.com.br >        { :0 >          * !^From:*[/home/teste/whitelist.pl] >          /dev/null >        } >--------------------------------------------------------- > >alguém pode dizer onde estou errando? [/home/teste/whitelist.pl] não faz a leitura desse arquivo. Nesse contexto, isso significa que ele rejeita uma mensagem quando ela tiver uma linha no formato:         linha começa por "From"         seguido de zero ou mais ":"         seguido de um caracter entre os seguintes: "ehilmopstw/." O procmail não faz leitura de arquivos. - --   Thiago Macieira  -  Registered Linux user #65028    thiago (AT) macieira (DOT) info     ICQ UIN: 1967141   PGP/GPG: 0x6EF45358; fingerprint:     E067 918B B660 DBD1 105C  966C 33F5 F005 6EF4 5358 ******************************************************************* De:  Jorge Godoy Para:  Thiago Macieira Cc:  linux-br@bazar2.conectiva.com.br Assunto:  Re: (linux-br)Procmail usando whitlist Data:  Wed, 29 Sep 2004 11:14:35 -0300 Thiago Macieira writes: > O procmail não faz leitura de arquivos. Mas ele permite a execução de outros processos que podem fornecer as regras de processamento necessárias.  A página de manual procmailex(5) fornece mais informações e dá exemplos.  -- Godoy.     ******************************************************************* De:  Brunhara Para:  {*GSN*} Cc:  Linux-br Assunto:  Re: (linux-br)Procmail usando whitlist Data:  Wed, 29 Sep 2004 14:15:33 -0300 no final deste artigo ele mostra como usar o shell e alguns comando externos. http://www.inf.ufrgs.br/~elgios/procmail.html ******************************************************************* ********************************************************************* De: Rimeson Cardoso Para: Lista Assunto: (linux-br) Barrar Anexos Data: 09 Oct 2002 12:14:07 +0100 Ola pessoal da lista para quem quer barrar anexos com procmail acesse esse link que lá tem um programa em perl otimo para anexos. Blockmail: http://www.ppgia.pucpr.br/~maziero/seguranca/blockmail Ate + ATC; Rimeson Cardoso ******************************************************************* De:  Thiago Macieira Para:  linux-br@bazar2.conectiva.com.br, nod3vic3@yahoo.com.br Assunto:  Re: (linux-br)Ajuda com regra no procmail Data:  Thu, 9 Dec 2004 12:45:05 -0200 -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 Leandro wrote: ># ---- Inicio ---- > >:0: > >* ^X-Spam-Status: Yes >! suportemh@meuprovedor.com.br > ># ---- Fim ---- > >Gostaria de deixar que a mensagem fosse entregue >normalmente para o usúario pois o AntiSpam está em >fase de testes e eu não quero ter que encaminhar toda >mensagem que foi considerada como Spam que não é, para >o usuário que ela era destinada, caso isso seja >necessário. Basta tirar a regra que a mensagem passa a ser entregue normalmente. Se você quer que ela seja entregue para ambos, adicione a opção 'c' na linha do :0. E, sim, isso estava no procmailrc(5). Dica: há muitos exemplos no procmailex(5): man procmailex - --   Thiago Macieira  -  Registered Linux user #65028    thiago (AT) macieira (DOT) info ******************************************************************* De: Jorge Godoy Para: Cpd da Aesc Cc: linux-br@bazar2.conectiva.com.br Assunto: Re: (linux-br) Spamassasin+procmail+postfix redirecionar e-mails bloqueados Data: 09 May 2005 14:03:49 -0300 "Cpd da Aesc" writes: > EX: o e-mail é para joao@dominio.com.br foi considerado ****SPAM**** pelo > spamassassin, preciso que ele seja entregue para spam@dominio.com.br, o > joao@dominio.com.br neste caso não ira saber de nada, nem mesmo que recebeu um > e-mail de spam. man procmailex Copie um dos exemplos que lidam com o cabeçalho "Assunto" (Subject é o nome que você deve usar) da mensagem. Obviamente isso só vai funcionar se você modifica o assunto da mensagem adicionando a indicação de spam. Recomendo, entretanto, que o usuário seja notificado e possa verificar a mensagem de alguma maneira para você evitar problemas com falsos-positivos. -- Jorge Godoy ******************************************************************* De: Marcelo Responder A: Marcelo Para: linux-br@bazar2.conectiva.com.br Assunto: Re: (linux-br)Bloquear anexos por usuario Data: Thu, 20 Oct 2005 13:11:34 -0300 ola Jose Carlos Aqui eu tenho uma politica por anexos e infelizmente nao tenho como testar, mas acho que voce pode tentar algo assim: :0: * filename=.*(.exe|.pif|.zip|.com|.bat|.pps|.vbs) * ! ^To.*teste@teste /home/root/INBOX/Recusados :0: * filename=.*(.exe|.pif|.zip|.com|.bat|.pps|.vbs) * ^To.*teste@teste /dev/null Se funcionar a primeira regra movera os arquivos para a pasta recusado a menos que a no campo To esteja o email mencionado. A segunda regra apaga a mensagem. Eu nao tenho como testar isso agora, entao nao sei se vai funcionar. Faca um backup do arquivo procmailrc antes de alterar. Teste e comente se funcionou, ok? Vai comentando que a gente vai vendo Boa sorte Abraços ******************************************************************* De: Valcir Borges Para: Linux-BR Assunto: Re: (linux-br) servidor de email Data: Tue, 17 Apr 2007 15:11:36 -0300 > Gostaria de saber de vcs se existe alguma solução pro seguinte caso, > tenho servidor de email recebendo mensagem com os usuarios acessando via > IMAP, quero que cada mensagem que o servidor receba entregue > imediatamente ao usuario e uma copia va para outro lugar definido para > auditoria da direção. Boa tarde João, até vc por aqui? lembra de mim? eu lembro de vc! Isso vc faz no /etc/procmailrc para todo o sistema, algo como assim: :0 * ^From.* * ^Subject:.* { :0 c ! contadirecao@brupi.com } Para cada e-mail que chegar o procmail vai salvar uma cópia na conta acima. Abraço. Valcir. ******************************************************************* ******************************************************************* ******************************************************************* *******************************************************************