A lista não aceita anexo então segue no corpo do e-mail
---------- authsender.pl -------------------
#!/usr/bin/perl
use Sys::Syslog qw(:DEFAULT setlogsock);
$syslog_socktype = 'unix';
$syslog_facility="mail";
$syslog_options="pid";
$syslog_priority="info";
$syslog_name="postfix/authsender";
sub get_domain {
my($email) = @_;
my($user,$domain);
($user, $domain) = split(/@/,$email);
return $domain;
}
sub smtpd_access_policy {
my($sasl_username, $sender, $sasl_domain, $sender_domain);
my $permite = 1;
$sender = $attr{"sender"};
$sender_domain = get_domain($sender);
$sasl_username = $attr{"sasl_username"};
$sasl_domain = get_domain($sasl_username) if $sasl_username;
syslog $syslog_priority, "Sender Domain %s", $sender_domain if $verbose;
syslog $syslog_priority, "SASL Domain %s", $sasl_domain if ($verbose
and $sasl_domain);
$permite = 0 if ($sasl_domain and ($sasl_domain ne $sender_domain));
if ($permite) {
return "dunno";
} else {
syslog $syslog_priority, "Não permitido %s => %s", $sasl_username,
$sender if $verbose;
return sprintf("REJECT Voce nao pode enviar e-mail como %s", $sender);
}
}
setlogsock $syslog_socktype;
openlog $syslog_name, $syslog_options, $syslog_facility;
while ($option = shift(@ARGV)) {
if ($option eq "-v") {
$verbose = 1;
} else {
syslog $syslog_priority, "Invalid option: %s. Usage: %s [-v]",
$option, $0;
exit 1;
}
}
select((select(STDOUT), $| = 1)[0]);
while (<STDIN>) {
if (/([^=]+)=(.*)\n/) {
$attr{substr($1, 0, 512)} = substr($2, 0, 512);
} elsif ($_ eq "\n") {
if ($verbose) {
for (keys %attr) {
syslog $syslog_priority, "Attribute: %s=%s", $_, $attr{$_};
}
}
$action = smtpd_access_policy();
syslog $syslog_priority, "Action: %s", $action if $verbose;
print STDOUT "action=$action\n\n";
%attr = ();
} else {
chop;
syslog $syslog_priority, "warning: ignoring garbage: %.100s", $_;
}
}
# FINAL DO SCRIPT
> Oi Amigo,
>
> O anexo não veio, pode reencaminhar ?
>
> Valeu
>
> Nilton
>
> 2012/4/23 <[email protected]>
>
>>
>> Olá Paulo,
>>
>> Obrigado pela dica, realmente eles reclamam bastante. Já tentei
>> algumas opções deste tipo no passado. Meu problema acaba se agravando
>> pois é um provedor de hospedagem e ai os clientes reclamam quando não
>> enviam por causa de bloqueio da reputação e reclamam quando tentamos
>> evitar o problema com limitações. Realmente usuários são complicados
>> demais.
>>
>> Uma vez consegui bastante efeito com o reject_sender_login_mismatch
>> mais causou problemas pois o cliente autentica como [email protected]
>> e manda o e-mail como [email protected] então tive que desabilitar.
>> Agora a solução que resolvi usar foi adaptar de um script perl para
>> greylist que achei para que faça uma checagem semelhante ao
>> reject_sender_login_mismatch porem validando dominio, ou seja a pessoa
>> autenticada pode mandar o sender como qualquer nome desde que seja o
>> mesmo dominio. Acredito que isto resolva meu problema.
>>
>> Ah pode parecer estranho adaptar meu script de um de greylist mais é
>> que
>> não sou programador perl então na verdade usei o script como exemplo
>> pois ja tentei criar algumas coisas em java ou mesmo em php e não gostei
>> da performance com o postfix e como parece que tudo que fazem para ele é
>> perl resolvi ver como fica.
>>
>> O script é simples e quem conhece de perl faz com a mão nas costas mais
>> para que quiser dar uma olhada coloquei ele em anexo.
>>
>> Para usar:
>>
>> na master.cf
>> authsender unix - n n - 0 spawn
>> user=nobody argv=/usr/bin/authsender.pl
>>
>> na main.cf
>> smtpd_recipient_restrictions = reject_unknown_recipient_domain,
>> check_policy_service unix:private/authsender,
>> permit_mynetworks,
>> permit_sasl_authenticated,
>> .......
>>
>> > Em 22 de abril de 2012 19:40, <[email protected]> escreveu:
>> >
>> >>
>> >> Olá a todos,
>> >>
>> >> Gostaria de uma sugestão de vocês pois meu problema na verdade não
>> é
>> >> o
>> >> spam recebido pelos meus clientes, preciso de uma forma eficiente de
>> >> bloquear o spam que eles enviam.
>> >>
>> >> O mais problema é que os vírus que estão na maquina de clientes
>> >> capturam suas senhas e mandam e-mails como um cliente válido então
>> >> mesmo meu servidor não sendo um openrelay ele acaba parando nas
>> listas.
>> >> Já tentei várias formas de bloqueio e tentei usar o spamassasim para
>> >> este tipo de bloqueio mais ele meio que confia por padrão nos
>> clientes
>> >> e não considera spam.
>> >>
>> >> Alguém tem alguma sugestão para resolver isto, já teve este tipo de
>> >> problema?
>> >>
>> >> Uma solução que já pensei é em fazer meu próprio processo de análise
>> e
>> >> injetar os e-mails via filter para isto mais criar um programa assim
>> >> para volume grande de e-mail requer muito teste para evitar atrasos
>> na
>> >> fila de e-mail.
>> >>
>> >> Se tiverem sugestão agradeço.
>> >>
>> >>
>> > Limita a quantidade maxima de envio por minuto/hora, se exceder
>> bloqueia
>> > o
>> > usuário.
>> > Quando o usuário for reclamar informe que a maquina dele possui
>> > virus/worms
>> > e que o mesmo tentou passar-se por ele para dissiminar spans, sugere
>> que
>> > seja realizado um procedimento de varredura na estação para que não
>> tenha
>> > mais problemas e que altere a senha.
>> >
>> > Um ou outro vai xingar mais nada que " Tudo bem Sr./Sra, assim que a
>> sua
>> > estação estiver livre de virus o usuário estará liberado".
>> > Passei por este problema em 2010, barrava a mensagem e só libero
>> quando
>> a
>> > estação estiver livre de problemas, foi indo que cancelaram o contrato
>> de
>> > manutenção, anegando um monte de coisa, para mim quanto menos
>> problemas
>> > melhor, contrato cancelado, mais depois de 1 mes, quando as mensagens
>> só
>> > estavam sendo taxadas como spam, vinheram atraz para que resolver, bom
>> > azar
>> > deles servidor novo.
>> >
>> >
>> >
>> >
>> >
>> > --
>> > :=)><(=:
>> > "O dia que não existir mais usuários de sistemas será o meu primeiro
>> dia
>> > realmente feliz"
>> >
>> > Flamers > /dev/null !!!
>> > _______________________________________________
>> > Postfix-BR mailing list
>> > [email protected]
>> > http://listas.softwarelivre.org/mailman/listinfo/postfix-br
>> >
>> _______________________________________________
>> Postfix-BR mailing list
>> [email protected]
>> http://listas.softwarelivre.org/mailman/listinfo/postfix-br
>>
>>
>
>
> --
>
>
> Att
> Nilton Cesar Corrêa
> _______________________________________________
> Postfix-BR mailing list
> [email protected]
> http://listas.softwarelivre.org/mailman/listinfo/postfix-br
>
_______________________________________________
Postfix-BR mailing list
[email protected]
http://listas.softwarelivre.org/mailman/listinfo/postfix-br