Postfix(8)
■ このスレッドは過去ログ倉庫に格納されています
0001名無しさん@お腹いっぱい。
2008/11/29(土) 19:18:18●リンク
本家
http://www.postfix.org/
Postfix のぺーじ (ドキュメントの日本語訳、MLなど)
http://www.kobitosan.net/postfix/
過去スレ、関連スレなどは>>2-4あたり
0183名無しさん@お腹いっぱい。
2009/05/09(土) 14:33:11俺はあんまりPostfixに詳しいわけじゃないけど、たぶん考え方が逆。
> relayhost = 192.168.1.1
これが設定してあると、「自分宛以外」のすべてのメールをrelayhostに渡す。
さらに、
> relay_domains = $mydomain
が設定してあると、$mydomain宛のメールもrelayhostに渡すようになる。
mydestination = $myhostname, localhost, $mydomain
みたいにmydestinationに複数設定してあると、$mydomain以外で自分宛と
見なされるメールはローカルのメールボックスに配信されるはず。
0184名無しさん@お腹いっぱい。
2009/05/10(日) 00:36:36正確な説明ではありませんが、ざっとこんな感じとして聞いてください。
postfix は許可されていないリレーは行いません。つまり自分宛のメールしか受けつけません。
自分宛のメールとは mydesitination で指定されているものです。
リレーが許可される条件は 2つあって、一つは mynetworks から送られてきたものです。
通常 mynetworks には内部LANが指定されています。
もう一つの許可条件が、そのメールが relay_domains 宛ての場合です。
relayhost はローカルに配信するのではないメールを送るホストです。
直接インターネット上のメールサーバーへ送ることができる場合は設定する必要はありません。
> 受け付けたら内部のサーバに転送
とのことですが、まさにそういう場合に内部のサーバをrelayhostとして設定します。
0185名無しさん@お腹いっぱい。
2009/05/10(日) 00:43:29補足しておきます。
> relay_domains = $mydomain
> これを設定していると「自分のドメイン宛」のみrelayhostへ飛ばすと解釈できるのですが、
relay_domains の設定は、自分のドメイン宛てのみをrelayhostへ飛ばすという意味ではありません。
> なぜすべてのドメインがrelayhostへ飛ぶのでしょうか?
relayhost が設定されていれば(ローカルに配信する以外の)すべてのメールをrelyahostへ飛ばします。
> relayhostがあれば、relay_domainsは無視するのでしょうか?
relyahost を指定することと relay_domains の設定は別々のものです。
0186182
2009/05/10(日) 04:55:45ご丁寧にレスをいただきまして、ありがとうございます。
いただいたアドバイスとmain.cfの英語を自分なりに解釈してほぼ理解できました。
送信用サーバ(25 & 587)と受信用サーバ(110 & 995)を用意していて(ローカル内のNASにメール保存)
証明書が受信用サーバにしかないので、smtpsを受信サーバ:465に追加設定しようとしたことがことの始まりです。
main.cfは、ほぼデフォルトで
master.cfを
smtps inet n - n - - smtpd
-o smtpd_tls_wrappermode=yes
-o smtpd_sasl_auth_enable=yes
-o smtpd_recipient_restrictions=permit_sasl_authenticated,reject_unauth_destination
と設定しました。
SSL接続&smtpd認証ができれば、すべてのメールはrelayhostである送信サーバにrelayして、
SSL接続&smtpd認証ができなくても、relay_domainsに記載したドメインであれば、relayできました。
もちろん運用は前者です。
少しずつ拡張ができて楽しくなってきました。
ありがとうございました。
0187名無しさん@お腹いっぱい。
2009/05/10(日) 18:00:15来てるっぽいんですが、みなさんどうやって対応してるんでしょうか?
たとえば名前解決で127.0.0.2のように設定してある外部ホストから
接続を試みられるとpostfixがローカルネットワークと誤認して
中継を許してしまうようなんですが。
ローカルネットワークは制限すればよいとして、
ローカルホスト、つまり127.0.0.1を
設定されたホストから中継されたらどうしようもないような。
ローカルからも認証要求するようにしたら恐ろしく使い勝手が下がりますし。
0188名無しさん@お腹いっぱい。
2009/05/10(日) 18:19:480189名無しさん@お腹いっぱい。
2009/05/10(日) 21:23:58>接続を試みられるとpostfixがローカルネットワークと誤認して
ねーよ。
正引きで127.0.0.2に解決されるとしても、
接続を受ける側は正引きじゃなくて逆引きするんだから関係ない。
0190名無しさん@お腹いっぱい。
2009/05/10(日) 23:16:15正引きと逆引きの区別が付かないの?
0191名無しさん@お腹いっぱい。
2009/05/11(月) 01:49:59トロイとか
0192名無しさん@お腹いっぱい。
2009/05/11(月) 09:52:39そういえば、個人サーバとかでメールサーバとwebサーバ兼用していると、
webの脆弱性を足がかりに、cgiを設置されたりしてspam配信元になったり
することもあるね。
0193名無しさん@お腹いっぱい。
2009/05/11(月) 23:28:42対する応答はどこへ送ることになるのだろうか?
0194名無しさん@お腹いっぱい。
2009/05/12(火) 01:30:090195名無しさん@お腹いっぱい。
2009/05/13(水) 01:56:210196名無しさん@お腹いっぱい。
2009/05/13(水) 12:05:17と思ったら、やっぱり頭が悪かった。
0197名無しさん@お腹いっぱい。
2009/05/17(日) 16:14:10適切なところに誘導してくれるとうれしいです。
今、携帯電話に職場で連絡メールを送ることがあるんですけど、
なんか、送ってくれる人が少人数ずつ分けて送ってくれてるみたいなんです。
携帯メールは良く知らないですけど、結構大変そうです。
で、職場のメールサーバのailiasに設定すれば省力化になるし、連絡担当者が変わった場合でも
混乱が少ないかなぁ。と思っています。
で、質問なのですが、
確か、もう大昔かも知れませんが、携帯メールをいっぺんに送ろうとすると拒否られるって話を聞いた覚えがあります。
これって今もなのですか ?
また、こういう場合ってどういう方法が一番モアベターなのですか ?
教えてくだしあ。
0198名無しさん@お腹いっぱい。
2009/05/17(日) 17:20:28今でもダメだよ。
0199名無しさん@お腹いっぱい。
2009/05/18(月) 10:49:26Postfix 2.6 とか来てたからぶっ込んでみた。
日記終わり。
0200名無しさん@お腹いっぱい。
2009/05/18(月) 10:50:510201名無しさん@お腹いっぱい。
2009/05/18(月) 13:34:47Internet Mail System 総合スレ 3
http://pc12.2ch.net/test/read.cgi/unix/1128256415/
0203名無しさん@お腹いっぱい。
2009/05/25(月) 20:23:10正確にはメール本文での CR LF が CR CR LF になっちゃうのを止めたいんだけど。。。
色々調べてるんだけど見つからない・・・・orz
[CR LF]、[\r\n]、[0x0d 0x0a]とか表記の違いも探し辛いし。。。疲れた。。。
0204名無しさん@お腹いっぱい。
2009/05/26(火) 08:58:230205203
2009/05/26(火) 10:10:24出て行く時(送信時)です。
cronの実行結果のメールが無駄に改行されてるのでバイナリエディタで
見たら CR CR LF に書き換えられてました。一応、
echo -e "CR+LF:\r\nLF:\n"|mail -s"CRLF test" root
でも同じ様に化けてます。
>203の書き込み後にさらに調べた結果、
sendmail はヘッダーの一行目(うろ覚えです)が CRLF だったら、LF を CRLF に
書き換える(LFだったら何もしない)みたいな記事と、postfixのchanglog
>19981007
>Compatibility: if the first input line ends in CRLF, the
>sendmail posting agent will treat all CRLF as LF. Otherwise,
>CRLF is left alone. This is a compromise between sendmail
>compatibility (all lines end in CRLF) and binary transparency
>(some, but not all, lines contain CRLF).
など関係してそうな話は見つかったんですが、やっぱり具体的な
解決策は見つからず。。。orz
0206名無しさん@お腹いっぱい。
2009/05/26(火) 14:38:42cronで実行するコマンドの標準出力をtr -d '\r'に通すとかで。
0207名無しさん@お腹いっぱい。
2009/05/26(火) 17:10:47mainやmaster更新時は必要だと思いますが・・。
0208名無しさん@お腹いっぱい。
2009/05/26(火) 20:28:25http://www.postfix.org/DATABASE_README.html#detect
0209207
2009/05/26(火) 21:10:30ttp://www.postfix-jp.info/trans-2.3/jhtml/DATABASE_README.html#safe_db
ありがとうございました。
気にすることに越したことはないですね。
0211名無しさん@お腹いっぱい。
2009/05/27(水) 00:40:120212名無しさん@お腹いっぱい。
2009/05/27(水) 01:15:46引用している部分はreloadとは関係ないんだが…
0213名無しさん@お腹いっぱい。
2009/05/27(水) 02:09:4825番ポートと587番ポートでログを分けるということはできるのでしょうか?
master.cfで、ログの場所等を決めるような事ができるのでしょうか?
0214213
2009/05/28(木) 01:14:480215名無しさん@お腹いっぱい。
2009/05/28(木) 01:17:26せっかくだから、どうやって解決したか詳しく
0216名無しさん@お腹いっぱい。
2009/05/28(木) 04:31:45本格的な炒飯を作るには鍋はよく加熱しておく。
まず、第一に鍋を加熱しておくことで火力の不足を補いましょう。
下ろしたての鍋は空焚きしてから油を回す油回しを忘れないようにしましょう。
テフロン加工のフライパンは、加熱しすぎると良くないのでほどほどにしましょう。
0217名無しさん@お腹いっぱい。
2009/05/28(木) 10:24:310218名無しさん@お腹いっぱい。
2009/05/28(木) 15:19:35何も考えずにアップグレードのコマンドを打ちますか?
下位互換性があるとは思いますが、なかなか勇気が出ません。
マイナーバージョンアップだけは積極的に行う自分に、嫁さんも呆れています。
0219名無しさん@お腹いっぱい。
2009/05/28(木) 18:07:01メジャー上げなら新機能や変更点とconfをよく読む。
あとは、最悪、戻せるようにバックアップ。
ま、何も考えずはないわ。
0221名無しさん@お腹いっぱい。
2009/06/01(月) 05:40:48active queueに古いメールが溜まってます。
何が考えられる?
0222名無しさん@お腹いっぱい。
2009/06/03(水) 23:17:440223名無しさん@お腹いっぱい。
2009/06/03(水) 23:33:52その古いメールを何とかしようという試みはログに出てる?
0224名無しさん@お腹いっぱい。
2009/06/04(木) 08:00:46おまえが馬鹿だということ。
0225名無しさん@お腹いっぱい。
2009/06/09(火) 02:14:25reject_rbl_client は、IPアドレスのみ有効?
spamasassinやf-secure等を使わないとSURBLの排除はできないのでしょうか?
0226名無しさん@お腹いっぱい。
2009/06/09(火) 02:21:080228名無しさん@お腹いっぱい。
2009/06/09(火) 03:47:44ぼでぃーちぇっく
0229名無しさん@お腹いっぱい。
2009/06/09(火) 21:35:34お前さん、用語だけ理解して
どういう仕組みで動作しているか理解できていないだろう。
ググれば判るから、もっと勉強しておいで。
0230名無しさん@お腹いっぱい。
2009/06/09(火) 22:45:12今まで気づかなかった。
always_add_missing_headers設定して解決
0231名無しさん@お腹いっぱい。
2009/06/17(水) 05:55:40qmail+postfix+vpopmailの環境で自サーバ内のバーチャルドメインにperlからsendmail(qmail)メールが届きません。
maillogを見たら
qmail: ... starting delivery 4: msg 16908638 to local example.com-acount@example.com
となっていました。
acount@example.comに送りたいのにexample.com-acount@example.comなので届かないんでしょうけれど・・・
qmailの可能性でも調べましたが、postfixの設定というのが2件引っかかっただけで解決には至らず。
0232名無しさん@お腹いっぱい。
2009/06/17(水) 05:57:14------------------------------------------------------------------------
グーグル先生でもダメだったので、諸先輩方に質問です。
qmail+postfix+vpopmailの環境で自サーバ内のバーチャルドメインにperlからsendmail(qmail)メールが届きません。
maillogを見たら
qmail: ... starting delivery 4: msg 16908638 to local example.com-acount@example.com
となっていました。
acount@example.comに送りたいのにexample.com-acount@example.comなので届かないんでしょうけれど・・・
qmailの可能性でも調べましたが、postfixの設定というのが2件引っかかっただけで解決には至らず。
どなたか解決の方法をご存知の方がいたらご教授願えればと思います。
0233名無しさん@お腹いっぱい。
2009/06/17(水) 06:24:540234名無しさん@お腹いっぱい。
2009/06/17(水) 06:37:50すみません、色々自分がおかしいみたいです。
maillogにqmailって書いてあるのにpostfix調べてました。
qmailで調べ直してきます・・・
0235名無しさん@お腹いっぱい。
2009/07/04(土) 22:36:46特定IPからのアクセスのみsmtpd_client_connection_count_limitを大きくする方法
をご存じ無いでしょうか?
たとえば、デフォルトはsmtpd_client_connection_count_limit = 10
192.168.0.1からは、smtpd_client_connection_count_limit = 50
という感じの事がしたいです。
よろしくお願いします。
0236名無しさん@お腹いっぱい。
2009/07/05(日) 10:24:10ipfw,iptables等で特定のIPアドレスから来たsmtpセッションを
別ポートのsmtpdに振り分ける
0237名無しさん@お腹いっぱい。
2009/07/05(日) 19:11:57レスありがとう。
其の手があった。目から鱗です。
0238名無しさん@お腹いっぱい。
2009/07/06(月) 18:29:310239名無しさん@お腹いっぱい。
2009/07/06(月) 19:12:35大量送信してくるアホを蹴る手段のひとつとして ratecontrol を使う sendmail と、
リソースが枯渇しないようにするための緊急回避として anvil を使う postsifx とで
実装ポリシーがまったく違うので、今後も postfix でできるようにはならないだろうなー。
0240名無しさん@お腹いっぱい。
2009/07/06(月) 20:27:293週間に一度ぐらいのペースでそういう攻撃されるので、うざいうざい…
0241名無しさん@お腹いっぱい。
2009/07/06(月) 20:30:33ここ1週間毎日攻撃されております。
iptables にルールを追加するんですが、モグラ叩きみたいな
感じで切りがないです。
なんか、良い方法ないですかね?
0242名無しさん@お腹いっぱい。
2009/07/06(月) 21:03:47金で解決するかポリシーで解決するか。
傾向を調べて日本国外からの爆撃がほとんどだったら
>>236でまとめて制限するとかすればいいんじゃね
0243名無しさん@お腹いっぱい。
2009/07/06(月) 23:03:350244名無しさん@お腹いっぱい。
2009/07/10(金) 19:15:34Postfix 2.4を2.6の最新版にアップグレードして
postgreyも最新のものにしようと思っているのですが
# portupgrade -o mail/postfix -f mail/postfix24
# portupgrade -R mail/postgrey
で大丈夫なんでしょうか?
設定ファイルの書き方に変更があるならバックアップをとろうと思うんですが
0245名無しさん@お腹いっぱい。
2009/07/14(火) 21:21:02postfix set-permissions
でいいんじゃね
0246名無しさん@お腹いっぱい。
2009/07/24(金) 21:09:220247名無しさん@お腹いっぱい。
2009/07/25(土) 11:54:070248名無しさん@お腹いっぱい。
2009/07/28(火) 00:37:03どうせ大した人数もいないんだからGmailでもなんでもSaaSつかえばよかろうに
0249名無しさん@お腹いっぱい。
2009/07/28(火) 12:46:41ウェブサーバーとかはイントラネットで立てて実験してってできるじゃないですかあ
でもメールサーバーってほんとに送受信できるかどうかって他所のサーバーと
やってみるまでわかんないじゃないですかあ
そこがこうヒリヒリする感じ?ああ本物のサーバーだなって思えるじゃないですかあ
やっぱりただのサーバーとメールサーバーとは隔絶した存在なんですよ
ギンヌンガガップがあるんですよ
0250名無しさん@お腹いっぱい。
2009/07/28(火) 13:15:220251名無しさん@お腹いっぱい。
2009/08/09(日) 01:09:53直接SMTPたたかれるとユーザ名等がログに残らないのですが、
ユーザ名を特定する方法はないでしょうか?
0252251
2009/08/09(日) 01:20:18SMTPポートへの接続はローカルからでも拒否して、
postfix.sendmail
ttp://www.postfix-jp.info/trans-2.2/jhtml/mailq.1.html
への接続はローカルから許可する、なんてことは可能でしょうか?
理想は 251のようにローカルホスからの接続の場合、ユーザ名をログすることなんですが、
なんか厳しい気がするので。
0253名無しさん@お腹いっぱい。
2009/08/09(日) 01:41:13「SMTPポートへの接続」と「postfix.sendmailへの接続」っつーのはどう違うんだ?
それぞれ違うTCPポートで起動させてんのか?
まあ、プロトコルやMTAについてよく判ってないようなので、君には無理。
0254251
2009/08/09(日) 01:58:31postfix.sendmailが最終的にSMTP接続を行うと考えれば結局は同じになるかと思います。
なんで252の件もやはり難しそうですよね。
ローカルであろうがなかろうが、SMTP認証をつけてしまおうかとも
考えましたが、そうなるとpostfix.sendmail使用の際も認証が必要、となり、
実質的にpostfix.sendmailを改造しないと対応できない気がします。
postfix.sendmailは使用ユーザをログするようになってるようなので
使用は問題ないのですが、
直にSMTP接続されると使用者の特定方法がなくて困っています。
ローカルからは接続許可しているケースが一般的だと思います。
この場合、極端な事例だと、自社に大量スパマーがいたら
送信行動の特定ができなくなってしまうわけですが、
このあたり他の方はどのような対応なさってるんでしょうか?
ローカルポートへの接続状況を監視するようなプログラムってないでしょうか?
0255251
2009/08/09(日) 02:04:16netstat をもう少しログや接続ユーザ等詳細に残せるような感じなものが
あればとりあえずの目的は達成できそうなのですが。
0256名無しさん@お腹いっぱい。
2009/08/09(日) 11:08:04postfixがidentサポートしてればいいんだろうけど、サポートしてなさげだし。
0257名無しさん@お腹いっぱい。
2009/08/10(月) 11:33:310258名無しさん@お腹いっぱい。
2009/08/11(火) 10:10:28良く読んだらspammer防ぎたいってだけだからauth強要でいいのか。
0259名無しさん@お腹いっぱい。
2009/08/14(金) 08:03:240260名無しさん@お腹いっぱい。
2009/08/15(土) 20:23:47フィールドを追加する等加工をして通すなんて処理は出来るのでしょうか?
なるべくサーバでは捨てないでクライアントで捨てる方向にしたいのですが・・・。
0261名無しさん@お腹いっぱい。
2009/08/15(土) 22:24:24つ spamassassin
0262260
2009/08/16(日) 00:43:18spamassassinってベジアンフィルタだけだと思ってスルーしてたけど
RBLとかにも対応してるのね。ベジアンフィルタOFFで使えるなら
これが良さそう。ちょっと試してみます。ありがとー
0263260
2009/08/16(日) 06:38:57procmailかamavisd-newあたりをかまさないと駄目なんだと思うけど
ベジアンフィルター使わないならちょっと大げさな気がしてきた
もうちょっとシンプルな方法無いのかな・・・
0264名無しさん@お腹いっぱい。
2009/08/16(日) 07:08:58もうちょっと調べろよ…
つ spamass-milter
0265名無しさん@お腹いっぱい。
2009/08/16(日) 08:16:47http://www.postfix-jp.info/trans-2.1/jhtml/access.5.html
PREPEND headername: headervalue
メッセージの前に指定されたメッセージヘッダを付加します。このアク
シ ョンが複数回使われると、最初に付加されたヘッダは2番目などのヘ
ッダの前に現れます。
注意: このアクションは複数行のメッセージヘッダをサポートしていま
せん。
この機能は Postfix 2.1 以降で使えます。
0266名無しさん@お腹いっぱい。
2009/08/17(月) 12:26:54メールの転送について聞きたいのですが、
Aから、Bに届いたメールをCに転送すると、Cには差出人が
Aであると表示されます。これをBと表示するにはどんな設定が必要でしょうか。
Bのアドレスがpostfixで提供しているアドレスです。
0267名無しさん@お腹いっぱい。
2009/08/17(月) 12:51:45いやほんとに
0268名無しさん@お腹いっぱい。
2009/08/17(月) 13:10:45PostfixのRBLの機能使って、PREPENDでヘッダにメッセージ付加は出来ないんじゃない?
やっぱSAとか使わん限りむりじゃないかなあ。
0269266
2009/08/17(月) 15:53:38MySQLのaliasテーブルにowner-***を追加してみたけど、ダメだった。
http://mtlab.ecn.fpu.ac.jp/WSM_2005/051007121618.html
Try & Errorでやるようなスキルじゃpostfix扱うべきじゃないんですかねorz
0270名無しさん@お腹いっぱい。
2009/08/17(月) 16:23:13悪いことはいわん
明らかに envelope と header の区別もついていなさそうだし
forward が何をさすのかも分かっていないようなので
氏ねとか逝ってしまえとまでは言わないが
基本をきちんと勉強してからにしてくれ
設定とかじゃなくて「メールとは何か」ってことを、ね
そして上記のキーワードの意味が分かってからにしなさい
0271266
2009/08/17(月) 16:31:33勘違いしてました。全然分かってなかったですね。ちょっと勉強しなおしてきます(汗;
0272名無しさん@お腹いっぱい。
2009/09/01(火) 16:22:41が出力される時の条件って、smtpd_hard_error_limit に依存するのですか?
出力条件が良く判らないので、ご存じの方お教えください。
0273名無しさん@お腹いっぱい。
2009/09/01(火) 20:20:110274名無しさん@お腹いっぱい。
2009/09/04(金) 09:34:32smtpd_soft_error_limit
0275名無しさん@お腹いっぱい。
2009/09/10(木) 14:37:02達しちゃうんです。limitを多くしても根本的な解決にならないような気がして、この
不要なsmtpdをすぐに停止するようなオプションってあるのでしょうか。
0276名無しさん@お腹いっぱい。
2009/09/10(木) 14:40:350277275
2009/09/10(木) 14:48:13あーでも拒否っても無視してデータ送ってくる類もいますか。
0278名無しさん@お腹いっぱい。
2009/09/10(木) 15:17:26> 一定時間待っててもなんもデータが送られてこない接続。ですかね?
どの段階でかよくわからんが
smtp_なんちゃら_timeout でいいんじゃね。
0279名無しさん@お腹いっぱい。
2009/09/10(木) 15:18:140280275
2009/09/10(木) 17:29:39どもです。タイムアウトの設定があったのですね。
とりあえずこんな感じで短めにしてみたところ前より処理が早くなりました。
もうちょい様子を見てまたご報告します。
anvil_rate_time_unit = 5
default_process_limit = 500
smtp_connect_timeout = 10s
smtp_helo_timeout = 60s
smtp_mail_timeout = 60s
smtp_rcpt_timeout = 60s
smtp_data_init_timeout = 45s
smtp_data_xfer_timeout = 60s
smtp_data_done_timeout = 60s
smtp_quit_timeout = 60s
smtp_mx_session_limit = 0
0281名無しさん@お腹いっぱい。
2009/09/10(木) 17:36:01ぜんぜん関係ないパラメータいじってんのに効果あるわけねーよ。
ちっとは自分でマニュアル調べろ。
0282280
2009/09/10(木) 17:48:26anvil_rate_time_unit ですよね?マニュアル読みました・・・orz
■ このスレッドは過去ログ倉庫に格納されています