08/06/15 15:27:41
PostfixのRPM作成したいのですが、やり方がいまいちわかりません。
他のOSSなら、tar展開→configure→make→checkinstallでrpm作成
なんですが、Postfixってtar展開しても、configureが無いので、
どうしたらいいもんかと。
751:名無しさん@お腹いっぱい。
08/06/15 15:29:08
>>750
板違い消えろ。
752:名無しさん@お腹いっぱい。
08/06/15 17:25:37
>>751 お前もな
753:名無しさん@お腹いっぱい。
08/06/15 17:33:58
>>750
spec書いてビルドすりゃいいだろ。
分からなけりゃLinux板で聞け。postfixは関係無いから。
754:名無しさん@お腹いっぱい。
08/06/15 18:28:28
>>752
仕事で必要ならコンサルタントを雇いなさい。
755:名無しさん@お腹いっぱい。
08/06/15 23:31:50
>>752 アンカー位置おかしくね?w
756:名無しさん@お腹いっぱい。
08/06/15 23:35:14
FreeBSD の port の 2.5.2 マダ~
757:名無しさん@お腹いっぱい。
08/06/16 16:10:28
すみません、行き詰ってしまったので助けてください。
RedHat9をこの度Fedora9にしたのですがPostfixでのメール送信ができずにいます。
正確にはlocalhost以外からの25番接続すらできずにいます。
telnet localhost 25 ←接続できる
telnet 127.0.0.1 25 ←接続できる
telnet 192.168.1.30 25 ←接続できない(IPアドレスはifconfigでも確認済み)
iptablesをまず疑ったのですが、service iptables stopでiptablesを止めても上記は変わりませんでした。
mynetworksは以下のようになっています。
mynetworks = 192.168.1.0/24, 127.0.0.0/8
上記以外も設定はRedHat9の頃のをそのまま使っています。
他にはどういう理由が考えられるでしょうか?
758:名無しさん@お腹いっぱい。
08/06/16 16:24:30
>>757
netstatでポートが開いてることくらいは当然確認してるんだよな?
759:名無しさん@お腹いっぱい。
08/06/16 16:30:38
tcp 0 0 127.0.0.1:25 0.0.0.0:* LISTEN
あれぇ?orz
760:名無しさん@お腹いっぱい。
08/06/16 16:31:24
開いてることっていうか、listen() してることじゃね?
761:名無しさん@お腹いっぱい。
08/06/16 16:31:52
あー、ちがうか。
すまん。
762:名無しさん@お腹いっぱい。
08/06/16 16:39:10
service postfix restartしたらなんか繋がるようになりました。
restartは何度か試してたはずなのに・・・。
お騒がせしました。orz
763:名無しさん@お腹いっぱい。
08/06/16 16:43:54
restart より reload じゃね?
764:名無しさん@お腹いっぱい。
08/06/16 16:50:43
reloadはrestart以上に何度も繰り返してました。
765:名無しさん@お腹いっぱい。
08/06/16 16:53:32
>>759
基本すら確認せずパケットフィルタを先に疑うとは論理も何もないアホだな
>>762
その何度もrestartした際にちゃんとプロセスの様子は確認したのか?
自分がやったことを振り返らず、考えず、まずは人に訊く
そういうヤツは本当に害悪だ
766:名無しさん@お腹いっぱい。
08/06/16 17:03:46
>>765
すみません、netstatはすっかり抜けてました。
朝からずっと格闘してて一人でググりながら色々試し、それでもどうにもなくなってきてここに来ました。
ここに来る前にもう一度だけでもrestartしてみるべきでした。
すみません。
767:名無しさん@お腹いっぱい。
08/06/16 17:05:48
ログ読んで restart のタイミング調べて
設定ファイルのタイムスタンプと比べてみ。
768:名無しさん@お腹いっぱい。
08/06/16 18:16:38
>>766
行き詰まったら休憩してクールダウンすることも大切
いたずらに焦ってしがみついても見落とすことが増える
あえて別のことを考えて凝り固まった視点や思考をほぐすのもいい
頭が冷えたら、現状を整理する、基本に立ち返る、資料を調べ直すなどなど
こうすることであっさり答えが見つかったりする
なお今回の顛末を見るとシステムの動きや作業内容の意味を理解しているのか怪しい
ちゃんと管理したいなら基本を勉強すべきだし
業務であれば対価を払って真っ当な作業者を割り当てることも考えるべき
769:名無しさん@お腹いっぱい。
08/06/17 04:49:54
URLリンク(earlybirds.ddo.jp)
↑のページを参考にOSXのLeopardにpostfixをインストールしてみて起動まではうまく
いってるようなのですが、送受信ができません。
ポート25は調べたら空いてました。
ターミナルでは
sh-3.2# mail hoge
Subject: test
test desu
.
EOT
sh-3.2# mail
mail: /var/mail/hoge: Is a directory
sh-3.2#
こういう感じでIs a directoryと出て来てしまいます。
コンソールのログは
Jun 17 04:44:50 abonabon postfix/pickup[1940]: E6287541DBB: uid=0 from=<root>
Jun 17 04:44:50 abonabon postfix/cleanup[2035]: E6287541DBB: message-id=<20080616194450.E6287541DBB@abonabon.ddo.jp>
Jun 17 04:44:50 abonabon postfix/qmgr[1941]: E6287541DBB: from=<root@abonabon.ddo.jp>, size=336, nrcpt=1 (queue active)
Jun 17 04:44:51 abonabon postfix/local[2037]: E6287541DBB: to=<hoge@abonabon.ddo.jp>, orig_to=<hoge>, relay=local, delay=0.1, delays=0.04/0.02/0/0.04, dsn=2.0.0, status=sent (delivered to mailbox)
Jun 17 04:44:51 abonabon postfix/local[2037]: warning: service not found: biff/udp
Jun 17 04:44:51 abonabon postfix/qmgr[1941]: E6287541DBB: removed
となってます。
ググっていろいろ書き直したりしたのですがハマってしまいました。
解決法ありましたらアドバイスお願いしますm( )m
770:名無しさん@お腹いっぱい。
08/06/17 10:59:56
SSLとか抜きにして、最初はシンプルな設定で試してみ。
基本的にゃほとんど変更しなくても動く。
771:名無しさん@お腹いっぱい。
08/06/17 16:54:09
>>769
そのmailコマンドはどうせUCB mailなんでそ。Maildirに対応しているわけがない罠
772:名無しさん@お腹いっぱい。
08/06/17 17:52:25
(板違いの自宅サーバ板のスレに書いてしまいました。マルチになってしまってすみません。)
virtualの設定で質問です。
main.cf
recipient_delimiter = -
/etc/postfix/virtual
---
example.jp anything
aaa@example.jp mailman,example@other.com
bbb@example.jp mailman
ccc@example.jp mailman
---
と設定をしています。
このとき、
aaa-123@example.jpにメールが来た場合、example@other.comではなく
example-123@other.comに転送されてしまいます。
これをオプションの部分を無視してexample@other.comに転送させる設定は
どうすればよいでしょうか。
わかるかたいらっしゃったら、よろしくお願いします。
773:名無しさん@お腹いっぱい。
08/06/17 19:13:24
canonical ではどだろか
774:名無しさん@お腹いっぱい。
08/06/24 22:06:29
URLリンク(jp.youtube.com)
775:名無しさん@お腹いっぱい。
08/06/26 09:43:40
スキャナがメールを壊してるんだろうな
776:名無しさん@お腹いっぱい。
08/07/07 13:13:38
ティンポ!
777:名無しさん@お腹いっぱい。
08/07/07 20:37:49
(´-`).。oO(ファイル開けすぎと言われているのにプロセス数を増やすのだろう)
778:名無しさん@お腹いっぱい。
08/07/12 17:08:03
バーチャル環境でのpostfixの設定について質問です。
現在、postfixadmin2.2.0にて、ドメイン管理者にそのドメインの管理権限を与え、
メールアカウント管理させており、どのドメインユーザーも送受信ともに正常にできています。
ただ、Return-Path、Senderアドレスだけが、リアルホスト名というか、main.cfに記述されているドメイン名になってしまうので、
あまり気持ちよくありません。(ソースなどを見た場合に)
そこで、canonical_maps = mysql:/etc/postfix/canonical等の指定で、
今実際に管理しているmysqlを使って、canonical_mapsとsender_canonical_mapsを動的に変更できないでしょうか。
例えば現状だと、main.cfに書かれているリアルホスト名がaaa.comだとして
aaa.com上のapacheからPHPで送られたメールの発信者は
apache@aaa.comとなり、これを/etc/postfix/canonicalでwebmaster@aaa.comと今はしています。
なので、bbb.com上のapacheからPHPで送られたメールもwebmaster@bbb.comがReturn-Pathになってしまってます。
これをbbb.com上のapacheから送ったメール発信者は自動的にwebmaster@bbb.comになるようにできないものでしょうか?
779:名無しさん@お腹いっぱい。
08/07/14 11:17:36
postfixadmin は使わないから細かいところは知らないけどさ、
>ただ、Return-Path、Senderアドレスだけが、リアルホスト名というか、main.cfに記述されているドメイン名になってしまうので、
これってバーチャルユーザの環境で「正常に送受信できている」とは言わないと思うんだが。
postfixadmin のインストールのしかたから根本的に間違ってんじゃないの?
780:名無しさん@お腹いっぱい。
08/07/14 23:09:41
>>779
いや、普通にメーラーでなら正常にそのバーチャルドメインアドレスで送受信できるんですが、
apacheがPHPなどで送信するメールのReturn-Pathがapache@hogohoge.jpとなってしまいます。
このhogehoge.jpとは、main.cfのmydomainもしくはmyhostnameに設定しているもので、
この値がそのまま@以降に反映されてしまってます。
まぁ当然と言えば当然なのですが、そこをapacheでPHPが動く時に、そのバーチャルホスト名で判断して
@以降をそのホスト名にできないかなと思いまして。
781:名無しさん@お腹いっぱい。
08/07/14 23:43:17
>>780
apache権限で動いてるPHPが@以降付けずにsendmailコマンドで
メールを投げてるというわけではないよな、念のため
782:名無しさん@お腹いっぱい。
08/07/15 00:15:33
postfixは関係ねーべ。
783:名無しさん@お腹いっぱい。
08/07/15 00:16:01
>>780
PHP サイドで環境変数から FQDN 拾ってドメインと合体。
なんてのはどう??
というか Return-Path は mydomain になっているのか。
うちは myhostname のまんまだわ、
784:名無しさん@お腹いっぱい。
08/07/15 08:30:33
自動的にこだわらなければ
mb_send_mail に "-f webmaster@bbb.com" を渡すだけで解決するとか
そういう問題なのかな。それだと postfix 関係ないけど。
785:名無しさん@お腹いっぱい。
08/07/15 23:13:26
メール送るときに、Return-path設定するだけでいいんじゃないの?
786:名無しさん@お腹いっぱい。
08/07/16 01:22:19
それは明らかに間違い。
return-path は envelope sender が何であったかを記録するためのヘッダであって、
envelope sender を何にするかを MTA に指示するヘッダではない。
787:名無しさん@お腹いっぱい。
08/07/25 22:38:32
Envelope From の @以降(ドメインパート)が存在しない
メールを拒否する方法ってある?
788:名無しさん@お腹いっぱい。
08/07/25 23:25:41
あるにはあるが、おすすめしない。
789:名無しさん@お腹いっぱい。
08/07/26 00:14:07
お勧めしない理由は?
790:名無しさん@お腹いっぱい。
08/07/26 01:12:16
smtpd_sender_restrictions = ...
reject_unknown_sender_domain
かにゃ?
791:名無しさん@お腹いっぱい。
08/07/26 11:36:54
>>787
strict_rfc821_envelopes のことかな?
>>790
reject_unknown_sender_domain だと、>>787 の条件以外も弾いてしまうだろう?
792:名無しさん@お腹いっぱい。
08/08/04 05:20:08
smtpd_sender_restrictions = check_sender_access regexp:/hogehoge
好きなように正規表現を書けばいんじゃね?
MAILER-DAEMON とか <> とかは許してやっておくれ。
793:名無しさん@お腹いっぱい。
08/08/04 12:48:22
質問から10日たっても reject_non_fqdn_sender が出てこない件について。
794:名無しさん@お腹いっぱい。
08/08/04 12:51:42
そういえばそんなのもあったなw
795:名無しさん@お腹いっぱい。
08/08/12 18:22:57
過疎スレ
796:名無しさん@お腹いっぱい。
08/08/12 18:29:37
---------- 終了 -----------
797:名無しさん@お腹いっぱい。
08/08/12 19:31:14
mod_postfix
798:名無しさん@お腹いっぱい。
08/08/13 14:03:14
なんかネタないのかよ! smtp before pop とかぁぁぁ
799:名無しさん@お腹いっぱい。
08/08/13 14:08:23
>>798
> smtp before pop
詳しく
800:名無しさん@お腹いっぱい。
08/08/13 14:45:00
>> 799
> smtp before pop
smtpに接続した後でないとpop出来ないとです
さぁ、有効性について↓
801:名無しさん@お腹いっぱい。
08/08/13 14:47:08
受信は脆弱なAPOP認証しかサポートしていないが
SMTPについてはまともな認証方式をサポートしているクライアントで
安全性がちょっとだけ増す
802:名無しさん@お腹いっぱい。
08/08/13 16:47:10
SMTP-AUTH したあとは POP は no password でオッケー!
だれでも読める~~~
ん?
803:名無しさん@お腹いっぱい。
08/08/13 16:58:37
POP before SMTPの逆であるとすると
SMTP認証のあと一定時間POPが認証なしで使えるとしたらザル
POP認証ないし接続を受け付けるIPアドレスを許可リストにいれるというなら
まだわからんでもないけど対応MUA以外ではメール送らないとメールが読めん
有用性皆無ってことでFAだな
804:名無しさん@お腹いっぱい。
08/08/13 17:34:58
>>797だが、とりあえず人がいることだけは分かって安心した
805:名無しさん@お腹いっぱい。
08/08/14 23:05:38
次のネタを出してください
806:名無しさん@お腹いっぱい。
08/08/15 15:47:04
寝た
807:名無しさん@お腹いっぱい。
08/08/15 16:57:06
最近のネタっていうと、ずいぶん久しぶりにセキュリティホールが
見つかったことぐらいかなー。
詳細は postfix-announce やら postfix-users やらに流れたメールを参照。
808:名無しさん@お腹いっぱい。
08/08/15 17:16:16
コレか
URLリンク(article.gmane.org)
809:名無しさん@お腹いっぱい。
08/08/16 22:13:59
postfixって自分でプログラム作ったプログラム内でメールを送信するための
APIとか用意されているんでしょうか?
810:名無しさん@お腹いっぱい。
08/08/16 22:19:57
>>809
つSMTP
811:名無しさん@お腹いっぱい。
08/08/17 02:29:54
わろた。
812:名無しさん@お腹いっぱい。
08/08/17 12:31:56
postfix2.3.3+Dovecot+postfixadmin+MySQLのマルチドメインで運用してるんですが、
SMTP-AUTHをrimapのIMAP経由で行うことで、MySQLに登録されたユーザーで認証しないと送信できないようにはできました。
ただ、この時のユーザー名は、本来user@domain+パスワードでなければ受信時には認証エラーとなって正常なのですが、
SMTP-AUTHの時はドメイン名無しのuserとパスワードだけで送信できてしまいます。
これはそういうもんなんでしょうか。
813:名無しさん@お腹いっぱい。
08/08/17 12:33:45
上記の詳細です
■/usr/lib/sasl2/smtpd.confの内容
#pwcheck_method: auxprop
pwcheck_method: saslauthd
auxprop_plugin: sql
sql_engine: mysql
sql_hostnames: localhost
sql_user: postfix
sql_passwd: DBパスワード
sql_database: postfix
sql_statement: SELECT password FROM mailbox WHERE username = '%u@%r' AND active= '1'
saslauthd_path: /var/run/saslauthd/mux
mech_list: cram-md5 digest-md5 plain login
log_level: 3
■/etc/sysconfig/saslauthdの内容
# Directory in which to place saslauthd's listening socket, pid file, and so
# on. This directory must already exist.
SOCKETDIR=/var/run/saslauthd
# Mechanism to use when checking passwords. Run "saslauthd -v" to get a list
# of which mechanism your installation was compiled with the ablity to use.
#MECH=pam
MECH=rimap
# Additional flags to pass to saslauthd on the command line. See saslauthd(8)
# for the list of accepted flags.
FLAGS="-r -O 127.0.0.1"
814:812=813
08/08/17 22:37:07
解決というか、どうもこの動きはそういうもんだったみたいです。
メールソフトで設定したSMTPサーバー名が@以降のドメイン名と同じだった場合にのみ
SMTP-AUTH時の@以降を省略してもOKだったみたい。SMTPサーバーを別のにすると、
ちゃんとSMTP-AUTH時に@以降も入れないと認証が通らなかった。
あと、
/usr/lib/sasl2/smtpd.confの内容は
pwcheck_method: saslauthd
saslauthd_path: /var/run/saslauthd/mux
mech_list: cram-md5 digest-md5 plain login
log_level: 3
のみでOKだった。
MySQLを使っての認証じゃなくrimapなのでよく考えると必要なかったようです。
お騒がせしました。というか参考になれば幸いです
815:名無しさん@お腹いっぱい。
08/08/18 01:54:54
Postfixの作者って韓国人だっけ?
816:名無しさん@お腹いっぱい。
08/08/18 03:30:59
んなわけねえだろヴォケが
817:名無しさん@お腹いっぱい。
08/08/18 17:30:05
いや、かの国の事だから、何時そう言い始めるかわからんぞwww
若しくは「我が国で作られたソフトが勝手に・・・」云々のパターンね。
818:名無しさん@お腹いっぱい。
08/08/19 02:32:59
KOREA Mailerとかに名前変えて欲しい
819:名無しさん@お腹いっぱい。
08/08/21 22:02:53
>>817
でも作者の名前が「びーちゅ・べぬま」になってしまうよな
820:名無しさん@お腹いっぱい。
08/08/22 04:23:50
愚問ですいません、
centos5.2上で、rpmで入っているpotfixでは、
グループにおいて、
mail:x:12:mail,postfix
postdrop:x:90:
postfix:x:89:
このように、postfix,postgroupには入っていないのに、
mailグループには入っていますが、
これがpostfixにとって理想の形なのでしょうか?
グループだけ作ってメンバーのない、postfix,postdropに何かしらの意味はあるのでしょうか?
OSを新規で入れて、postfixをソースで入れた場合でも
このような構成にしなければならないのでしょうか?
821:名無しさん@お腹いっぱい。
08/08/22 19:01:15
>>820
マニュアル嫁
URLリンク(www.kobitosan.net)
822:名無しさん@お腹いっぱい。
08/08/22 19:24:53
意味があるから存在する
823:名無しさん@お腹いっぱい。
08/08/22 21:09:28
>>819
意味あるよ。Postfix 使うなら消しちゃダメ。
mail グループに postfix が入ってるのは、恐らく /var/mail 対策だな。
Maildir 使う分にはいらないと思う。
824:名無しさん@お腹いっぱい。
08/08/23 00:26:52
>>820
postfixグループには入ってるんじゃね?
/etc/passwdとか見た?
825:名無しさん@お腹いっぱい。
08/08/23 03:50:59
いや、>>820は自分に対してマニュアル嫁と言ってるわけで・・・
826:名無しさん@お腹いっぱい。
08/08/23 10:25:44
>>823 >>825
.datファイルずれてね?
827:825
08/08/23 22:38:02
うぉ、本当だw 専ブラの罠か・・・
828:名無しさん@お腹いっぱい。
08/08/24 18:14:56
neta gire?
829:名無しさん@お腹いっぱい。
08/08/27 01:42:41
MSN Messengerにある電子メールの確認で、確認メールが届かないんだけど自鯖のpopじゃだめなの?
830:名無しさん@お腹いっぱい。
08/08/27 01:49:17
829をこのスレ的にだれか翻訳してくれ・・・
831:名無しさん@お腹いっぱい。
08/08/27 02:18:31
メールが届かない、POP
この 2 つの単語だけでスレチだ。スルーでよろし
832:829
08/08/27 07:48:44
書き方が悪かった。
自宅サーバのPostfixでPOPをSMTPに変換し、Messengerにサインインしたら
新着メールを通知するHotmailの認証を委譲したいということなんだが・・・
やっぱり自宅じゃなくてMS系の方がいいの?
833:名無しさん@お腹いっぱい。
08/08/27 08:16:35
>>832
>PostfixでPOPをSMTPに変換し
できません。
>新着メールを通知するHotmailの認証を委譲したい
「認証を委譲」って?
834:名無しさん@お腹いっぱい。
08/08/27 08:27:04
>>833
POP を SMTP に変換って表現がおかしいだけじゃねかの。
fetchmail で POP 覗いて拾ってきてから SMTP でメッセージ投げるって事かもしれぬ。
とはいえやりたいことを本人が上手く伝えられないのではと。
835:名無しさん@お腹いっぱい。
08/08/27 09:40:40
>>832
> やっぱり自宅じゃなくてMS系の方がいいの?
これも意味わからん。
836:名無しさん@お腹いっぱい。
08/08/27 11:47:39
釣り?
837:名無しさん@お腹いっぱい。
08/08/27 13:13:27
自宅サーバに届いたメールをMessengerに投げて、Messengerでメール確認できるようにしたい
という要望かと予想。
838:名無しさん@お腹いっぱい。
08/08/27 13:53:25
なんかわかった気がする。
要は外から自宅の POP サーバにアクセスできないんでしょ。
スレ違い。
839:名無しさん@お腹いっぱい。
08/08/27 14:35:54
829に限らず、なぜかMTAに過剰な機能を期待する輩が多くないですか?
840:名無しさん@お腹いっぱい。
08/08/27 16:36:18
>>839
> 829に限らず、なぜかMTAに過剰な機能を期待する輩が多くないですか?
御指摘されている中、大変心苦しいですが、1点質問させてください。
特定のvirtualのメールアドレスへのメールに対し、Reply-Toを付ける場合
いい方法ありますか。ProcmailやMailman等を使用すべきですか(あまり使いたくないです)
841:名無しさん@お腹いっぱい。
08/08/27 16:37:44
>>839
> 829に限らず、なぜかMTAに過剰な機能を期待する輩が多くないですか?
御指摘されている中、大変心苦しいですが、1点質問させてください。
特定のvirtualのメールアドレスへのメールに対し、Reply-Toを付ける場合
いい方法ありますか。ProcmailやMailman等を使用すべきですか(あまり使いたくないです)
842:832
08/08/28 11:38:30
HAHAHA ボクは>>829の偽者だったのだ でわ、ごきげんよう
843:名無しさん@お腹いっぱい。
08/08/30 01:51:40
postfixでvirtual alias maps設定して何回やっても
User unknown in virtual alias tableって怒られた。
ふとmain.cfを見たら receive_override_options = no_address_mappings
って書いてあったよ。 ウワァーァン
844:名無しさん@お腹いっぱい。
08/08/31 14:03:56
テストおわったら show_user_unknown_table_name = no にしておこうね。
なんとなくだけど。
845:名無しさん@お腹いっぱい。
08/09/02 12:00:55
ENMA入れてみようかな。
846:名無しさん@お腹いっぱい。
08/09/02 19:11:08
どうぞ
847:名無しさん@お腹いっぱい。
08/09/02 19:22:01
ソースで、メジャーバージョンが変わらない場合(2.3.13 -> 2.3.15)
コンパイルして、
make updateなのでしょうか?
make upgradeはメジャーバージョンアップが変わる場合に使うのでしょうか?(2.3.13 -> 2.5.x)
rpmばっかり使ってきたので、mysqlがからんではじめてソースを使いましたが、
アップデートのお作法を教えてください。
848:名無しさん@お腹いっぱい。
08/09/02 19:28:41
オイラはいつでもmake upgrate。
make updateなんてあったっけ?
849:848
08/09/02 19:29:57
>>848
> オイラはいつでもmake upgrate。
誤: upgrate
正: upgrade
850:名無しさん@お腹いっぱい。
08/09/04 08:21:37
age!
851:名無しさん@お腹いっぱい。
08/09/07 18:32:25
すみません
postfixのsmtpサーバをLAN内の複数のクライアントから使用する為の設定はどのあたりになりますでしょうか?
今までpostfixが立っているサーバ内からだけsmtpサーバを使っていました。
今回、同じネットワーク内のクライアントからも使いたいと思って、送信テストをおこなってみましたが、rejectされました。
firewallではなく、postfixサーバ自体がrejectしていることを確認しました。
以下はmain.cfのカスタマイズ(追加)部の全てです。オリジナルのmain.cfの最後尾に追加しています。
特に同一ネットワーク内の別マシンからの接続を禁止しているように見えないのに、と思います。
mynetworks = 192.168.1.0/24, 127.0.0.0/8
header_checks = regexp:/etc/postfix/header_checks
sender_canonical_maps = hash:/etc/postfix/canonical
myhostname = nifty.com
home_mailbox = Maildir/
smtpd_sasl_auth_enable = yes
smtpd_sasl_security_options = noanonymous
broken_sasl_auth_clients = yes
smtpd_sasl_local_domain=hoge.fuga.org
smtpd_recipient_restrictions =
permit_sasl_authenticated,
permit_mynetworks,
reject_unauth_destination
relayhost = [smtp.nifty.com]:587
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
852:名無しさん@お腹いっぱい。
08/09/07 20:41:30
クライアント側ではSMTP-AUTHの設定は当然してて、sasl2サービスも起動してる?
それからsaslの設定がカブって入ってる
853:851
08/09/07 20:57:21
>>852
サーバ上ではsylpheedでSMTP-AUTH、メソッドCRAM-MD5で送信できています。
だからsasl2サービスは問題ない筈ですよね
ていうかですね、それより以前に、
サーバ上でtelnet localhost 25だとsmtpサーバにConnectedされるのですが、
クライアントから、telnet サーバIP 25だとrejectされます。クラサバ共にfirewallはありません。
さきほど書き忘れましたが、postfixのバージョンは2.2.10です。
854:名無しさん@お腹いっぱい。
08/09/07 21:00:35
master.cf
855:851
08/09/07 21:18:20
>>854
master.cfは少しだけカスタマイズしています。
全部掲載は長すぎるのでdiffを載せます。
--- master.cf.2.2.10-1.orig 2006-08-13 07:07:09.000000000 +0900
+++ master.cf 2006-11-24 00:06:17.000000000 +0900
@@ -7,9 +7,9 @@
# (yes) (yes) (yes) (never) (100)
# ==========================================================================
smtp inet n - n - - smtpd
-#submission inet n - n - - smtpd
-# -o smtpd_etrn_restrictions=reject
-# -o smtpd_client_restrictions=permit_sasl_authenticated,reject
+submission inet n - n - - smtpd
+ -o smtpd_etrn_restrictions=reject
+ -o smtpd_client_restrictions=permit_sasl_authenticated,reject
#smtps inet n - n - - smtpd
# -o smtpd_tls_wrappermode=yes -o smtpd_sasl_auth_enable=yes
#submission inet n - n - - smtpd
856:851
08/09/07 21:21:08
>>855
3行、コメントを外しただけです。
857:名無しさん@お腹いっぱい。
08/09/07 21:29:43
んじゃ、master.cf の smtpd のとこに -v オプション追加して telnet かな。
smtp inet n - n - - smtpd -v
その上で maillog に出力される詳細を確認してみましょ。
あと main.cf を mynetworks = 0.0.0.0/0 にしたらどうなる?
858:名無しさん@お腹いっぱい。
08/09/07 21:48:45
>>851
なんかよく見たらこれおかしいかな? Nifty のメアドを使ってスマートリレーする
メールサーバを作ってるんだよね?
myhostname = nifty.com
これだと mydestination = nifty.com になるから、どういう動きになるか知らんけど、
relayhost = [smtp.nifty.com]:587
があるから、場合によっては cron からのメールとか全部そっちに流れちゃいそうな・・・。
transport_maps を使った方がいいかもしんない。
859:名無しさん@お腹いっぱい。
08/09/07 22:25:46
>>853
reject された時に Log は?
OSは何?
860:名無しさん@お腹いっぱい。
08/09/07 22:48:52
OS関係なくね?
861:851,855
08/09/07 22:51:15
>>857,859
現状をスニッフしてみました。
クライアントhigh-port→サーバsmtpポート
サーバsmtpポート→クライアントhigh-port[RST, ACK]
のたった2行で終わっています。
で、これは-vをつけてもmaillogには何も出力されません。
もちろんサーバ上から接続した場合には大量にログが吐かれます。
mynetworks = 0.0.0.0/0にしてみても変化なしです。
>>858関連が問題でしょうか
862:名無しさん@お腹いっぱい。
08/09/07 22:52:00
>>860
そっか?最近の RH 系のOSは、iptables enable がデフォだぞ。
863:名無しさん@お腹いっぱい。
08/09/07 22:52:46
>>861
だから、OSを書けとあれほど(ry
864:名無しさん@お腹いっぱい。
08/09/07 22:56:11
>>862-863
すみません。
確かにRedHat EL系のCentOS 4.6です。
でもiptablesサービスは起動させていませんし、iptables -Lの結果は完全に空です。
865:名無しさん@お腹いっぱい。
08/09/07 23:00:12
>>864
netstat -an | grep ":25" の結果は?
866:名無しさん@お腹いっぱい。
08/09/07 23:00:12
それさ、reject じゃなくて Connection refused でわ?
telnet IPアドレス 25 したときに SMTP のレスポンス来る?
netstat -an | grep LISTEN とかして、0.0.0.0:25 があるか確認してみてくだしあ。
# master.cf に書いてあるから LISTEN してるはずなんだけど・・・
あと、>>858 の件は後々問題ありそうだけど、これまた別の話だと思います。
867:名無しさん@お腹いっぱい。
08/09/07 23:05:15
inet_interfaces = all
を main.cf に書いたら直るような気が・・・
868:名無しさん@お腹いっぱい。
08/09/07 23:07:10
>>866
>>861のスニッフはtelnet サーバIP 25でおこなっています。
もう何度も書いていますが、サーバ上からはtelnet 25で接続できますし、
送信もできます。
869:名無しさん@お腹いっぱい。
08/09/07 23:07:50
>>868
だから、netstat -an | grep ":25" の結果は?
870:名無しさん@お腹いっぱい。
08/09/07 23:09:43
>>867
ほぼ100%ビンゴでしょうね。まだやっていませんけど
すみません、長い間postfixを触っていなかったので、今日は自分で調べずに、不精して、思いっきり教えて君をやってしまいました。
871:名無しさん@お腹いっぱい。
08/09/07 23:11:53
パケットの話なんか誰もしてねーっつーのw
872:名無しさん@お腹いっぱい。
08/09/07 23:20:58
>>853 >>868
> サーバ上でtelnet localhost 25だとsmtpサーバにConnectedされるのですが、
> クライアントから、telnet サーバIP 25だとrejectされます。クラサバ共にfirewallはありません。
サーバ上で telnet IPアドレス 25 でも、繋がらない気がするんだけどな。
> もう何度も書いていますが、サーバ上からはtelnet 25で接続できますし、
こういう書き方されるとショボンヌです。
873:名無しさん@お腹いっぱい。
08/09/07 23:33:38
inet_interfaces = localhostなんだからローカルは繋がるってば
>>867を1000回読め
874:名無しさん@お腹いっぱい。
08/09/08 00:04:38
蛇の足
サーバ管理演習でpostfixのメールサーバ構築させて、
>>867 相当の作業をさせたら、25%の受講生がこうなった。
---------
# Note: you need to stop/start Postfix when this parameter changes.
#
inet_interfaces = all
#inet_interfaces = $myhostname
#inet_interfaces = $myhostname, localhost
inet_interfaces = localhost
---------
5%ぐらいはこれになった。
---------
# Note: you need to stop/start Postfix when this parameter changes.
#
inet_interfaces = all
#inet_interfaces = $myhostname
#inet_interfaces = $myhostname, localhost
inet_interfaces = localhost
---------
875:名無しさん@お腹いっぱい。
08/09/08 00:11:34
あとこれも多かったな。
この行を書き換えさせようとしたんだが、
---
#mydomain = domain.tld
---
5%ぐらいはこうなってしまった。
---
#mydomain = mail.example.com
---
このあたりはshell scriptとかperlを使った経験がある
受講生ならすぐに気がつくのだがなぁ。
876:名無しさん@お腹いっぱい。
08/09/08 00:14:42
inet_interfaces ってデフォルトで all じゃないっけ? ディストリによって違うんかな。
877:名無しさん@お腹いっぱい。
08/09/08 00:17:54
>>876
FedoraとかRedHatとかはこうなってるよ。
#inet_interfaces = all
#inet_interfaces = $myhostname
#inet_interfaces = $myhostname, localhost
inet_interfaces = localhost
878:名無しさん@お腹いっぱい。
08/09/08 00:21:20
なるほど、少し賢くなったぞ。さて、寝るか・・・zzz
879:名無しさん@お腹いっぱい。
08/09/08 11:18:11
MacOSX も inet_interfaces = localhost だね。
それはそうと、>>851はなぜ postconf -n を使わずに
>以下はmain.cfのカスタマイズ(追加)部の全てです。
なんてアホなことをするんだ。postconf -n なら一瞬で解決したのに。
880:名無しさん@お腹いっぱい。
08/09/08 11:34:49
postconf -n が比較するのは、
built-in default valueだから、
OSXとかRedHatのデフォルトではこの変更行が出力されるでOK?
881:名無しさん@お腹いっぱい。
08/09/08 12:49:50
おk
ディストリが「うちのデフォルトはこれじゃ!」と本気でカスタマイズして、
main.cf じゃなくて main.cf.default の方をいじったりすると
postconf -n では出なくなる。
882:名無しさん@お腹いっぱい。
08/09/08 12:56:50
厳密にはおkじゃないや。
>この変更行が出力されるでOK?
main.cf で明示的に設定されていれば、
たとえそれがデフォルト値と同じであっても出力される。
883:名無しさん@お腹いっぱい。
08/09/08 12:59:57
漏れが一番驚いたのは!
板が過疎る休日にも関わらず、ネタが投下されると一気に盛り上がっこと。
みんなちゃんと見てるんだな~♪
884:名無しさん@お腹いっぱい。
08/09/08 13:05:29
Navi2chは、浅瀬から深海まで見逃さない
885:名無しさん@お腹いっぱい。
08/09/09 17:17:17
ちょっと質問させてください。
プロキシ越しに、postfixを動かそうとしているのですが、そのプロキシがbasic認証を行うため、うまく動きません。
proxy_interfacesにはどのように記述したら良いのでしょうか?
886:名無しさん@お腹いっぱい。
08/09/09 17:26:01
もしかして HTTP proxy 通そうとしてんの?
887:名無しさん@お腹いっぱい。
08/09/09 19:37:59
submissionで受けた時は、どんな宛先(自ホスト宛も含む)であっても
ほかのサーバに relay する様にする設定をご存じのかたいますか?
submissionで受けたメールは必ず、Antivirus Server に配送したい・・・
888:名無しさん@お腹いっぱい。
08/09/09 20:50:36
content_filter
889:名無しさん@お腹いっぱい。
08/09/09 21:51:06
説明不足ですみません。
Antivirus Server は、Internet Gateway 的な仕事もして
content_filter だと、サーバに戻さないといけないで無理だと思うのです・・・
内部でメールサーバが3台ほど分散設置されているので、配送ポリシーも
変えられないし・・・
890:名無しさん@お腹いっぱい。
08/09/09 23:04:10
外部(例えばgooとか)から宅鯖上のpostfixに向けてメールを送信すると
Relay access deniedになってしまいます。
最も、ネットワークが
ISP------------[x.x.x.x]Router[y.y.y.1]-------------[y.y.y.2]鯖:Postfix
となっていて、Routerは25番向けのパケを鯖へforwardしているため、Postfix
から見ると「from:goo、to:x.x.x.xのメールなんて処理出来ないよ」という事
になってると思うのですが。
リレー不正のエラーを出さず、かつx.x.x.x:25に向けられた送信メールを鯖自
身で受け取るにはどこを設定すれば良いでしょうか?
891:名無しさん@お腹いっぱい。
08/09/09 23:08:45
>>890
Routerと鯖
892:名無しさん@お腹いっぱい。
08/09/09 23:16:06
>>891
スマソ
main.cfのどこを変えればいいか教えてクダサイ。
ていうか、ルータの設定変えるところは無いと思うんだが?
893:名無しさん@お腹いっぱい。
08/09/10 02:52:34
>>887
できるか知らんけど、master.cf の submission に、smtpd -o relayhost=example.org どう?
894:名無しさん@お腹いっぱい。
08/09/10 02:54:29
>>892
myhostname mydomain mydestination
895:132.8.111.219.st.bbexcite.jp 名無しさん@お腹いっぱい。
08/09/10 15:30:43
>>889
>content_filter だと、サーバに戻さないといけないで無理だと思うのです・・・
別に戻さなくてもいいよ。
付属のドキュメントは戻す例しかないから勘違いしたのかな。
>>893
smtpd は relayhost を見ないのでそれは動かない。
仮にできたとしても、relayhost では自分のホスト宛のメールは
ローカルで処理してしまうのでやっぱりダメ。
自分宛のメールも含めて外部に強制的にリレーするのは content_filter の仕事。
896:132.8.111.219.st.bbexcite.jp
08/09/10 15:31:34
そして節穴さん
897:名無しさん@お腹いっぱい。
08/09/10 16:51:36
>>895
ああ、やっぱ master.cf で -o relayhost 効かないかw -o content_filter は出来たよね。
>>889 のいう
> Antivirus Server は、Internet Gateway 的な仕事もして
> content_filter だと、サーバに戻さないといけないで無理だと思うのです・・・
がよく分からないけど。Postfix を同じバイナリで2個起動することもできるから、
それで個別に設定ファイル作るってのもありかな。「混ぜるな危険」にならなずに
綺麗に設定書けると思う。
# 漏れも fusianasan?
898:名無しさん@お腹いっぱい。
08/09/10 16:52:55
漏れは大丈夫だったw >>896 qmail スレでもやってるしwww乙wwwwwwwww
899:名無しさん@お腹いっぱい。
08/09/10 17:29:03
>>896
rep2で●使おうとUA書き換えていたヤシに発症している模様。
900:名無しさん@お腹いっぱい。
08/09/10 19:27:37
>>895
そうなんだ。content_filter は、返さないといけないかと思っていました。
早速試してみます。
ありがとうございました。
901:名無しさん@お腹いっぱい。
08/09/12 00:46:43
main.cfを凝ってたらこんな感じで複雑怪奇になってきたのだが、debug mode
みたいのないのですかね。どの定義を使ったかを メールのヘッダ等に記録
したい。
smtpd_restriction_classes =
check_osusume,
check_greylist,
check_verify_greylist,
check_rgrey,
check_verify,
check_freemail
check_osusume =
check_rgrey,
check_freemail
check_greylist =
check_policy_service unix:/tmp/.postgrey/relay,
warn_if_reject reject_unverified_sender,
permit_auth_destination,
reject
check_rgrey =
check_client_access regexp:/etc/postfix/myconf/hosts_check_rgrey
以下略
902:名無しさん@お腹いっぱい。
08/09/12 00:47:32
postfixの定義は先頭の空白が消えると読み辛いな…
903:名無しさん@お腹いっぱい。
08/09/12 00:57:47
>>901 master.cf に -v
904:名無しさん@お腹いっぱい。
08/09/14 20:23:49
のぼるよのぼるよ コアラ~
ユーカリの木を~ ゴーゴー!
のぼるよのぼるよ コアラ~
おひさま こんにちは!
905:名無しさん@お腹いっぱい。
08/09/20 02:55:28
特定の宛先アドレスへのメールの内、
許可アドレス以外から送られてきたメールを拒否or転送する方法は無いでしょうか?
イメージとしては、fml等MLソフトのactivesに相当するものです。
906:名無しさん@お腹いっぱい。
08/09/20 03:31:57
fml 入れるのが早そうだ。
Postfix 単体では配送されてきた特定のメールを拒否する事くらいしか出来なかったはず。
基本的には送られてきたメールは mydestination 通れば全て裁く物だかんのぅー
907:名無しさん@お腹いっぱい。
08/09/20 14:55:55
procmail なり maildrop なり
908:名無しさん@お腹いっぱい。
08/09/20 17:51:39
>Postfix 単体では配送されてきた特定のメールを拒否する事くらいしか出来なかったはず。
access(5) で拒否することも転送することもできるし、
特定の宛先アドレスへの許可アドレス以外から、という条件も
smtpd_restriction_classes で記述できるよ。
909:名無しさん@お腹いっぱい。
08/09/21 05:30:18
>>908
906 ですがー
申し訳ない。知らんかった orz
勉強なった。
910:名無しさん@お腹いっぱい。
08/09/22 19:35:27
すいません質問させて下さい。
大学のUNIXサークルのサーバ(固定IP)でPostfixを使っているのですが、
メールが発信されない不具合がありmain.cfを確認してみたら中身に
「relayhost = ***.****.****.****(←ここにIPアドレス)」と
今は存在しない外部のSMTPサーバが中継指定されていました。
この場合 relayhost を削除してしまえばメールは正常に配信される
ものなのでしょうか。それとも別にSMTPサーバを用意してあげなくては
ならないのでしょうか。
911:名無しさん@お腹いっぱい。
08/09/22 20:01:51
>>910
スレリンク(unix板:267番)
912:名無しさん@お腹いっぱい。
08/09/22 20:21:46
>>910 中継が許されるサーバがいる、というかこの場合上位組織のメールサーバなのかな?
いずれにしても政治層での情報収集が必要という気がする。
913:名無しさん@お腹いっぱい。
08/09/22 22:50:07
政治層というより0層とか-1層とか(事前調査)
914:名無しさん@お腹いっぱい。
08/09/22 23:34:48
高度に政治的な判断が必要
915:名無しさん@お腹いっぱい。
08/09/23 00:23:46
ひらたく言うと
ネットワーク管理者にお問い合わせください
916:名無しさん@お腹いっぱい。
08/09/23 00:28:24
>>910
ネットワーク構成とかわからんと、だれも答えられないかも。
まずは、失敗メールを送りつつ、tail -f /var/log/mail.log(.いらんかも)
とにらめっこしてみては?
917:名無しさん@お腹いっぱい。
08/09/23 16:46:34
あれ?自社製品じゃなかったの?
スレリンク(unix板:267番)
918:名無しさん@お腹いっぱい。
08/09/23 17:13:34
Relaying denied:
From unknown[>>910] to Postfix(7) : 1 Time(s)
919:名無しさん@お腹いっぱい。
08/10/06 20:57:12
ipが複数あるマシンに、ipの数だけpostfixを起動して、
各postfixは必ず指定した1つのipのみを経由して配信するということは可能でしょうか?
920:名無しさん@お腹いっぱい。
08/10/07 00:18:53
>>919
可能だとは思うが、そもそも何がやりたいのかを書いた方が
スマートな解決方法がありそう
921:名無しさん@お腹いっぱい。
08/10/07 04:03:59
>>919
Solaris10のZone使った方が幸せになれると思うぞ。
922:名無しさん@お腹いっぱい。
08/10/07 14:02:47
先方が送ったメールがこちらのサーバに届きません。
どんな理由が考えられますでしょうか?
ユーザのMaildirフォルダでls -aRしてみたのですが届いてないようです。
私が考えられるのは
こちらの設定ミス
先方側の問題
くらいです。
923:名無しさん@お腹いっぱい。
08/10/07 14:08:04
あっちの問題か、こっちの問題か、あっちとこっちの間の問題かのどれかだと思います。
924:名無しさん@お腹いっぱい。
08/10/07 14:15:09
>>923
ありがとうございます。
具体的に問題点となりうる箇所をお教えいただますでしょうか?
お願い致しますm(_ _)m
925:名無しさん@お腹いっぱい。
08/10/07 14:30:13
自分のログ見てみたら?
相手サーバからの接続があるかどうか。
原因がありすぎてそんなのあげられんよ。
926:名無しさん@お腹いっぱい。
08/10/07 14:57:07
>>925
ありがとうございますm(_ _)m
cat /var/log/maillog |grep from
で見てみたのですが
Oct 7 12:37:08 hoge postfix/qmgr[29662]: D47836BE501: from=<hoge@example.com>, size=2783, nrcpt=1 (queue active)
とサーバに届いているっぽいです
ただ、メールボックスを見てみると来ているメールのDateが一日前とかになってものがあります。(迷惑メールではない)
どこかで遅延がおきているのでしょうか?
927:名無しさん@お腹いっぱい。
08/10/07 15:07:50
たびたびすみません。
ls- l /home/hoge/Maildir/new/
-rw------- 1 hoge hoge 345 10月 7 14:39 1234567.example.com
10月 7 14:39にサーバに届いてファイルが作られていると思うのですが、メールのDateは1日前だったりします。
Dateをいじれるのは知っていますが、先方がいじる意味はないのでなんらかの障害だと思われます。
928:名無しさん@お腹いっぱい。
08/10/07 15:12:35
Received: 見れ。
929:名無しさん@お腹いっぱい。
08/10/07 15:15:14
# date
# hwclock -r
930:名無しさん@お腹いっぱい。
08/10/07 15:17:30
送信されたメールが瞬間で確実に届く保障はされていない。
ましてや相手クライアントの時間が正確に設定されている保証はない。
931:名無しさん@お腹いっぱい。
08/10/07 15:28:45
>>928
ありがとうございます。
こういうときは経路を見ると良いのですね
>>929
当方のサーバも時間が若干間違っておりましたので修正しました。
>>930
ご教示ありがとうございます。
大変勉強になりました。
932:名無しさん@お腹いっぱい。
08/10/07 16:14:11
>>926
> cat /var/log/maillog |grep from
catコマンドは不要。man grepしよう。
933:名無しさん@お腹いっぱい。
08/10/07 21:05:54
>>932 オフトッピックだけど
さらにパイプで繋いでsedとかで整形、絞り込みしたいことがあるから自分はcatしてる。
934:名無しさん@お腹いっぱい。
08/10/07 21:30:47
>>933
その場合でもcatは要らないような気が。
古いログは圧縮されてることがあるから zcat を使うことはよくある。
935:名無しさん@お腹いっぱい。
08/10/07 21:43:47
>>919
smtp のオプションでに smtp_bind_address を指定してやればできるかもしれない。
URLリンク(www.postfix-jp.info)
mtkw って言われると、それはちょっと。
936:名無しさん@お腹いっぱい。
08/10/07 21:57:46
>>933
catは不要。man sedしよう。
>>934
zgrepも便利。
937:名無しさん@お腹いっぱい。
08/10/07 22:15:03
不要なのは分るんだが、何が来てもOkなようについついcatは書くな。
cat file | (ここまで打って、さーどーしようと考える)
938:名無しさん@お腹いっぱい。
08/10/07 22:35:40
catじゃなくてtail -fなら良く使うけどな
939:名無しさん@お腹いっぱい。
08/10/07 23:41:37
あるある
tail だけのつもりが手癖で -f が付いちゃう
トラブルでログを見る時は、前後の状況とかも見たいから、まずlessだな
940:名無しさん@お腹いっぱい。
08/10/07 23:53:09
そんな君はlessのFコマンドも使おう
941:名無しさん@お腹いっぱい。
08/10/07 23:54:58
>>926
それキューに入ってるだけじゃまいか??
status みないと。
mailq でもして Queue のぞいてみるとかアレコレ。
942:名無しさん@お腹いっぱい。
08/10/08 00:02:36
tail -f って10行くらいしかでないでしょう。
最後の100行くらいと、追加された分を見たいときがよくあるんだけどなにかいい方法ないかな。
ちなみにlvを使うのでlessは使ってません。
943:名無しさん@お腹いっぱい。
08/10/08 00:12:50
>>942
tail -n +1 -f
944:名無しさん@お腹いっぱい。
08/10/08 01:30:22
バウンスするときのtransportを通常とは別の経路に変更できませんか。
例えば、 from:x@example.com to:y@example.com なメールa.example.comからを送るとき
a.example.com の postfix の transport_maps で
x@example.com smtp:[relay.example.com]
y@example.com smtp:[relay.example.com]
となっていたら relay.example.com に転送されるでしょ。
ところが relay.example.com でvirus警報発令されて拒否られたとします。
すると a.example.com は x@example.com へエラーメールを送ろうとするんですが、
これがまたまた relay.example.com でvirus警報発令されて拒否されちゃう。
なのでbounceに転送先を指定できたりしないかなと思ったんですが、
マニュアルみてもできなさそうなんです。
945:名無しさん@お腹いっぱい。
08/10/08 01:53:19
>>937
cat は不要。
< file ...
946:名無しさん@お腹いっぱい。
08/10/08 07:27:32
>>945
そこは /dev/null でw
947:名無しさん@お腹いっぱい。
08/10/08 10:36:15
>>946
どういうこと?
948:名無しさん@お腹いっぱい。
08/10/08 11:10:32
>>944
transport は変えられないけど、経路を変えるだけなら
sender_dependent_relayhost_maps でできる。
949:名無しさん@お腹いっぱい。
08/10/08 14:30:28
>>920>>921>>935
レスありがとうございました。
やりたいことは、携帯対策で外へ繋ぐIPを指定できれば・・・ということです。
smtp_bind_addressと複数起動を試してみます。
950:名無しさん@お腹いっぱい。
08/10/11 14:39:41
recipient_canonical_maps で pcreテーブルを使って
abc@example.com を abc+abc=example.com@example.com
のように変換したいんだけど、再帰的に処理されて無限ループしちゃうんだけど
なんとかならぬものか?一回だけ変換して星いの。
951:名無しさん@お腹いっぱい。
08/10/11 21:39:53
>>950
一回だけmatchすればいいなら↓でいいんじゃね?
/([^+=@]+)@(example.com)/ abc+${1}=${2}@example.com
952:名無しさん@お腹いっぱい。
08/10/12 00:27:49
>>951
recipient_canonical_maps に限らないけど、アドレスを比較するときには
user+ext@domain
user@domain
user+ext
user
の順にマッチングが試されるじゃない。
abc@example.com を abc+abc=example.com@example.com に変換すると
再度 (+abc=example.com と外して)abc@example.comでマッチングを試して
変換したら、外してあった+abc=example.comを戻すので
abc@example.com → abc+abc=example.com@example.com
abc+abc=example.com@example.com → abc+abc=example.com+abc=example.com@example.com
のように何度も繰り返されちゃうんですわ。
if !/@nomre$/
/([^+=@]+)@(example.com)/ ${1}+${1}=${2}@${2}@nomore
endif
みたいにすれば、一回で止まると思うんだけど、余分な@nomoreをどこで外せばいいのやら。
953:952
08/10/12 03:40:19
URLリンク(www.postfix-jp.info) に
それぞれのパターンは検索されるアドレス全体に適用される正規表現です。従
って、user@domain メールアドレスが user と @domain という構成要素に分割
されたり、user+foo が user と foo に分割されることはありません。
って書いてあった。勘違いしてるかも。