wormly.com でSMTPサーバーをテストしています
テストを行うと、最終的には
> SMTP -> FROM SERVER: 250 2.1.0 Ok RCPT TO: [email protected]
> SMTP -> FROM SERVER: 554 5.7.1 : Relay access denied SMTP -> ERROR:
> RCPT not accepted from server: 554 5.7.1 : Relay access denied
メッセージの送信に失敗しました。
これを利用してメールサーバーをセットアップします リンク
サードパーティのWebサイトがサーバーに接続しており、外部ドメインに電子メールを送信できないため、これは正しいメッセージです。
理想的には、構成に従って、自分のドメインの1つに電子メールを送信する場合、配信する必要があります。
オープンリレーを行っていた場合、つまり、任意のドメインの電子メールを受け入れるとしたら、それは大きなセキュリティリスクになり、すぐにサーバーがブラックリストに登録されることになります。また、ISPに悪用の問題を引き起こす可能性があります。
メールサーバーのテスト
管理が不慣れな場合は、独自のサーバーをセットアップするのではなく、 Mandrill.com などのサービスを使用してトランザクションメールを送信することを強くお勧めします。それは、善よりも害を引き起こす可能性があります。
ただし、コメントに基づいて、メールサーバーをセットアップしてテストする必要があります。それは簡単な作業ではなく、さまざまなレベルでのテストが必要です。基本レベルで次のことを試してください。
a)仮想ドメインと、そのドメイン内の仮想ユーザーを作成します
b)サーバーのポート25にtelnetを実行し、そのドメインにメールを送信して、配信されているかどうかを確認します。別のコンソールからtail -f /var/log/mail.log -f
を介してエラーログを確認できます。 telnetの使用は簡単です
telnet yourserver.com 25
helo test.com
mail from: <[email protected]>
rcpt to: <[email protected]>
data
Type any content that you want, press enter, then put a period (.) and then enter to exit
.
次に、エラーログを使用して、電子メールが正常に配信されたかどうかを確認します。完了すると、受信メールが正常に機能することがわかります(そのドメインのAレコード/ MXレコードが正しく設定されている場合)。それ以外の場合、エラーに基づいて、問題を修正します。
c)sshを介してサーバーにログインし、mailコマンドを使用して電子メールを送信します
echo "Test Email from the new server" | mail -s "Test Subject" [email protected]
Gmailのスパムフォルダーを確認します。すべてがうまくいけば、そこに着いたはずです。これにより、送信メールをチェックアウトできます。
Java Webアプリケーションが同じサーバー上にある場合、アプリケーション内でlocalhost
を電子メールサーバーとして使用できます。別のサーバー上にある場合は、postfix/main.cf
のmynetworks
行にそのサーバーのIPアドレスを入力し、postfixを再起動して、認証なしでメールを送信できます。
繰り返しますが、間違った構成はサーバーの誤用につながる可能性があるため、注意してください。