- ベストアンサー
CentOSメールサーバ構築-送信メール受信できず
- CentOS5.4(i386版)でメールサーバを構築中。Postfixとdovecotを使用。メールの送受信はできるが、yahooメールでの受信とThunderbirdからの送信ができない。
- WindowsのThunderbirdでCentOSからのメールを受信できるが、yahooメールに送信したメールをThunderbirdで受信できず、Thunderbirdからメールの送信もできない状況。
- CentOSで作成したユーザのメールアドレスにCentOSからメールを送信しても受信できるが、yahooメールで送信したメールは受信できず、Thunderbirdからメールを送信することもできない。設定は済んでいるが、原因は分からず、ご教授をお願いしたい。
- みんなの回答 (14)
- 専門家の回答
質問者が選んだベストアンサー
>[root@www ~]# mail test@xxx.com >で送信したメールをWindowsにインストールしたThunderbirdで受信できるのですが、 >yahooメールでtest@xxx.com宛に送信したメールをThunderbirdで受信できない、また、 >Thunderbirdからメールが一切送信できない CentOSのpostfixの設定ファイルのデフォルトでは、SMTPの受信はlocalhostのに制限されているはずですがこの設定は大丈夫でしょうか。 場所はmain.cfのinet_interfacesです。 また、メールを中継するためにはそれなりの設定がmain.cfに必要です。 yahooメールからtest@xxx.comへ送信出来るようにするためには、xxx.comのゾーンを管理しているDNSサーバにmxの設定がキチンとされていなければなりません。 >CentOSから送信したメールはThunderbirdで受信できているので、ある程度設定は合っているかと思うのですが・・・ 使用しているプロトコル(≒ソフト)が違いますのでこちらが出来ても今回問題になったメール配送には関係無いですね。 Thunderbirdで受信は、dovecotが動作します。 Thunderbirdからの送信、yahooメールからの送信はPostfixが動作します。 メール配送について見直されるといいかと思います。 こういう単純な話ではないということでしたらごめんなさいです。
その他の回答 (13)
- nnori7142
- ベストアンサー率60% (755/1249)
追加補足拝見しました。「isp_acount」についてはBIGLOBEの場合メールアドレスとなり、メールアカウントに相当します。「isp_password」はメールパスワードになります。 因みに、BIGLOBEの場合、587ポートを利用しているはずですが、ルーターにおいてPostfix利用ポート25番とWAN側587といった形へポート開放しないといけない可能性もあります。(ルーターの機種・型式によります) それと、自宅内LANのPCから同一LAN内サーバへのドメイン制御でのメール送受信には、サーバへhosts設定若しくは、ルーターへ簡易DNS(DNSリレー・DNSフォワーディング)設定を行わないといけない可能性もあります。
補足
nnori7142さん お世話になっております。 BIGLOBEからプロバイダのアカウントとパスワードが届きましたので設定の方を再開致しました。 main.cfの設定ですが、 relayhost = [mail.biglobe.ne.jp]:587 と設定し、 vi /etc/postfix/isp_passwd でisp_passwdを作成して、中身は mail.biglobe.ne.jp isp_acount:isp_password としてあります。 ([mail.biglobe.ne.jp]isp_acount:isp_passwordと最初は記述しておりましたが、その後のDB化でエラーが出てしまい、エラーの原因を調べた結果、上記のような記述になりました) isp_passwd作成後、 postmap /etc/postfix/isp_passwd でDB化し、 最後にmain.cfに smtp_sasl_auth_enable = yes smtp_sasl_password_maps = hash:/etc/postfix/isp_passwd smtp_sasl_security_options = noanonymous を追加で記述しました。 記述後に、SASLを有効にし、postfixに設定ファイルを再読み込みさせました。 また、ポートの開放ですが、ルータの設定画面から 25番ポートと587番ポートを開放してあります。 また、「お名前.com」のDDNSサービスを利用しているのですが、 こちらでMXレコードの登録も行っております。 (Aレコードはすでに設定済みで、動作確認済みです) この状態で、WindowsのThunderbirdからyahooメールのメールアドレス(xxx.yahoo.co.jp)宛てにメールを送信したのですが、 メッセージを送信できませんでした。 SMTP サーバ 192.168.0.4 に接続できなかったため、メッセージを送信できませんでした。サーバと通信できないか、SMTP 接続が許可されませんでした。SMTP サーバの設定が正しいか確認して再度試すか、サーバの管理者に問い合わせてください。 と表示され、送信ができませんでした。 また、yahooメールからThunderbirdで設定したメールアドレス宛にメールを送ったのですが、Thunderbird側で受信ができない状態です。 Thunderbirdの方の設定ですが、 送信(SMTP)サーバのサーバ名:192.168.0.4(設定などを行っていたCentOSのIPアドレス) ポート:587 と設定してあります。 どこかの設定が間違っているのかと思い、main.cfやThunderbirdの設定をちょくちょく変えて試しているのですが、どれもうまくいかないので困っております。 今後も色々と試してみようと思いますが、何かアドバイス等ありましたらご教授のほどお願い致します。
- nnori7142
- ベストアンサー率60% (755/1249)
先ほどの追記ですが、Postfix-SMTPサーバの設定には、main.cf編集になりますが、70・77行目のmyhostname・mydomainの箇所へ契約ドメイン登録、93行目のコメント行解除、110行目のinet_interfacesの後を「= all」と記述します。 更にデフォルトMTA変更が必要です。(初期状態でsend mailになっているはず) Transport記述には、同じくmain.cfへrelayhost = [契約プロバイダSMTPサーバ]:Submissionポート番号と記述します。それだけでは、SMTP認証されませんので、/etc/postfix/の箇所にisp_passwdファイル名で作成、内容は「[プロバイダSMTPサーバ] isp_acount:isp_password」形式で作成します。それをGNOMEコンソールから「postmap /etc/postfix/isp_passwd」でDB化します。 最後にmain.cfに追加記述を行いますが、「smtp_sasl_auth_enable = yes」、「smtp_sasl_password_maps = hash:/etc/postfix/isp_passwd」、「smtp_sasl_security_options = noanonymous」と記述し、プロバイダにより認証形式設定記述に「smtp_sasl_mechanism_filter = cram-md5, digest-md5, plain, login」といった記述設定を実施する方法となります。
補足
nnori7142さん 早速のご回答をありがとうございます。 色々と調べたところ、少しずつ分かってきました。 >ain.cf編集になりますが、70・77行目のmyhostname・mydomainの箇所へ契約ドメイン登録、93行目のコメント行解除、110行目のinet_interfacesの後を「= all」と記述します。 更にデフォルトMTA変更が必要です。(初期状態でsend mailになっているはず) こちらに関しては、すでに設定済みです。 >Transport記述には、同じくmain.cfへrelayhost = [契約プロバイダSMTPサーバ]:Submissionポート番号と記述します。それだけでは、SMTP認証されませんので、/etc/postfix /の箇所にisp_passwdファイル名で作成、内容は「[プロバイダSMTPサーバ] isp_acount:isp_password」形式で作成します。それをGNOMEコンソールから「postmap /etc/postfix/isp_passwd」でDB化します。 こちらに関しては、全く手をつけておりませんでした。 自分の契約しているプロバイダについて調べたところ、「BIGLOBE auひかり」では迷惑メール対策として25番ポートが閉じられており、OP25B対策が必要ということが分かりました。また、代わりに587番ポートを開放(Submissionポート)しており、こちらを使う必要があるということが分かりました。 現在は、main.fcに relayhost = [mail.biglobe.ne.jp]587 と記述し、/etc/postfix/の箇所に"isp_passwd"というファイルを作り、その中に [mail.biglobe.ne.jp]isp_acount:isp_password と記述してあります。isp_acountとisp_passwordが分からないため、現在BIGLOBEに問い合わせており中断しております。申し訳ございません。 アカウントとパスワードが分かり次第、再開致します。 色々とご教授いただきありがとうございます。 後ほど、進捗を報告させていただきます。
- nnori7142
- ベストアンサー率60% (755/1249)
お尋ねの件ですが、Postfixメールサーバでの運用、Yahooメールですと基本的にIMAPサーバ管理のメールアドレスである点、迷惑メール対策(OP25B)適用サービスである点から、Postfixサーバに対し、契約プロバイダのSMTPサーバ経由でのTransport記述・認証接続ID/パスワード記述を行う設定を実施しませんと、送信出来ない可能性があります。 上記の点は、サーバ公開回線・契約プロバイダも同様で、相手先メールアドレス環境だけではなく、自宅契約プロバイダも同様の対策が必要となります。 相手先が携帯メール等も別の設定記述がPostfixに対し、Transport記述が必要です。 参考サイト「http://www.aconus.com/~oyaji/mail2/op25b.htm」
- 1
- 2
お礼
maesenさん 早速のご回答をありがとうございます。 >CentOSのpostfixの設定ファイルのデフォルトでは、SMTPの受信はlocalhostのに制限されているはずですがこの設定は大丈夫でしょうか。 こちらの設定は、 inet_interfaces = all と変更してあります。 >また、メールを中継するためにはそれなりの設定がmain.cfに必要です。 以前の状態では、メールを中継する設定を行っておりませんでした。現在、main.cfの設定を見直しているところです。ご迷惑をお掛けしまして、申し訳ございません。 >使用しているプロトコル(≒ソフト)が違いますのでこちらが出来ても今回問題になったメール配送には関係無いですね。 できれば、クライアントPC(Windows)にてThunderbirdを使用したいと思っていたのですが、プロトコルが違うことから使用できないということでしょうか? 色々とご教授いただきありがとうございます。 知識があまりないため設定が上手くできていない部分が多々見つかりましたので、見直してみます。