Wie kann ich Exim so einrichten, dass es den SMTP-Server meines ISPs verwendet (auf einem Nicht-Debian-System)?

Wie kann ich Exim so einrichten, dass es den SMTP-Server meines ISPs verwendet (auf einem Nicht-Debian-System)?

Ich möchteVerwenden Sie Eximum E-Mails über den SMTP-Server meines ISPs zu versenden.Arch-Wikiist ziemlich verwirrend (exim ist auf einem Debian-System viel einfacher). Ich folgte den Anweisungen in derletzter Abschnitt, Ändern der SMTP-Adresse von mail.internode.on.netzu meinem SMTP-Server und Ändern zu . Dies funktionierte, als ich über meinen ISP mit dem Internet verbunden war.*@* [email protected] Ffr*@* $1@my_emaildomain.com Ffr

Um dies jedoch in meinem Arbeitsnetzwerk zu verwenden, muss ich mich authentifizieren. Ich habe versucht, die für Gmail aufgeführten Anweisungen zu befolgen, während ich die URL geändert habe, aber dies schlug fehl mit

authenticator iinet_route: cannot find authenticator driver "manualroute"

eximWie kann ich die Authentifizierung einrichten ? (FWIW Ich bin mitiinet.)

BEARBEITEN

Mir ist aufgefallen, dass ich die „Gmail“-ähnlichen Einstellungen an den falschen Stellen eingefügt habe. Ich habe sie verschoben und erhalte keine Fehlermeldungen mehr. Jetzt schlägt es jedoch eximstillschweigend fehl. Ich erhalte keine Fehlermeldung, aber es wird keine E-Mail zugestellt.

Hier sind die Änderungen, die ich an der Werkseinstellung vorgenommen habe:

--- 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()                   #
 ######################################################################

UndHierist meine vollständige Konfigurationsdatei.

BEARBEITEN 2

Ich habe auch versucht, den Port auf 465 zu ändern, was auch ohne Meldung fehlschlägt. (FWIW 587 funktioniert in msmtp einwandfrei.)

BEARBEITEN 3

Hier sind die Informationen zu einer fehlgeschlagenen E-Mail mit exim -Mvl. Der ursprüngliche Sendeversuch erfolgte mitecho 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

BEARBEITEN 4

Ich habe den Mail-Befehl erneut ausgeführt (wie in Bearbeitung 3) und einen etwas anderen Fehler erhalten. Ich habe auch auf die vollständige Ausgabe von verlinktexim -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

Die vollständige Debug-Ausgabe istHier.

Antwort1

Laut der Fehlermeldung, die Sie erhalten, haben Sie die Strophen aus dem Gmail-Beispiel im Wiki in die falschen Abschnitte eingefügt. Die Exim-Konfiguration ist in der folgenden Reihenfolge in einzelne Teile unterteilt:

  • hauptsächlich
    enthält globale Definitionen und Einstellungen
  • acl
  • Router
    wie mit einer Adresse umgegangen wird; der erste Treffer wird verwendet, daher ist die Reihenfolge wichtig
  • Transporte
    definiert Möglichkeiten zur Entsorgung einer Nachricht, diese werden von den oben genannten Routern referenziert; die Reihenfolge ist nicht wichtig
  • wiederholen
    Wie oft soll die Zustellung wiederholt werden?
  • umschreiben
    Ändern von Adressen, um beispielsweise interne Adressen auf global verwendbare Adressen abzubilden
  • Authentifikatoren
    definiert Möglichkeiten zur Authentifizierung; sowohl als Server als auch als Client

Die Fehlermeldung authenticator iinet_route: cannot find authenticator driver "manualroute"weist eindeutig darauf hin, dass Sie im Abschnitt „Authentifikatoren“ eine Router-Strophe eingefügt haben.

Fügen Sie jede Strophe in den entsprechenden Abschnitt ein (also die Routerdefinition nach der Zeile begin routersund vor der Zeile begin transports, unter Berücksichtigung der Reihenfolge usw.), und der Fehler sollte behoben sein.

verwandte Informationen