- ベストアンサー
Postfix+POP3の質問
お世話になります。 私はLinux歴2週間のSEです。以前まで5年ぐらいwin上でシステム開発を担当していました。 最近、Linux(Miracle)を使ってサーバー構築することにになり、Mysql4、Apache2、PHP5まで使える状態になりました。 次にPostfixを使ってメールサーバーを構築しようとしましたが、POP3を使って受信できません。 PostFixの定義 command_directory = /usr/sbin daemon_directory = /usr/libexec/postfix myhostname = webmaster.xxxx.com mydomain = xxxx.com myorigin = $mydomain mydestination = $myhostname, localhost.$mydomain, $mydomain inet_interfaces = all relay_domains = $mydestination alias_maps = hash:/etc/postfix/aliases alias_database = hash:/etc/postfix/aliases home_mailbox = Maildir/ mailbox_size_limit = 102400000 message_size_limit = 5120000 sendmail_path = /usr/sbin/sendmail.postfix newaliases_path = /usr/bin/newaliases.postfix mailq_path = /usr/bin/mailq.postfix mynetworks = 127.0.0.0/8, 192.168.0.0/24 (不正中継対策は未だ定義していません) この定義でKmail(メーラー)を使って送信は問題なく出来ました。テストで「a1」と言うユーザーを作り受信テストしました。 メールボックス(/home/a1/maildir/new)まで届いているにも拘らずメーラーからPOP経由でメッセージを受信できません。 当然ですがデレクトリー直接指定の場合は受信出来ました。 POP3はxinetdから起動しています。 メーラーからの応答は”メッセージなし”だけで何の定義が足らないか又は起動するプログラムを間違えているのかサッパリ解らなく質問させて頂きました。 初めての質問でご無礼ございましたらご容赦ください。
- みんなの回答 (6)
- 専門家の回答
質問者が選んだベストアンサー
ちなみにPostfixはSMTPデーモンでして、POP3やIMAPのデーモンではありません。いくらPostfixの設定を見直しても、POP3の状態に変化はありません... それで、PostfixをMaildir形式にしたのでしたらPOPサーバーもMaildir形式に対応する必要があります。 Miracle Linuxがどのパッケージを入れているのか分かりませんが、Courier-IAMPはいかがでしょうか? これだと正しく設定さえすれば、Maildirで運用できますし、POPもIMAP4も使うことが出来ます。(CRAM-MD5などで承認を厳しくすることも出来ます。) 私はFedora Core 2で上記2つの組み合わせで運用していますが、問題なく動いています。
その他の回答 (5)
- yosi_yosi
- ベストアンサー率35% (165/468)
うーん、そうですか... ログを見る限りはサーバーは問題なく動いているようなのですが... Kmailはよく分かりませんが(KDEのやつですよね?)、別に設定がおかしそうなところとかはないように思えますね。 KMailで通信ログが取れればどうなっているのか把握するのも早いのでしょうけれど... あとは、別のを試してみるとか? 私は普段はコンソールベースでしかLinuxは触らない(というか、もう何年もXをインストールしたためしがないのですが...)のでX上のソフトは分かりませんが、IMAP対応のもので行くとmuttやWanderlustなどがあるようです。 あまりお役に立てなかったですね...ごめんなさい。
お礼
yosi_yosi様大変助かりました。 自分の知らなかったTELNETやIMAPをご紹介頂き感謝しています。 後は自分なりに思考錯誤しながら進めます。 ありがとうございました。
- yosi_yosi
- ベストアンサー率35% (165/468)
エラーメッセージに関しては、どうもTLS関連のエラーのようです。SSL証明書を作成するか、TLS関連を無効にするかで対応できるはずです。これについては、通常のIMAP/POP3では特に関係ないと思います。(私はふだんSSL/TLS共に使っていませんので、詳しくは分かりません...ごめんなさい。ググってみると答えがあるかも?です。) それで、Telnetでのやり取りから推察するとメール自体はあるようです。新着メールもあるようです。ここまで来ると、どうもサーバーは正しく動作しているように思えます。 メーラーの設定はどうでしょうか? POP3/IAMP共に新着メールが受信できませんか? メーラーはどれをお使いでしょうか?
お礼
早速のご回答ありがとうございます。 使用しているメーラーはKMAILです。 画面コピーを貼付け出来ないので設定を記入します。 ○ネットワーク→受信アカウント(IMAPアカウント) 名前:a1 ログイン:a1 パスワード:a1 ホスト:192.168.11.101 ポート:143 Trash folder:受信箱 セキュリティーの設定タブ ・暗号について 1.無し←【選択】 2.安全の為にSSLを使用。 3.安全の為にTSLを使用。 ・認証方法(Authentication method) 1.テキストをクリアー←【選択】 2.プレーン。 3.ログイン。 4.CRAM-MD5。 5.DIGEST-MD5。 6.匿名。 以上です。 メーラーの設定も色々変えながら試していますが答えが出ない状況です。
補足
捕捉ですがMAILLOGには下記のメッセージが出力されています。 Connection, ip=[::ffff:127.0.0.1] Nov 19 09:41:42 webmaster imapd: LOGIN, user=a1, ip=[::ffff:127.0.0.1], protocol=IMAP Nov 19 09:50:51 webmaster imapd: LOGOUT, user=a1, ip=[::ffff:192.168.11.101], headers=0, body=0, time=637 このメッセージを見ると正常そうに思いました。
- yosi_yosi
- ベストアンサー率35% (165/468)
#1です。 補足の内容からすると、CourierIMAP自体はうまく動作しているようです。(何も入力していないので、自動的に接続がきられているようですが。) ちなみに私のところでは、 [foo@bar foo]$ telnet localhost 143 Trying 127.0.0.1... Connected to localhost. Escape character is '^]'. * OK [CAPABILITY IMAP4rev1 UIDPLUS CHILDREN NAMESPACE THREAD=ORDEREDSUBJECT THRE AD=REFERENCES SORT QUOTA IDLE STARTTLS] Courier-IMAP ready. Copyright 1998-2004 Double Precision, Inc. See COPYING for distribution information. A01 login foo hogehoge A01 OK LOGIN Ok. A02 list "" "%" * LIST (\Marked \HasChildren) "." "INBOX" A02 OK LIST completed A03 SELECT INBOX * FLAGS (\Draft \Answered \Flagged \Deleted \Seen \Recent) * OK [PERMANENTFLAGS (\* \Draft \Answered \Flagged \Deleted \Seen)] Limited * 98 EXISTS * 0 RECENT * OK [UIDVALIDITY 1017299464] Ok A03 OK [READ-WRITE] Ok A04 LOGOUT * BYE Courier-IMAP server shutting down A04 OK LOGOUT completed Connection closed by foreign host. となります。 A01 login foo hogehoge A02 list "" "%" A03 SELECT INBOX A04 LOGOUT は私が入力した文字です。試してみる場合は、fooにログインユーザー名、hogehogeにパスワードを入れてください。 途中の * 98 EXISTS * 0 RECENT が現在のINBOXフォルダのメール数で、98件の保存メール、0件の新規メールがあるようです。 ホームディレクトリのMaildirはできていますが、これがもしかしたら正しくないのかもしれません。 一度、 $ cd ~ $ /usr/lib/courier-imap/bin/maildirmake Maildir でMaildirフォルダを作り直してはどうでしょうか? (パスはGanIDさんの環境に合わせて変更してください。)
お礼
お世話になります。何度も申し訳ございません。 TELNETのログイン&ログアウトは問題なく出来ました。 また、TELNETで確認したところ下記のようにメッセージが2通見えているようです。 1 OK LOGIN Ok. 1 select inbox * FLAGS (\Draft \Answered \Flagged \Deleted \Seen \Recent) * OK [PERMANENTFLAGS (\* \Draft \Answered \Flagged \Deleted \Seen)] Limited * 2 EXISTS * 2 RECENT * OK [UIDVALIDITY 1100788727] Ok * OK [MYRIGHTS "acdilrsw"] ACL 1 OK [READ-WRITE] Ok 現在のMaildirを削除し/usr/lib/courier-imap/bin/maildirmake Maildirを実行しましたが、変わりなくメッセージが受け取れませんでした。 今度はログ(maillog)に下記のメッセージが表示されました。 couriertls: /etc/mail/certs/mail.pem: error:02001002:system library:fopen:No such file or directory これが原因でしょうか?
補足
先程のエラーログは関係なさそうです。 現在はエラーが出ていませんが解決しない為です。 すみません。
- yosi_yosi
- ベストアンサー率35% (165/468)
#1です。 Couriere-IMAPのどの段階で躓いたのかは分かりませんが、インストール自体は簡単なはずです。 マニュアルを読めば書いてありますが、 rpm -ta courier-imap-2.2.2.tar.bz2 or rpmbuild -ta courier-imap-2.2.2.tar.bz2 # For RPM 4.1 (Red Hat 8.0+) で問題が無ければ(構築するのに必要なパッケージが足りていれば)、rpmファイルが出来上がりますのでそれを使ってインストールできます。 それでIMAP-2002 (UW-IMAP)ですが、本家の開発元ではMaildir形式への対応は行っていませんし、パッチを取り込む気が無いように思われます。が、Maildirに対応するパッチも出ています。 参考URLから「そふとうぇあ - software」 -> 「Pathes」->「imapd extensions」とたどっていけばあります。 他の選択肢としては、qmail付属のpopデーモンもありますがこれを使うぐらいならばMTAもqmailとしたほうが良いかもしれません。 あと、問題は切り分けて追及されたほうが良いと思います。最初の質問で、「メーラーからの応答は”メッセージなし”」と書かれていたので、アクセス制御や基本的な設定はあっています。(このメッセージはPOPデーモンにアクセスできて、その結果が新着メールがありませんでしたと言うことですよね?) POP3でしたら110番ポート、IMAPでしたら143番ポートにtelnetでもアクセスしてサーバーから応答が帰ってきたらアクセス制御は問題ないはずです。(こういったときにIMAPやPOPの基本的なやり取りを覚えておくと便利です。プレーンテキストでの承認でしたら、メールのチェックも手動で出来ます。)
補足
お世話になります。 貴重な助言ありがとうございます。 Couriere-IMAPのインストールで躓いた原因はimap-2002dがインストールされていた事が原因であった為、imap-2002dをアンインストールし再度Couriere-IMAPをインストール行い成功しました。 xinetdを止めて、新たにCouriere-IMAPを起動しましたが、メーラーからの応答は”メッセージなし”だけです。 telnetで確認した結果下記のメッセージが表示されました。 OK [CAPABILITY IMAP4rev1 UIDPLUS CHILDREN NAMESPACE THREAD=ORDEREDSUBJECT THREAD=REFERENCES SORT QUOTA IDLE ACLACL2=UNION STARTTLS] Courier-IMAP ready. Copyright 1998-2004 Double Precision, Inc. See COPYING for distribution information. Connection closed by foreign host. このメッセージで何か解りますでしょうか?
- momoturbo
- ベストアンサー率55% (49/88)
>POP3はxinetdから起動しています /etc/hosts.allowの編集は,おこないましたか? とりあえず、 ipop3d : ALL を追加してみてください。
お礼
早速のご回答ありがとうございます。 ご教授の内容を試みましたが出来ませんでした。 また、何かいい手がございましらご教授の程宜しくお願いします。
お礼
ご丁寧なご回答ありがとうございます。 Courier-IMAPのインストールを試みましたが失敗し、調べてる時にIMAP-2002dがプレインストールされていることに気づきました。 きっとエラーになった原因は同様のソフトがあった為かなと勝手に推察し元々のIMAPを使用するようにチャレンジしましたが残念ながらメッセージを受信出来ませんでした。 設定方法はマニュアルの通りにXINETDから起動するようにフォルダー:xinetd.dのimapファイルのdisable=noを指定し、xinetdを再起動しました。ルーターのポート143も空ける設定しました。 imap-2002dでご存知でしたら助言お願いします。