%3F.png)
Eu querousar eximpara enviar e-mails através do servidor SMTP do meu ISP. No entanto, oWiki do arcoé bastante confuso (o exim é muito mais simples em um sistema Debian). Eu segui as instruções doseção final, modificando o endereço SMTP mail.internode.on.net
para meu servidor SMTP e modificando para . Isso funcionou quando eu estava conectado à Internet através do meu ISP.*@* [email protected] Ffr
*@* $1@my_emaildomain.com Ffr
Porém, para usar isso na minha rede de trabalho, preciso me autenticar. Tentei seguir as instruções listadas para o Gmail ao alterar o URL, mas falhou com
authenticator iinet_route: cannot find authenticator driver "manualroute"
Como posso configurar exim
a autenticação? (FWIW estou cominet.)
EDITAR
Percebi que estava colocando as configurações do tipo "Gmail" nas partes erradas. Mudei-os e não estou mais recebendo mensagens de erro. No entanto, exim
agora falha silenciosamente. Não recebo nenhuma mensagem de erro, mas nenhum e-mail é entregue.
Aqui estão as alterações que fiz no padrão de fábrica:
--- exim.conf.factory_default 2015-08-03 02:14:31.000000000 +1000
+++ exim.conf 2015-11-10 08:09:54.196287461 +1100
@@ -402,7 +402,7 @@
# Deny unless the sender address can be verified.
- require verify = sender
+ #require verify = sender
# Accept if the message comes from one of the hosts for which we are an
# outgoing relay. It is assumed that such hosts are most likely to be MUAs,
@@ -552,14 +552,19 @@
# If the DNS lookup fails, no further routers are tried because of the no_more
# setting, and consequently the address is unrouteable.
-dnslookup:
- driver = dnslookup
- domains = ! +local_domains
- transport = remote_smtp
- ignore_target_hosts = 0.0.0.0 : 127.0.0.0/8
+#dnslookup:
+# driver = dnslookup
+# domains = ! +local_domains
+# transport = remote_smtp
+# ignore_target_hosts = 0.0.0.0 : 127.0.0.0/8
# if ipv6-enabled then instead use:
# ignore_target_hosts = <; 0.0.0.0 ; 127.0.0.0/8 ; ::1
- no_more
+# no_more
+
+iinet_route:
+ driver = manualroute
+ transport = iinet_relay
+ route_list = * mail.iinet.net.au
# This alternative router can be used when you want to send all mail to a
@@ -735,6 +746,12 @@
address_reply:
driver = autoreply
+iinet_relay:
+ driver = smtp
+ port = 587
+ hosts_require_auth = <; $host_address
+ hosts_require_tls = <; $host_address
+
######################################################################
@@ -769,6 +786,7 @@
# There are no rewriting specifications in this default configuration file.
begin rewrite
+*@* [email protected] Ffr
@@ -821,6 +839,12 @@
# server_advertise_condition = ${if def:tls_in_cipher }
+iinet_login:
+ driver = plaintext
+ public_name = LOGIN
+ hide client_send = : [email protected] : PASSWORD_HERE
+
+
######################################################################
# CONFIGURATION FOR local_scan() #
######################################################################
Eaquié meu arquivo de configuração completo.
EDITAR 2
Também tentei alterar a porta para 465, o que também falha silenciosamente. (FWIW 587 funciona bem em msmtp.)
EDITAR 3
Aqui estão as informações sobre um e-mail com falha, usando exim -Mvl
. A tentativa original de envio usadaecho body | /usr/bin/mail -s subject -r [email protected] [email protected]
2015-11-10 11:53:39 Received from [email protected] U=sparhawk P=local S=428 id=20151110005339.ag4kfrHaJ%[email protected]
2015-11-10 11:53:41 [email protected] R=iinet_route T=iinet_relay defer (-42): authentication required but authentication attempt(s) failed
EDITAR 4
Executei o comando mail novamente (conforme edição 3) e recebi um erro ligeiramente diferente. Também vinculei a saída completa deexim -d+all -M messageID <ID>
$ sudo exim -Mvl 1ZwMHr-0008I4-92
2015-11-11 14:41:31 Received from [email protected] U=lee P=local S=426 id=20151111034131.VRuQn__aN%[email protected]
2015-11-11 14:41:31 [email protected] R=iinet_route T=iinet_relay defer (-53): retry time not reached for any host
A saída de depuração completa éaqui.
Responder1
De acordo com o erro que você obteve, você colocou as estrofes do exemplo do Gmail no wiki nas seções erradas. A configuração do exim é construída em partes distintas, na ordem:
- principal
contém definições e configurações globais - acl
- roteadores
como lidar com um endereço; o primeiro hit é usado, então a ordem é importante - transportes
define formas de descartar uma mensagem, estas são referenciadas nos roteadores acima; ordem não é importante - tente novamente
com que frequência tentar novamente a entrega - reescrever
alterar endereços, por exemplo, para mapear endereços internos para endereços utilizáveis globalmente - autenticadores
define formas de autenticação; tanto como servidor quanto como cliente
A mensagem de erro authenticator iinet_route: cannot find authenticator driver "manualroute"
indica claramente que você colocou uma estrofe de roteador na seção de autenticadores.
Coloque cada estrofe na seção relevante (ou seja, a definição do roteador após a linha begin routers
e antes da linha begin transports
, levando em consideração a ordem; etc.) e o erro deverá desaparecer.