Aceitar todos os e-mails de um domínio (de qualquer lugar), encaminhar e-mails para destinatários selecionados para endereços específicos, retransmitir todo o restante para um host específico

1

O que eu quero fazer é configurar um servidor sendmail que aceite mensagens de todos para um domínio específico (digamos, example.com ), depois uma lista de destinatários definidos envia esses e-mails para endereços de terceiros específicos e retransmissões tudo o mais em um endereço IP específico.

Eu tentei isso:

[root@splitter mail]# cat relay-domains 
example.com
[root@splitter mail]# cat virtusertable
[email protected]  [email protected]

e o encaminhamento da maior parte do domínio funciona bem - é entregue ao host especificado pelo MX de example.com - mas a exceção ( [email protected] ) é ignorada

Eu tentei isso:

[root@splitter mail]# cat local-host-names 
example.com
[root@splitter mail]# cat mailertable
example.com      esmtp:[1.2.3.4]
[root@splitter mail]# cat virtusertable
[email protected]  [email protected]

e, em seguida, o email de exceção é dividido corretamente, mas qualquer outro usuário é devolvido localmente ( User unknown ). Eu tentei adicionar isso a virtusertable :

@example.com           %[email protected]

mas (provavelmente sem surpresa) isso resulta em rewrite: excessive recursion (max 50), ruleset canonify erros.

Eu preferiria soluções baseadas no sendmail, porque eu posso tentar rapidamente. Se eu não tiver sorte com isso, vou abrir isso para outros MTAs. Se alguém tiver alguma ideia sobre como fazer isso, eu realmente aprecio isso.

    
por MadHatter 12.11.2015 / 14:09

1 resposta

2

Vamos tentar isso:

# Assuming example.com is in $=w
LOCAL_RULE_0
Ruser1 < @ example.com. > $*    $@ newuser1 < @somewhere.com. > 
Ruser2 < @ example.com. > $*    $@ newuser2 < @somewhereelse.com. > 
R$* < @ example.com. > $*    $#esmtp $@ [1.2.3.4] $: $1 < @ example.com. > $2

Naturalmente, isso não se adapta bem se você quiser torná-lo viável para mais de 10 usuários e você precisa fazê-lo funcionar com um mapa, mas deixei de ser um postmaster desde 5/2014 e estou um pouco enferrujado . Eu posso fazer isso funcionar com um mapa externo, se você quiser.

Como sempre, lembre-se de que, no seu sendmail.mc , o lado esquerdo de uma regra é separado do lado direito com guias e não espaços, portanto, não copie e cole . Lembre-se também de reconstruir seu sendmail.cf e testar usando sendmail -bt :

> 3,0 [email protected]

Se tudo funcionar como esperado, reinicie o sendmail.

    
por 12.11.2015 / 14:51