comandos de depuração virtusertable para o usuário root

comandos de depuração virtusertable para o usuário root

Estou no Solaris 5.11 executando o sendmail. Os nomes de usuário locais têm o formato <letras><números> (por exemplo, hn06511). No passado, usávamos aliases para apontar para <username>@olddomain.com.

<nome de usuário> <nome de usuário>@olddomain.com

Agora há um novo esquema de endereço de e-mail e um novo domínio. Agora os endereços de e-mail têm o formato <nome>.<sobrenome>@novodomínio.com.

Então mudei os aliases para:

<nome de usuário> <nome>.<sobrenome>@novodomínio.com

Isso funciona, mas <username>@olddomain.com não funciona mais. Para piorar a situação, existem muitos scripts com endereços de e-mail codificados no estilo antigo.

Então, quero alterar <nomedeusuário>@olddomain.com -> <primeironome><sobrenome>@newdomain.com. Achei que poderia usar virtusertables para fazer isso, então criei um virtusertable que contém:

@olddomain.com % 1

Supostamente, isso deveria pegar <anybody>@olddomain.com e encaminhá-lo apenas para o nome de usuário (%1). Eu esperava que os aliases que defini traduzissem <username> -> <firstname>.<lastname>@newdomain.com. Mas, pelo que posso ver, o sendmail está ignorando completamente essa virtusertable e tentando entregar para <username>@olddomain.com e, é claro, falhando.

AFAICT Formatei o virtusertable corretamente e executei o makemap (devo usar dbm ou hash? Já vi os dois). AFAICT Coloquei o FEATURE adequado e fiz o make e verifiquei se o sendmail.cf gerado está no lugar adequado. Eu vi FEATURE expresso como ambos

RECURSO( virtusertable',dbm -o /etc/mail/virtusertable')

e

RECURSO( virtusertable',hash -o /etc/mail/virtusertable')

Mas nenhum dos dois funciona.

Que tipo de depuração ou outras informações posso fornecer e tentar?

Desde já, obrigado.

Responder1

comandos de depuração virtusertable para o usuário root

Procure @oldomain.coma entrada em virtusertable

echo '/map virtusertable [email protected]' | sendmail -bt

Verifique se o sendmail verifica o virtusertable para endereços de e-mail olddomain.com

echo '3,0 [email protected]' | sendmail -d60.5 -bt

-d60.5rastreia pesquisas de mapas (também pesquisas virtusertable).


Mais dicas:

  1. m4espera outra cotação

    FEATURE(virtusertable,`hash /etc/mail/virtusertable')
    
  2. Não torne virtusertable opcional. Retire -oda FEATURElinha.
    Com -oo sendmail ignora a virtusertable ausente.

  3. Sendmail usa versão compilada do virtusertable. Use makemappara compilar virtusertable.

  4. virtusertable é consultado apenas para domínios de e-mail locais ( $=w) e $={VirtHost}domínios.

    Use o comando abaixo como root para obter as duas listas de domínios

    echo '$=w' | sendmail -bt
    echo '$={VirtHost}' | sendmail -bt
    

informação relacionada