2

こんにちは、Javaアプリケーションを介して電子メールを送信するためにapache james電子メールサーバー2.3.2を使用しており、セットアップしてJavaMail API 1.4を使用しています。gmail/yahoo などのメール サーバーにメールを送信しようとしています。

localhost のアカウント (ローカルで実行されている James のアカウント) にはメールを送信できましたが、外部の電子メール サーバーには送信できませんでした。

/apps/config.xml も変更しました。サンプル MyMailet を james に持っています。例外をスローしていません。しかし、mailet*.log は次のようになります。

13/06/12 15:20:13 INFO  James.Mailet: MyMailet#init called
13/06/12 15:20:13 INFO  James.Mailet: RemoteAddrNotInNetwork: Authorized addresses: [127.0.0.1/255.255.255.255]
13/06/12 15:20:13 INFO  James.Mailet: RemoteDelivery: Total number of delayTime attempts exceeds maxRetries specified. Increasing maxRetries from 1 to 6
13/06/12 15:20:17 INFO  James.Mailet: MyMailet#service callednull from test@localhost
13/06/12 15:20:23 INFO  James.Mailet: RemoteDelivery: Attempting delivery of Mail1339581017690-0 to host 192.168.15.186 at 192.168.15.186 for addresses [shreyas1910@gmail.com]
13/06/12 15:20:23 INFO  James.Mailet: RemoteDelivery: null
13/06/12 15:20:23 INFO  James.Mailet: RemoteDelivery: Temporary exception delivering mail (Mail1339581017690-0: 
13/06/12 15:20:23 INFO  James.Mailet: RemoteDelivery: Storing message Mail1339581017690-0 into outgoing after 0 retries

dnsserver*.log は次のようになります。

13/06/12 15:20:13 INFO  dnsserver: DNS Server is: 192.168.15.3

james*.log like:
13/06/12 15:20:13 INFO  James: JAMES init...
13/06/12 15:20:13 INFO  James: Local host is: IISD27
13/06/12 15:20:13 INFO  James: Handling mail for: 97.74.180.1
13/06/12 15:20:13 INFO  James: Handling mail for: iisd27
13/06/12 15:20:13 INFO  James: Handling mail for: gmail.com
13/06/12 15:20:13 INFO  James: Handling mail for: 74.125.236.182
13/06/12 15:20:13 INFO  James: Handling mail for: 74.125.236.181
13/06/12 15:20:13 INFO  James: Handling mail for: 127.0.0.1
13/06/12 15:20:13 INFO  James: Handling mail for: localhost
13/06/12 15:20:13 INFO  James: Local users repository opened
13/06/12 15:20:13 INFO  James: Private Repository LocalInbox opened
13/06/12 15:20:13 INFO  James: JAMES ...init end

cofig.xml は次のようになります。

    <processor name="transport">
        <mailet match="All" class="RemoteDelivery">
        <outgoing> file://var/mail/outgoing/ </outgoing>

            <gateway>192.168.15.186</gateway>//My IP addresss. Tried with smtp.gmail.com also
            <gatewayPort>25</gatewayPort>
            <gatewayusername>user123</gatewayusername>
        <gatewayPassword>pass123</gatewayPassword>

        <!-- Set the HELO/EHLO name to use when connectiong to remote SMTP-Server -->

        <mail.smtp.localhost>myMailServer</mail.smtp.localhost>

        </mailet>

  </processor>
4

1 に答える 1

2

これが原因で問題が発生したと思います:

電子メールサーバーは、メールを受け入れる前にリバース DNS クエリを実行します。彼らは、電子メールが送信されたドメインの IP と、電子メールが実際に送信された IP を確認します。

ドメインの ip とメール送信者の ip が一致しない場合、メール サーバーはメールが迷惑メールまたはスパムであると見なします。

ここで、あなたのドメイン(それが何であるかわかりません:-?)は、電子メールサーバーが逆DNSクエリを送信してもIPを取得せず、あなたのメールがジャンクまたはスパムであると考える場合、有効なアドレスではありません.

詳細については、これを確認してください: http://wiki.junkemailfilter.com/index.php/Fixing_Reverse_DNS

于 2012-12-04T15:44:29.190 に答える