Postfix: o que exatamente são domínios alias?

8

Eu entendi "Alias domains" como se fosse simplesmente um alias para outro domínio! Portanto, quando eu configurar uma caixa de correio como "[email protected]" e adicionar "alias.com" como um alias de domínio para "main.com", o endereço "[email protected]" também funcionará ... Mas não !

Então, eu adicionei esses domínios:

  • main.com
  • alias.com

Eu criei esta caixa de correio:

Depois, mapeei esses domínios de alias:

  • alias.com = > main.com

E quando eu enviar um e-mail para [email protected], recebo este erro:

Recipient address rejected: User unknown in virtual mailbox table (state 13).

Não quero criar um alias para todos os domínios, pois tenho alguns. Eu também não quero usar um curinga (como info @ *) porque também há outros domínios que não são aliases de main.com

Então ... o que são exatamente?

    
por skerit 07.08.2012 / 23:55

4 respostas

4

A explicação está na documentação: link

Você quer "caixas de correio de alias", também conhecidas como virtual_mailbox_alias e virtual_mailbox_maps, mas fale sobre "alias domains": link

    
por 08.08.2012 / 00:21
7

Adicionar alias.com a virtual_alias_domains é o primeiro passo correto, mas isso apenas diz ao Postfix que você deseja usar esse domínio para os aliases. Não diz quais devem ser os aliases. Para isso, você precisa usar um mapa de alias virtual.

Primeiro, adicione algo assim a main.cf :

virtual_alias_domains = alias.com
virtual_alias_maps = hash:/etc/postfix/virtual

A adição de virtual_alias_maps fornece um arquivo ( /etc/postfix/virtual ) que é usado como um mapa de alias virtual. Mas o que você coloca nesse arquivo? De acordo com a página virtual (5) :

The input format for the postmap(1) command is as follows:

  pattern address, address, ...

When pattern matches a mail address, replace it by the corresponding address.

e

With lookups from indexed files such as DB or DBM, or from networked tables such as NIS, LDAP or SQL, each user@domain query produces a sequence of query patterns as described below. Each query pattern is sent to each specified lookup table before trying the next query pattern, until a match is found.

...

@domain address, address, ...

Redirect mail for other users in domain to address.

e

The lookup result is subject to address rewriting: When the result has the form @otherdomain, the result becomes the same user in otherdomain. This works only for the first address in a multi-address lookup result.

Portanto, colocar isso em /etc/postfix/virtual atingirá o alias de domínio completo desejado:

# map any <user>@alias.com to the matching <user>@main.com
@alias.com     @main.com

Então, como esse arquivo é uma tabela de hash, você precisa executar postmap ( explicação , manpage ):

postmap /etc/postfix/virtual

Você pode encontrar mais informações sobre domínios virtuais no HOWTO de domínio virtual do Postfix e sobre aliases no HOWTO de reescrita de endereços de postagens .

    
por 07.11.2016 / 19:12
1

@Josh M.

Não tenho ideia se este é o caminho certo e / ou boa prática, mas estou usando algo assim:

virtual_alias_maps = regexp:/etc/postfix/domain_rewriting pgsql:/etc/postfix/pgsql/     virtual_alias_maps.cf

$ cat /etc/postfix/domain_rewriting 
/^(.*)@domain1.com$/     ${1}@domain2.com
    
por 29.01.2015 / 19:01
1

Esta é a minha versão curta da resposta do @ sam-hanes (que funcionou para mim)

Em seu virtual_alias_maps adicione:

@from.domain <tab> @to.domain

Na linha de comando, faça:

 postmap /path/to/yourvirtualalismapsfile

No seu arquivo main.cf , adicione:

virtual_alias_domains : from.domain

virtual_alias_domains informa ao postfix que todos os endereços de caixa de correio que estão na forma de [email protected] são todos os aliases.

    
por 19.02.2017 / 14:17

Tags