Não é possível alterar o endereço / domínio do remetente no sendmail

2

Eu tenho um servidor com o sendmail e preciso enviar um e-mail througt PHP. Eu tenho um servidor SMTP interno na mesma sub-rede, então eu configurei o sendmail com FEATURE( nullclient ', mail.server.local')dnl onde mail.server.local é resolvido com um IP interno em /etc/hosts

Não há como alterar o endereço e o domínio from . É sempre [email protected].

Mar 20 16:18:48 nameoftheserver sm-mta[16402]: v2KFImVi016402: from=<[email protected]>, size=406, class=0, nrcpts=1, msgid=<[email protected]>, proto=ESMTP, daemon=MTA-v4, relay=localhost [127.0.0.1]  

A saída de /etc/mail/sendmail.mc :

      (short domain name) $w = nameoftheserver  
  (canonical domain name) $j = nameoftheserver.localdomain.local  
         (subdomain name) $m = localdomain.local  
              (node name) $k = nameoftheserver

Como posso alterar esses valores?

    
por Kreker 20.03.2017 / 16:29

1 resposta

3

Então, você está tentando alterar o remetente do envelope (como a função mail() do PHP já manipula o endereço "De:") com o Sendmail. Isso pode ser conseguido através da construção de um banco de dados genericstable para mapear o endereço do remetente de entrada para o endereço desejado.

  1. Crie um arquivo de texto /etc/mail/genericstable contendo os mapeamentos,

    www-data       [email protected]
    root           [email protected]
    

    em que o primeiro valor é o nome de usuário original e o segundo valor é o endereço desejado. Ou, se isso não funcionar com o servidor do nó, o endereço do remetente original também pode estar no formato

    [email protected]  [email protected]
    
  2. Crie outro arquivo /etc/mail/generics-domains contendo os domínios, separados por nova linha. (Observe que o arquivo DEVE incluir o nome de domínio canônico do seu servidor.)

  3. Adicione as declarações correspondentes a /etc/mail/sendmail.mc :

    FEATURE('genericstable','hash -o /etc/mail/genericstable.db')dnl
    GENERICS_DOMAIN_FILE('/etc/mail/generics-domains')dnl
    
  4. Faça os procedimentos normais depois de reconfigurar o Sendmail, por exemplo

    cd /etc/mail
    /usr/bin/make
    /usr/bin/newaliases
    systemctl restart sendmail.service
    
por 20.03.2017 / 17:58