Eu quero usar o exim para enviar e-mails por meio do servidor SMTP do meu provedor. No entanto, o Wiki do Arch é bastante confuso (o exim é muito mais simples em um sistema Debian). Segui as instruções na seção final , modificando o endereço SMTP de mail.internode.on.net
para meu Servidor SMTP e modificando *@* [email protected] Ffr
para *@* $1@my_emaildomain.com Ffr
. Isso funcionou quando eu estava conectado à internet através do meu ISP.
No entanto, para usar isso na minha rede de trabalho, preciso autenticar. Tentei seguir as instruções listadas para o Gmail, enquanto alterava o URL, mas isso falhou com
authenticator iinet_route: cannot find authenticator driver "manualroute"
Como posso configurar exim
para autenticação? (FWIW eu estou com iinet .)
EDITAR
Percebi que estava colocando as configurações do tipo "Gmail" nas partes erradas. Eu movi-os e não estou mais recebendo as mensagens de erro. No entanto, exim
agora falha silenciosamente. Não recebo nenhuma mensagem de erro, mas nenhum email é 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() #
######################################################################
E aqui é o meu arquivo de configuração completo.
EDIT 2
Eu também tentei mudar a porta para 465, que também falha silenciosamente. (FWIW 587 funciona bem em msmtp.)
EDIT 3
Estas são as informações de um email com falha, usando exim -Mvl
. A tentativa original de enviar usado echo 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
EDIT 4
Eu executei o comando de email novamente (conforme a edição 3) e obtive um erro ligeiramente diferente. Eu também vinculei a saída completa de exim -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 .