%20%E3%82%92%E4%BD%BF%E7%94%A8%E3%81%99%E3%82%8B%E3%82%88%E3%81%86%E3%81%AB%20exim%20%E3%82%92%E8%A8%AD%E5%AE%9A%E3%81%99%E3%82%8B%E3%81%AB%E3%81%AF%E3%81%A9%E3%81%86%E3%81%99%E3%82%8C%E3%81%B0%E3%82%88%E3%81%84%E3%81%A7%E3%81%97%E3%82%87%E3%81%86%E3%81%8B%3F.png)
したいeximを使用するISPのSMTPサーバー経由でメールを送信したいのですが、アーチウィキ非常に分かりにくいです(Debianシステムではeximの方がずっと簡単です)。最終セクション、SMTP アドレスを からmail.internode.on.net
SMTP サーバーに変更し、に変更します。これは、ISP 経由でインターネットに接続しているときに機能しました。*@* [email protected] Ffr
*@* $1@my_emaildomain.com Ffr
しかし、これを職場のネットワークで使用するには、認証が必要です。Gmailの指示に従ってURLを変更しようとしましたが、失敗しました。
authenticator iinet_route: cannot find authenticator driver "manualroute"
認証を設定するexim
にはどうすればいいですか?(参考までに、私はネット。
編集
「Gmail」のような設定を間違った場所に入力していたことに気付きました。設定を移動したところ、エラー メッセージが表示されなくなりました。ただし、exim
今度は何も表示されずに失敗します。エラー メッセージは表示されませんが、メールは配信されません。
工場出荷時のデフォルトに加えた変更は次のとおりです。
--- 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() #
######################################################################
そしてここ完全な設定ファイルです。
編集2
ポートを 465 に変更することも試みましたが、これも何も表示されずに失敗します。(ちなみに、587 は msmtp では正常に動作します。)
編集3
失敗したメールに関する情報は、 を使用していますexim -Mvl
。 送信を試みた最初のメールは、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
編集4
もう一度メールコマンドを実行したところ(編集3のとおり)、少し異なるエラーが発生しました。また、次の完全な出力へのリンクも貼っておきます。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
完全なデバッグ出力はここ。
答え1
表示されたエラーによると、Wiki の Gmail の例のスタンザを間違ったセクションに配置したようです。Exim 構成は、次の順序で個別の部分から構成されています。
- 主要
グローバル定義と設定が含まれています - ACL
- ルーター
アドレスの処理方法。最初のヒットが使用されるため、順序が重要です。 - 輸送
メッセージの処分方法を定義します。これらは上記のルータから参照されます。順序は重要ではありません。 - リトライ
配信を再試行する頻度 - リライト
アドレスの変更(例:内部アドレスをグローバルに使用可能なアドレスにマッピングする) - 認証子
サーバーとクライアントの両方として認証する方法を定義します
エラー メッセージはauthenticator iinet_route: cannot find authenticator driver "manualroute"
、認証セクションにルーター スタンザを配置したことを明確に示しています。
各スタンザを関連するセクション(つまり、ルーター定義を 行の後begin routers
、 行の前begin transports
など、順序を考慮する)に配置すると、エラーは解消されるはずです。