人に聞けない痔の悩み、これでスッキリ >>

dovecotで接続してメールを取得したいのですが、思うようにいかず困っております。

例)
ユーザーhogehoge

postfixではmail_spool_directoryを/home/hogeに設定しておりますので、mail_location=/home/hoge/hogehogeと設定しました。

しかし、その他の設定も必要なのかうまく取得できません。

これまでメールのディレクトリを変更したことがない為、dovecotの設定について理解出来ていない部分が多いです。

どなたかお力を貸していただけませんか。

よろしくお願いいたします。

A 回答 (3件)

mbox形式は使っていないので……。



>とエラーとなり

でしたら……
mail_location = mbox:~/mbox:INBOX=/home/hoge/%u
でしょうかね。
既読のメールはホームディレクト直下のmboxファイルに移動されるかと思われます。
# 前述の通り、未確認ではありますが……。
    • good
    • 0
この回答へのお礼

再度回答いただきありがとうございました。

教えていただいた設定と、その他を少し変更したところ、無事受信することが出来ました。

とても困ってたので、本当に助かりました。

ありがとうございました。

お礼日時:2013/11/28 14:07

仮想環境のCentOS6.4でちょっと試してみました。



>mail_location = mbox:~/mbox:INBOX=/home/hoge/%u
>既読のメールはホームディレクト直下のmboxファイルに移動されるかと思われます。

移動はされずそのままでした。
mboxファイルではなくmboxディレクトリが作成され、その下にDovecotが管理ファイルを作成していました。
既読情報など…でしょうかね。
バイナリファイルなので内容は不明ですが…。
    • good
    • 0

>postfixではmail_spool_directoryを/home/hogeに設定しておりますので、mail_location=/home/hoge/hogehogeと設定しました。



紛らわしい設定ですねぇ…。
まぁ、メールスプール(メールボックス)をドコに置くか…なんてのはそれぞれの運用次第でしょうが。

postfixのmain.cfでは
mail_spool_directory = /home/hoge
として、mbox形式で使用している。ということでいいんですよね?
実際にメール配信したら/home/hoge以下にファイルが作成されることは確認できているのでしょうか?
確認出来ているとしたら…dovecot.confの設定は
mail_location = mbox:/home/hoge/%u
ではないですかね?

もろもろのパーミッションは正しく設定できている必要がありますけど。
# まぁ、ダメならなんらかログに記録されているでしょう。
# 記録がないようなら一時的にログレベルを上げて確認する。とかでしょうかねぇ…。

この回答への補足

コメントいただきありがとうございます。

>postfixのmain.cfでは
>mail_spool_directory = /home/hoge
>として、mbox形式で使用している。ということでいいんですよね?

その通りです。

ですので、dovecot.confの設定を
mail_location = mbox:/home/hoge/%u
としましたが、

mbox root directory can't be a file: /home/hoge/hogehoge (http://wiki.dovecot.org/MailLocation/Mbox)
mkdir_parents(/home/hoge/hogehoge/.imap/INBOX) failed: Not a directory
stat() failed with mbox file /home/hoge/hogehoge/inbox: Not a directory
Couldn't init INBOX: Internal error
・・・

とエラーとなり、色々と確認したところ、どうもmailbox形式でなくmaildir形式でないと出来ないようなのです。

postfixでも、dovecotでもmailbox形式での設定を行っておりますが、今回の場合はmaildir形式でないと使えないとかあるのでしょうか。

補足日時:2013/11/27 13:45
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aと関連する良く見られている質問

Qmboxと/var/mailのファイルの関係

Redhat系のLinuxを使っています。
/var/mailに溜まるメールと/home/ユーザーディレクトリに溜まるmboxの関係が知りたいのですが、mailコマンドで全部読むと/var/mailのメール(ファイル名はどのように決められているか知りませんが恐らくユーザー名??)が消えます。そのかわりmboxのファイルが更新されているので、こちらに移動しているでしょうか?

私たちがメール(OutlookExpressなど)で読むとき受信するのは/var/mailの方でmboxはクライアントのメーラーからはどういう意味で存在しているのでしょうか?

サーバー側で両方無造作に削除(rm)しても問題ないでしょうか?

詳しいサイトや本も探しています。

Aベストアンサー

mailコマンドをqで終了すると、既読のメールが $HOME/mbox に入り、未読のメールはそのまま/var/mail/$USER に残ります。
すべて既読にすると残す物がないので、/var/mail/$USERが削除されます(OSによってはサイズゼロで残るケースも)。

コマンドや設定で変更することも出来ますが、普通に読んでいると上記のようになります。

mboxのものは読んだ(表示させた)メールなので、不要なら消してもいいです。

>詳しいサイトや本も探しています。

man mail に書いてありますけど、英語はつらいですかね?
BSDなら日本語マニュアルがありました。
http://www.jp.freebsd.org/cgi/mroff.cgi?subdir=man&lc=1&cmd=&man=mail&dir=jpman-5.4.0%2Fman&sect=0
若干違うかもしれませんが、基本は同じです。

QPostfixでメールがおくれない。

こんにちは,
今Postfixでメールを送ろうと思っています。

内部へのメールと外部へのメールを送りたいのですが,

$mail user1
Subject: test
test sentence.
.
CC:
$

としても
user1のメールメッセージには送られておらず,また,

$mail user1.goo.ne.jp
Subject: test
test sentence.
.
CC:
$

としてもuser1.goo.ne.jpに届いていません。

おそらく,/var/log/maillogをみると,
PCNAME postfix/smtp[18514]: 065A92683C3: to=<user1@PCNAME>, relay=none, delay=10, status=deferred (Host or domain name not found. Name service error for name=PCNAME type=MX: Host not found, try again)

とかいてあるので,DNSサーバーとかの設定がたりないか,main.cfの設定がたりないのかと思います。

どうすればよろしいでしょうか。
初心者質問で申し訳ありません。よろしくお願いします。

こんにちは,
今Postfixでメールを送ろうと思っています。

内部へのメールと外部へのメールを送りたいのですが,

$mail user1
Subject: test
test sentence.
.
CC:
$

としても
user1のメールメッセージには送られておらず,また,

$mail user1.goo.ne.jp
Subject: test
test sentence.
.
CC:
$

としてもuser1.goo.ne.jpに届いていません。

おそらく,/var/log/maillogをみると,
PCNAME postfix/smtp[18514]: 065A92683C3: to=<user1@PCNAME>, relay=none, delay=10, status=defer...続きを読む

Aベストアンサー

>(Host or domain name not found. Name service error for name=PCNAME type=MX:
  Host not found, try again)

エラーメッセージのとおりですね。
Postfixが配送先のMXレコードを、DNSに問い合わせても解決しなかったようです。

メールアドレスの「@」の右側は、普通はドメイン名(###.jp)なので、
SMTPサーバ(Postfix、Sendmailなど)は
ドメイン名(###.jp)から、そのドメインのメールサーバ名(mail.###.jpなど)
を知る必要があります。(MX:MailExchangeの解決)

そのためSMTPサーバはDNSに問い合わせてMXレコードから送るべきメールサーバ名を得ます。
ちなみに、MXレコードが得られなかったら、###.jpをメールサーバ名と判断して
送信しようとします。


まずはPostfixの設定以前に、そのサーバで、ちゃんとDNSサーバが指定されて
名前解決できているか、など確認してください。

/etc/resolv.confファイルの見直し
digコマンドでDNSに問い合わせる
ルータ・FWなどでDNSへの問い合わせをが拒否されていないか?

など、うまく動かない原因はいくらでも思いつきます。

>(Host or domain name not found. Name service error for name=PCNAME type=MX:
  Host not found, try again)

エラーメッセージのとおりですね。
Postfixが配送先のMXレコードを、DNSに問い合わせても解決しなかったようです。

メールアドレスの「@」の右側は、普通はドメイン名(###.jp)なので、
SMTPサーバ(Postfix、Sendmailなど)は
ドメイン名(###.jp)から、そのドメインのメールサーバ名(mail.###.jpなど)
を知る必要があります。(MX:MailExchangeの解決)

そのためSMTPサー...続きを読む

Qpostfix,dovecotにて送信はできますが、受信ができません

fedora core5にてメールサーバを構築したいと思っております。各参考サイトから情報を頂き、postfix,dovecotの設定を終えました。
結果、現状送信は問題ない感じです。外のアドレスにも送信できます。
しかし、受信は全くできません。
同LAN内クライアントPCのメーラーに設定を施し、自分宛にメールを送ると、特にエラーもなく送信されますが(ほんとにされているかも不明)、
受信はできません。このとき宛先は"user@mydomain.jp"はもちろん"user@localhost"でも何も起こりません。
ターミナルから"mail user@mydomain.jp"で送っても"/home/user/Maildir/new"には何の変化もありません(そもそもここに届くわけではないのかな・・・)

MXレコードも設定の仕方がよくわからず設定が怪しいですが、とりあえずまだそこまでも進んでない状態なんですよね、きっと・・・。
ちなみにDDNSでMyDNSさんを利用させていただいています。
nslookupとかで見ると優先どうたらの数字が“0”と出ているが、大丈夫なのだろうか・・・しかし、そんな数字入力する所はなさそうですしね。。。
超初心者のため、単語も一つ一つ調べながら進めております。
どなた様か、ひとつお付き合い願えませんでしょうか?

fedora core5にてメールサーバを構築したいと思っております。各参考サイトから情報を頂き、postfix,dovecotの設定を終えました。
結果、現状送信は問題ない感じです。外のアドレスにも送信できます。
しかし、受信は全くできません。
同LAN内クライアントPCのメーラーに設定を施し、自分宛にメールを送ると、特にエラーもなく送信されますが(ほんとにされているかも不明)、
受信はできません。このとき宛先は"user@mydomain.jp"はもちろん"user@localhost"でも何も起こりません。
ターミナルから"mail use...続きを読む

Aベストアンサー

>ターミナルから"mail user@mydomain.jp"で送っても"/home/user/Maildir/new"には何の変化もありません(そもそもここに届くわけではないのかな・・・)

postfixでの配送先が正しくMailDir形式になっていますか?

postfixとdovecotでメールボックスの形式を合わせていないと正しく受け取れませんが確認は済んでいるのでしょうか?
形式とパスも一緒にしないと当然ですがアクセスできません。

maillogには何か記録されていませんか?

参考URL:http://fedorasrv.com/postfix.shtml

QPostfixで外部にメールが送れません

まるごとServerをレンタル(root権限あり)しました。
今までQMailを使ってサーバーの運営をしていたのですが、今回はPostfixで運営する事になりました。
hogehoge.jp(仮名です)というドメインを取得し、DNSにも登録しHPは見る事が出来る状態です。
メールの設定をしているのですが、このサーバーをSMTPとしてメーラーに設定し、このサーバー外のドメイン宛(例えば、fugafuga@gmail.comなど)にメールを送信しようとするとはじかれてしまいます。
サーバー内部のドメイン(バーチャルホスト)宛にはちゃんと送受信出来ます。
外部からのメールもキチンと振り分けられて取得できます。

以下はメールのログです。
-------------------------------------------------
May 16 22:54:06 www postfix/smtpd[23767]: connect from xxx.yyy.bbiq.jp[***.***.***.***]
May 16 22:54:06 www postfix/smtpd[23767]: NOQUEUE: reject: RCPT from xxx.yyy.bbiq.jp[***.***.***.***]: 554 5.7.1 <fugafuga@gmail.com>: Relay access denied; from=<hoge@hogehoge.jp> to=<fugafuga@gmail.com> proto=ESMTP helo=<[127.0.0.1]>
May 16 22:54:08 www postfix/smtpd[23767]: disconnect from xxx.yyy.bbiq.jp[***.***.***.***]
-----------------------------------------------------
ちなみにターミナルを使って内部から fugafuga@gmail.comにmailコマンドでメールを送信したときはちゃんと送信出来ました。

これは何が原因でしょうか?
main.cfのうち関係ありそうなのを列挙します。

inet_interfaces = all
mydestination = $myhostname, localhost.$mydomain, localhost
mynetworks_style = subnet
mynetworks = 168.100.189.0/28, 127.0.0.0/8
smtpd_client_restrictions = permit_mynetworks,reject_unknown_client,permit

他に提示したほうがいい情報があれば教えてください。
よろしくお願いします。

まるごとServerをレンタル(root権限あり)しました。
今までQMailを使ってサーバーの運営をしていたのですが、今回はPostfixで運営する事になりました。
hogehoge.jp(仮名です)というドメインを取得し、DNSにも登録しHPは見る事が出来る状態です。
メールの設定をしているのですが、このサーバーをSMTPとしてメーラーに設定し、このサーバー外のドメイン宛(例えば、fugafuga@gmail.comなど)にメールを送信しようとするとはじかれてしまいます。
サーバー内部のドメイン(バーチャルホスト)宛にはちゃん...続きを読む

Aベストアンサー

> May 16 22:54:06 www postfix/smtpd[23767]: connect from xxx.yyy.bbiq.jp[***.***.***.***]

ここに表示されたIPアドレスって、

> mynetworks = 168.100.189.0/28, 127.0.0.0/8

の範囲にちゃんと入ってますか?
(168.100.189.1~14の範囲に入ってますか?)

Q【MTA】postfixとsendmail【違い】

はじめまして。シアトルでシスアド見習いをしている者です。

今日みなさんにお聞きしたいのは、postfixとsendmailMTAの違いについてです。

いろいろな記事で比較されておりましたが、Google先生に聞いたところ
・sendmailは設定が複雑だけど未知のプロトコルにも対応している
・postfixは設定は簡単、MailDir構造を使用していて、SMTPプロトコルに特化
のような内容が沢山出てきました。

また、itmedia様の過去ログにて
・sendmailは送受信共にsendmailにて可能
・postfixは受信は受けるが、送信は外部MDA(?)
のような違いがあるとも書いてありました。

しかしながら、動作的にこれら二つのMTAが具体的にどう変わるのかについての説明がなされている記事が見当たらず、ここで質問させていただいた次第でございます。

内容としましては現在、システムが使用するMTAとして、現在postfixとsendmailがサーバーに入っております。
システムが使うMTAの設定は

/etc/alternatives/mta -> /etc/alternatives/sendmail.sendmail

となっています。
またMTAの候補は以下の二つです。

/etc/alternatives/sendmail.sendmail
/etc/alternatives/sendmail.postfix

そこで質問なのですがこのmtaのリンクをsendmail.sendmail -> sendmail.postfixに変更した場合、何か具体的に動作の違いは出てくるのでしょうか?

よろしくお願いいたします。

はじめまして。シアトルでシスアド見習いをしている者です。

今日みなさんにお聞きしたいのは、postfixとsendmailMTAの違いについてです。

いろいろな記事で比較されておりましたが、Google先生に聞いたところ
・sendmailは設定が複雑だけど未知のプロトコルにも対応している
・postfixは設定は簡単、MailDir構造を使用していて、SMTPプロトコルに特化
のような内容が沢山出てきました。

また、itmedia様の過去ログにて
・sendmailは送受信共にsendmailにて可能
・postfixは受信は受けるが、送信は外部MDA(?...続きを読む

Aベストアンサー

どちらもデフォルトの状態であればローカル配送のみでしょうから、SMTPとしての表面的な動作にそれほど違いはありません。

altanativesして不都合が生じるとしたら、コマンドベースのsendmailのリンクが張り替えられてオプションに違いがでてくるので、それを呼び出してるプログラム(CGIなど)がネイティブsendmail固有のオプションを付加している場合はエラーになるってくらいですかね。


まあそれはあくまでも表面的な動作としてであってです。内部的にはたくさん違いがありますよ。
SMTPサーバとして稼働済みのSendmailをPostfixに置き換えようとしているのだとしたら、話はもっとややこしくなると思います。

QPostfixで外部にメール送信ができません。

Postfixで外部にメール送信ができません。

お世話になります。いろいろなサイトやブログを参考に、自宅サーバーにPostfixを入れ、メールサーバーを構築していますが、外部へのメール送信ができません(似たような質問が、過去にこのサイトにも幾つかありますが、解決できませんでしたので、ここに改めて質問させてください)。なお、固定IPではなく、ダイナミックDNS(mydns.jpを利用)しています。

現在の状況ですが、例えばコマンドラインから外部のアドレス「USER@hoge.com」へメールを送るとします。

[root@localhost /]# mail USER@hoge.com

すると、相手には届かず、「/var/log/maillog」には以下のような記録が残ります。


May 4 20:18:39 localhost postfix/qmgr[17170]: 0875F2C0C4C: from=<>, size=2213, nrcpt=1 (queue active)
May 4 20:18:39 localhost postfix/bounce[17312]: E80932C0C4B: sender non-delivery notification: 0875F2C0C4C
May 4 20:18:39 localhost postfix/qmgr[17170]: E80932C0C4B: removed
May 4 20:18:39 localhost postfix/local[17313]: 0875F2C0C4C: to=<root@hoge.mydns.jp>, relay=local, delay=0.02, delays=0.01/0.01/0/0, dsn=2.0.0, status=sent (delivered to maildir)
May 4 20:18:39 localhost postfix/qmgr[17170]: 0875F2C0C4C: removed


OSはCentOS 5.4を利用しており、Postfixは2.3.3です。下に「postconf -n」の結果を記載します。


alias_database = hash:/etc/aliases
alias_maps = hash:/etc/aliases
command_directory = /usr/sbin
config_directory = /etc/postfix
daemon_directory = /usr/libexec/postfix
debug_peer_level = 2
home_mailbox = Maildir/
html_directory = no
inet_interfaces = all
mail_owner = postfix
mailq_path = /usr/bin/mailq.postfix
manpage_directory = /usr/share/man
mydestination = $myhostname, localhost.$mydomain, localhost, $mydomain
mydomain = hoge.mydns.jp
myhostname = www.hoge.mydns.jp
myorigin = $mydomain
newaliases_path = /usr/bin/newaliases.postfix
queue_directory = /var/spool/postfix
readme_directory = /usr/share/doc/postfix-2.3.3/README_FILES
relayhost = (ISPのSMTPサーバードメインを記載)
sample_directory = /usr/share/doc/postfix-2.3.3/samples
sendmail_path = /usr/sbin/sendmail.postfix
setgid_group = postdrop
smtpd_banner = $myhostname ESMTP unknown
unknown_local_recipient_reject_code = 550


ポートに関しては「telnet localhost 25」で接続できることを確認できており、DNSについてはdigコマンドを使い、正引き、逆引き、MXレコードを確認しましたが、全て「status:NOERROR」で結果が表示されます。ここからどのようにすれば、メール送信ができるようになるでしょうか?皆様のお知恵をお貸しください。よろしくお願いします。

Postfixで外部にメール送信ができません。

お世話になります。いろいろなサイトやブログを参考に、自宅サーバーにPostfixを入れ、メールサーバーを構築していますが、外部へのメール送信ができません(似たような質問が、過去にこのサイトにも幾つかありますが、解決できませんでしたので、ここに改めて質問させてください)。なお、固定IPではなく、ダイナミックDNS(mydns.jpを利用)しています。

現在の状況ですが、例えばコマンドラインから外部のアドレス「USER@hoge.com」へメールを送るとします。

[root...続きを読む

Aベストアンサー

>ポートに関しては「telnet localhost 25」で接続できることを確認できており、

書き間違いかもしれませんが、これは意味ないです。

telnet ISPのSMTPサーバ 25
で、つないでみて、
HELO hoge.mydns.jp
MAIL FROM: root@hoge.mydns.jp
RCPT TO: you@yourISPmail.adress
DATA
test
.
QUIT
と、メールが送れるかどうか?

プロバイダによっては、上記では送信できず、SMTP認証が必要だったり、POP before SMTPが必要だったりします。多分今時はそれが普通。
PoftfixでどうやってSMTP認証に対応するかについては、検索すれば情報があるかと。

Qpostfixでユーザごとに最大容量を制限したい

お世話になります。
postfixの機能を利用してユーザのメール容量の制限をかけたいと思っております。

Quotaで制限をかけるやり方もあるそうですが、POP時エラーが出てしまうことがあるそうです。
postfixの機能だけで制限を実現できればと思った次第です。

調べたところ
mailbox_size_limit = 51200000
という項目で制限がかけられることはわかりました。
ちなみにメールはMaildir形式で行っています。
実現したいのはユーザ毎にメールボックスの容量を制限したいのです。

ユーザAはデフォルトの50M
ユーザBは100M
ユーザCは500M
   :
   :
というイメージになります。

何か良い方法や別の仕組みとあわせて上記のような事を実現していますというような設定例ありましたらアドバイスお願いいたします。

■現在仕様
fedora3
postfix-2.1.5

よろしくお願いいたします。

Aベストアンサー

postfixの設定によりますが、うちでは
local_transport = virtual
なので、
virtual_mailbox_limit_maps = hash:/etc/postfix/vquota
という行を追加し、/etc/postfix/vquota ファイルにてユーザごとに容量制限かけています。

Q起動しているサービスを確認するコマンド

初歩的な質問で恐縮ですが、ご教示いただけますと幸いです。

起動しているサービスを確認するために以下の2つのコマンドを打ってみるのですが、結果(出て来るサービス名)が違います。
このコマンドの違いについてご教示いただけますでしょうか。

(1)service --status-all
(2)chkconfig --list

Aベストアンサー

(1)service --status-all

サービスの現在のステータスを調べるコマンド

(2)chkconfig --list

OSのブート時に自動起動するサービスを調べるコマンド

違いが出るのは、
・ブート後に手動あるいは他のコマンドから起動したサービス
・ブート後に手動あるいは他のコマンドから、あるいはエラーで停止したサービス
・ブート後に実行はされるがすぐに停止して常駐しないサービス (ntpdate とか)

あるいは、(1)ではサービス名が表示されない物もあるので、どのサービスがどんなステータス出力をするのか知っておく必要もありますね。(service network statusとか)

QNTP の TCPポートは?

NTPは123/UDPでようは足りると思うのですが、
WELL KNOWN PORTとかいろいろな資料に「123/TCP」ポートが割当たってます。
ntpd,ntpdate等でNTPを使う場合、実際には123/TCPは使われているのでしょうか?

Aベストアンサー

RFC1305では「ntpには123/udpを割り当てる」となっていますが、RFC1700では「123 ntp」となっており、「123/udp」と明示されているわけではありません。
よって、「123/tcp ntp」が間違っている(または使えない)という明確な根拠にはなりません。

「現状では『123/tcp ntp』を実装するための定義が存在しない」程度に考えた方が良いと思います。

ただ、将来的にRFC2030のSNTPが(IPv6対応などの点で)主流になる可能性があるので、「123/tcp ntp」は定義されない可能性もあります。

Qレッドハットのバージョン確認方法

自分のサーバで使用しているREDHATのバージョン確認はどうすればいいのでしょうか?

more /etc/issue
とやっても英文しか出てきませんでした。

uname -all
でもカーネルのバージョンは出るのですが、REDHATのバージョンは出ませんでした。

Aベストアンサー

> more /etc/issue
> とやっても英文しか出てきませんでした。

その英文にはRedHatのバージョンは書いてなかったのですか?
書いていなかったとしたら、管理者により編集されている可能性
がありますね。

cat /etc/redhat-release

ではいかがでしょう?
やっぱり英文ですけど。

rpm -q redhat-release

でもいいかも


人気Q&Aランキング