Google reescreveu o Exim Mail como 'root @ empty'

2

Eu tenho um servidor Debian Jessie rodando o Exim 4, com a configuração do Gmail como o Smarthost. Se eu tentar enviar email com um endereço externo (por exemplo, [email protected]), tudo funcionará bem. Se eu enviar e-mails para root ou canadianluke (nomes de usuários locais), recebo duas mensagens: a mensagem que enviei e um e-mail que o Gmail gera automaticamente, dizendo que não pode entregar e-mails para root@empty . Estamos usando o Google Apps para organizações sem fins lucrativos.

O e-mail é enviado, por isso sei que não é totalmente o Exim4, mas não estou totalmente convencido de que seja inteiramente o GMail.

O comando que estou usando para enviar e-mails no meu terminal: mail root -s Test

Delivery to the following recipient failed permanently:

     root@empty

Technical details of permanent failure:
DNS Error: Address resolution of empty. failed: Domain name not found

----- Original message -----

DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=MYDOMAIN_COM.20150623.gappssmtp.com; s=20150623;
        h=from:to:subject:message-id:date;
        bh=YJWMysPl36audKpPjWIG/TOl/JVGuKuq1l4/HEAjxb8=;
        b=eIIQpLxw5TFAwnKw4P3gQpKlKbnf9I1PRpzfElBK4m+g+8cu/3z3hBFxMIMdV2Heli
         5CDCvVpaxbiqBJBcyeNnJubwyb8pir2CEnkiKaLJVJjTK3fZkpiI0KlTWkjilMnZeTLy
         SSzJdu437Bo2ONDY960+SX4cZtUE2p2fMcY7zhm8OTPWvXuDJ+DMoLVMuMfBfR+000dL
         ksNXGUD9teGOxYBV5a4c5/SPyeHXY++Pr8AOY+4lU9nt3OIocaozwMGfJOiV0MiiC4MZ
         w1UaXPjygFkzywsgjRbGyh483J0r4pS522fTUvz0qzAtMoIWmNOTCzAIulxxSQXb+hlp
         HG8Q==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20130820;
        h=x-gm-message-state:from:to:subject:message-id:date;
        bh=YJWMysPl36audKpPjWIG/TOl/JVGuKuq1l4/HEAjxb8=;
        b=gBolH/1kEUPQVIVrhMhtsOHaBHc9CIbEfqtAru5aJKSgoCst11qOUFQHC+tPrjVuhH
         s1JvVw7w6f05543JED9ak2SaQ5o5Iz6oWAkS3Z72MBwBaFlM144d/e4N64OYUG0Df4aR
         UDo/ryRdFOZ1WInOrTaoF9BWI/glLCtUPoadpqJ1utk74qEuZE4Ff3as/GjKAE5LXM3O
         Me27QYddAMMCdHi2DPtmkiM/3TosQjdaGv1QbGjk/ZS/q1HqdXCbZhjj65PwIiGDRxdk
         kw49ybPDjyoIFR5IzHM/vI7P3lC6LkXZq4zEgitBGuafwB52Luvl1jCTxUXZbLiODXko
         yDxQ==
X-Gm-Message-State: ALoCoQn4f0bfvp6Tk6pmiVZgxHs/bn8OVKale7+375O8j9UzvWgsYVSltXGIbvQQk5Fxi3DKGh5o
X-Received: by 10.140.94.116 with SMTP id f107mr417247qge.0.1447108430809;
        Mon, 09 Nov 2015 14:33:50 -0800 (PST)
Return-Path: <[email protected]>
Received: from example.com ([93.184.216.34])
        by smtp.gmail.com with ESMTPSA id 83sm102514qhw.27.2015.11.09.14.33.50
        for <root@empty>
        (version=TLSv1.2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128);
        Mon, 09 Nov 2015 14:33:50 -0800 (PST)
From: root <[email protected]>
X-Google-Original-From: root <root@empty>
Received: from root by example.com with local (Exim 4.84)
        (envelope-from <root@empty>)
        id 1Zvv0W-0006Lj-Tf
        for root@empty; Mon, 09 Nov 2015 17:33:48 -0500
To: root@empty
Subject: Sup
Message-Id: <[email protected]>
Date: Mon, 09 Nov 2015 17:33:48 -0500

Atualizar . Eu tenho que enviar e-mail novamente, mas está dando um novo erro. Eu adicionei meu nome de usuário em /etc/aliases para onde enviar e-mail como root e /etc/email-addresses está configurado para enviar e-mail destinado a minha conta de e-mail normal ([email protected]).

# more exim4/update-exim4.conf.conf
dc_eximconfig_configtype='smarthost'
dc_other_hostnames=''
dc_local_interfaces='127.0.0.1'
dc_readhost='ex.com'
dc_relay_domains=''
dc_minimaldns='false'
dc_relay_nets=''
dc_smarthost='smtp.gmail.com::587'
CFILEMODE='644'
dc_use_split_config='true'
dc_hide_mailname='true'
dc_mailname_in_oh='true'
dc_localdelivery='mail_spool'

Agora, o e-mail está aparecendo como um erro de [email protected] , mas continua com o mesmo erro de DNS: Address resolution of server.example.com failed: Domain name not found no Google Apps.

Abaixo está uma parte do meu /var/log/exim4/mainlog , mostrando que o e-mail está saindo do servidor:

2015-11-12 07:01:01 1ZwqYn-0001oN-2H <= [email protected] U=root P=local S=2598
2015-11-12 07:01:01 1ZwqYn-0001oN-2H gmail-smtp-msa.l.google.com [2607:f8b0:400c:c06::6d] Network is unreachable
2015-11-12 07:01:02 1ZwqYn-0001oN-2H => [email protected] R=smarthost T=remote_smtp_smarthost H=gmail-smtp-msa.l.google.com [74.125.141.108] X=TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128 DN="C=US,ST=California,L=Mountain View,O=Google Inc,CN=smtp.gmail.com" A=plain C="250 2.0.0 OK 1447329663 h144sm1989632vke.26 - gsmtp"
2015-11-12 07:01:02 1ZwqYn-0001oN-2H Completed

Meu arquivo /etc/aliases :

# /etc/aliases
mailer-daemon: postmaster
postmaster: root
nobody: root
hostmaster: root
usenet: root
news: root
webmaster: root
www: root
ftp: root
abuse: root
noc: root
security: root
root: canadianluke
canadianluke: [email protected]
    
por Canadian Luke 09.11.2015 / 23:41

3 respostas

2

O endereço de e-mail root @ empty é um endereço de e-mail não válido . O servidor remoto está correto ao retornar um e-mail de erro.

Um endereço de e-mail geralmente precisa consistir de três partes, separadas pelo sinal de arroba < @ > e um ponto <. >

A primeira parte normalmente é alguma forma de nome de usuário, mas também pode ser uma função (vendas, hora) ou qualquer outra coisa realmente (contanto que seu MTA saiba o que fazer com ela), a segunda parte logo após assinar < @ > é o nome de domínio e a última parte logo após o ponto <. > é o domínio de nível superior ou de TLD. Estes não podem ser arbitrários por razões óbvias.

[email protected]

O MTA não sabe para onde enviar seu email com o endereço root @ empty.

Isso pode funcionar em um sistema local quando o MTA sabe o que fazer com os endereços de email desse formato em particular, mas uma vez que ele sai do sistema local, ele será recusado e você receberá um erro de volta.

O que você precisa fazer é configurar o exim para entregar emails com o formato name @ example (onde exemplo é seu próprio domínio) localmente e não tentar enviá-los, ou configurar o exim para reescrever esses emails com o formato correto [email protected] e depois enviá-los para fora.

Quando você executa dpkg-reconfigure exim4-config , há uma pergunta Outros destinos para os quais o email é aceito: se você adicionar o (s) domínio (s) para o qual deseja que o sistema seja o destino final, o que você está tentando fazer trabalhos. Mas você pode fazer algumas edições manuais dos arquivos de configuração.

Como você diz que realmente recebe o email e recebe um erro do MTA remoto, talvez seja necessário reconfigurar o exim para não enviar esses emails. O acima eu acho que pode cuidar disso automagicamente.

Veja também:

link

link

Atualização: a partir da sua pergunta atualizada, parece que você precisa usar o endereço de e-mail na forma de [email protected] ou registrar server.example.com no google apps. Eu esqueci exatamente como fazer isso, mas sei que é possível configurar isso. Certamente, certifique-se de que o DNS para server.example.com esteja configurado corretamente.

Com relação ao seu último comentário, você tentou adicionar a seguinte linha ao / etc / aliases

root: [email protected]

Isso automaticamente diria ao exim para redirecionar os e-mails destinados à conta-raiz nesse sistema para serem enviados para [email protected] (ou até mesmo para [email protected], se você configurou isso em aliases).

    
por 10.11.2015 / 03:20
2

Você precisa configurar o exim para adicionar seu domínio a endereços de remetente e destinatário não qualificados ("não qualificado", que significa "que ainda não têm um domínio").

No exim puro, isso seria "qualify_domain". Como você está usando o debconf, acho que configurar o conteúdo de / etc / mailname para o seu domínio deve funcionar.

Depois, você tem o problema de que os nomes de usuário dos usuários que enviam mensagens para o exterior devem corresponder a endereços reais. Seu usuário "root" estará enviando e-mail para onde você deseja ir? Uma solução usual é dizer que o servidor recebe e-mail apenas para si mesmo (myserver.example.com). Dessa forma, o correio gerado pelo sistema permanece no servidor. Para correio para o exterior, force os endereços de email de origem usando o MUA ou o MTA. Para o Exim (MTA), ele é chamado de remetente do remetente . quer algo como

begin rewrite
^mylogin@myserver$ my@email SFf'
    
por 10.11.2015 / 23:53
1

Eu descobri que a causa raiz foi graças a resposta do @ aseq acima, mas eu descobri como fazer isso Não envie a mensagem de e-mail extra do Google Postmaster.

Eu tinha seguido o tutorial para configurar a Autenticação do GMail com o Exim4 no Debian , e ele me pediu para "[c] hoose " mail sent by smarthost; received via SMTP or fetchmail ". Isso fez com que o Exim esperasse que as contas locais enviassem e-mails também, mas tudo o que eu queria era que as mensagens fossem enviadas para o meu e-mail principal.

Este é um exemplo clássico do problema XY que eu deveria estar mais ciente. Corrigi o problema subjacente definindo exim4 como mail sent by smarthost; no local mail na primeira tela de seu dpkg-reconfigure exim4-config . Reiniciei o serviço do Exim4 e o correio funcionou corretamente!

    
por 17.11.2015 / 19:20