トップページunix
1001コメント299KB

sendmail その2

■ このスレッドは過去ログ倉庫に格納されています
0001名無しさん@お腹いっぱい。NGNG
m4でもWIDE CFでもsendmail.cf直書きでも
sendmailについて語りましょう

前スレ
http://pc.2ch.net/test/read.cgi/unix/979274978/l50

0067名無しさん@お腹いっぱい。NGNG
>>66
大体そういう理解でOK。
だが、ホントにそんなふうに表示される?
0068名無しさん@お腹いっぱい。NGNG
(´-`).oO(mailnullユーザってどこで使ってるんだろう)
0069名無しさん@お腹いっぱい。NGNG
>>68
ttp://www.imasy.or.jp/~ume/published/sendmail-milter/
げ、知らんかった。いつのまにそんな仕組みになってたんだろ。
007066NGNG
>>67 ありがとう!
本当にそういう風に表示されたことがあります.
64bit Solaris 8 SPARC, 8.11.7 gcc-3.2 compile.
SMTPでメールを送るのが(受け取るのも)ひどく重くなったことがあって、
その時にはsendmailを親プロセスとするsendmailが10個位psで見えたことも
ありました。
0071名無しさん@お腹いっぱい。NGNG
>>67
> だが、ホントにそんなふうに表示される?
外してるような気がするが fork(2) した瞬間とか…
0072名無しさん@お腹いっぱい。NGNG
>>71
MLやってる所では常時、子プロセスが数十個起動してるYO!
時に200個とか居てて酷い事に…。
0073名無しさん@お腹いっぱい。NGNG
PPPoE接続な環境でsendmail8.12.9を使おうとしているのですが、
My unqualified host name (ホスト名) unknown; sleeping for retry
とcritなlogが出力されてしまいます。
職場で作業したときは /etc/hosts に FQDN なホスト名を書いて対処したのですが、
今回はPPPoE接続なため/etc/hostsにはプライベートアドレスしか書かれていないので
どうしていいものか悩んでいます。
以前sendmail8.9.3くらいのときはCFを使ってsendmail.cfを作っていて、
そのときはドメイン名を含んだホスト名をsendmail.cf埋め込んでいたような気もします。

ちなみにホスト名もDNSに登録されていない名前(しかもshort name)でインストールされています。
この場合、どのように対処するのが正しいのでしょうか?
007473NGNG
スレが目立つようにageときます
007573NGNG
あ、sendmail.cfはsendmailに付属のcfを使って作っています。
0076名無しさん@お腹いっぱい。NGNG
800通ほどメールを送ろうと思ったらSendmailが落ちてしまうのれす。
別にspamを送るわけじゃなくて、自前のソフトでお客さんに配信したいのだけれど、
なぜか途中でsendmailのサービスが落ちてます。sendmailつかうなっつーことか、
これは。
ちなみにBccやCcじゃなく、1通づつtoにあて先書いてます。
0077名無しさん@お腹いっぱい。NGNG
>>76
maillog も晒さず、sendmail のバージョンも晒さず、
「自前のソフト」とやらがどんなしくみで配信してるのかも晒さない、か。
独り言ならよそでやってね。

あと、そういうタイプの配信やるのであれば、smtpfeed 使うという手もあるのでは。
0078名無しさん@お腹いっぱい。NGNG
>>76
パイプで流し込んでるのか,それとも自前のソフトとやらで
smtpしてるのかによっても違うだろ。

>>77
smtpfeedもいいけど、perlでNet::DNS + Net::SMTPで直接配送も速いぞ。



007976NGNG
Windowsマシンのメール配信ソフトから送ってます。
0080動画直リンNGNG
http://homepage.mac.com/hitomi18/
0081名無しさん@お腹いっぱい。NGNG
当然、ログを見たり負荷をチェックしたりしてないよね。
008279NGNG
topで見てる限りでは負荷はそれほどなかったれす。
もちろんログにはなにも形跡が残ってないのれす。
テツ&トモのきぶんなのれす。
0083名無しさん@お腹いっぱい。NGNG
んじゃ、パケットダンプしてsmtpセッションがどうなってるか調べろ。
0084あぼーんNGNG
あぼーん
0085名無しさん@お腹いっぱい。NGNG
Vineの2.6 に Sendmail8.12.9をインストールしてみました。
で、CFで.cfを作成して(もちろん8.12.X用に変換して)
動かしてみました。

telntet localhost 25でSMTPコマンドを叩くと他のサーバにメールを送信
できるのですが、localからMailコマンドで送信しようとすると、
stat=queued となってqueueに溜まってしまいます。

どうしたらMailコマンドで送信できるようにできるでしょうか?
宜しくお願いします。
0086名無しさん@お腹いっぱい。NGNG
submit.cfはちゃんと作って設定したか?
というか,配布物に含まれているドキュメントにはちゃんと目を通してるか?
0087名無しさん@お腹いっぱい。NGNG
あ、↑は>>85へのレスね。
0088名無しさん@お腹いっぱい。NGNG
>>85
> (もちろん8.12.X用に変換して)

一体何をしたのだ?
008985NGNG
>>86
 メーラーからだとちゃんと他のホスト(DEFAULT_RELAY)へ送ってくれる
んですけど、localからMailコマンドで送信するとqueueに溜まっちゃうんです。
May 30 16:36:01 abcdefg sendmail[5072]: h4U7a1Dd005072: to=hogehoge@hogehoge.co.jp, delay=00:00:00,
mailer=esmtp, pri=30042, dsn=4.4.3, stat=queued


009085NGNG
>>88
diffをとるとこんなかんじです。

70c70
< V10/Berkeley
---
> V8/Berkeley
243c243
< ###O AutoRebuildAliases=False
---
> O AutoRebuildAliases=False
688c688
< A=TCP $h
---
> A=IPC $h
691c691
< A=TCP $h
---
> A=IPC $h
694c694
< A=TCP $h
---
> A=IPC $h
697c697
< A=TCP $h
---
> A=IPC $h
0091名無しさん@お腹いっぱい。NGNG
んー、8.12 あたりになるとさすがに以前と構成がかなり違うので、
特に特殊な機能を利用しているわけではないのであれば、
CF から変換なんてことせずに、
cf で sendmail.cf を作った方がトラブル少ないと思うぞ。

CF で作った sendmail.cf でトラブっても面倒見れる香具師なんかほとんどいないよ。
009285NGNG
>>91

実は、特殊な昨日を使ってたりするんですよ。mailertableとかusertableとか。
んなもんで、なかなか、cfに移行できてないんです。
(単に勉強不足とも言いますが・・・)

でも、メーラーからは普通に受け付けてくれるのに、Mailコマンドで送信できない
のが納得できないんです。
sendmail.cfの問題とは違うのかな?
0093動画直リンNGNG
http://homepage.mac.com/hitomi18/
0094名無しさん@お腹いっぱい。NGNG
>>89
sendmail が root の suid ではなくなったので、Mail コマンドによって
実行された sendmail はキューに入れるだけのことしかしません。

キューを処理する sendmail を別途実行しておいて下さいな。
0095名無しさん@お腹いっぱい。NGNG
mailertableとかusertableとかが特殊な機能だとは思えんけど、
それはそれとして、どうしてもCFでやりたいのだったらば、
8.12.9ではなく、8.9.3の穴をふさいで使った方がいいんじゃないかね。
0096名無しさん@お腹いっぱい。NGNG
>>92
mailertable も usertable も代替機能が cf にあるから、
今からでも勉強して cf へ移行した方が断然お徳。

どうしてもイヤなら >>95 にしる。
0097名無しさん@お腹いっぱい。NGNG
>>95
8.11.x でもいいんじゃないかな。
0098名無しさん@お腹いっぱい。NGNG
submit.cf腐ってるならsendmail -Amで呼んでみたらどうよ?
0099名無しさん@お腹いっぱい。NGNG
8.12系でホスト名がml(たとえばml.hoge.jp)にメールを送信すると
なぜかすごい時間がかかる。
調べてみるとどうもsendmailがDNSで調べるときにml.hoge.jpだけではなく
mlだけも調べようとして、mlドメインはマリ共和国で割り当てがあって
そのドメインのwhoisがないためタイムアウト待ちをしているみたい。
8.9系では大丈夫みたい。こんな症状出た人はいませんか?
0100100getずさーNGNG
>>99

>>32いれてみれ

010199NGNG
>>100
だめですた
なんでだろ〜
0102名無しさん@お腹いっぱい。NGNG
>>101
何か特別な設定してる?
0103名無しさん@お腹いっぱい。NGNG
>>99
その場しのぎだけど、/etc/hosts に、
AAA.BBB.CCC.DDD ml.hoge.jp
と明示的に指定するとどうだろうか。
0104名無しさん@お腹いっぱい。NGNG
>>103
MX 引くから意味ないんでない?
0105名無しさん@お腹いっぱい。NGNG
>>104
そんな気がしてきた。指摘どうも。

昔、自分のとこでも同じような現象が出た。そのときは、
/etc/hostsに自分のホスト名を FQDNで書くとなおった。
Solarisのお話。8.9の話なので >>99の力になれぬ。
010699NGNG
みなさんレスありがと
>>102
FreeBSD4.6のsendmailをほぼデフォルト使用なんだけどねえ。

>>103
DNSにmlのzoneを作ったら大丈夫だったけどこんなんじゃあねぇ・・・

>>105
>/etc/hostsに自分のホスト名を FQDNで書くとなおった。
う〜ん、明日にでも確認してみよう。
010799NGNG
もう原因がわからないので8.9系に戻しました。
なんかバージョンアップで直るのはいいけど、
バージョンダウンで直るのはやだな・・・
次の新しいバージョンが出たらもうバージョンアップしてもう一度試そうかな。
0108名無しさん@お腹いっぱい。NGNG
sendmailの質問かUNIX一般の質問かはたまたqpopperの質問か迷ったが
ここに書きます.
sendmailでtaro.yamada@example.comを受け取らせたい場合、また
qpopperでPOPで認証させたい場合どうやるのが良いのでしょうか.
sendmailで送受信は/etc/aliases(/etc/mail/aliases)に
taro.yamada: abc0123
とか書き、送信時のFrom書き換えを行なわなければいけますが、
Solaris 8ですが、普通account nameが9文字を越えると越えた部分は
無視されてしまうようです.前方一致で他のaccountを(例 taro.yamakawa)
見に行ってPOP3 passwd errorではねられます.Solaris8, sendmail 8.11.8,
qpopper 4.0.5です.
0109名無しさん@お腹いっぱい。NGNG
>>108
sendmail8.11.8 っていつでたの?
0110名無しさん@お腹いっぱい。NGNG
>Solaris 8ですが、普通account nameが9文字を越えると越えた部分は無視されてしまうようです.

それはアカウントじゃなくてパスワードだろ?
試せばわかるけど、アカウント名は8文字以上でも認識される。
ただあまり推奨されていないだけ。
0111名無しさん@お腹いっぱい。NGNG
>>110
last -a とか?
0112名無しさん@お腹いっぱい。NGNG
くだらない質問はここに書き込め!なんでもアリ24の
紹介によりここにきました。
sendmailで10M以上のメールを受信しなくする設定ってできますか?
環境はfreebsd4.5、sendmail.8.12.9、cyrus-sasl-1.5.27、qpopper4.0.5で
以前portsでsendmail.8.12.2をcyrus-sasl-1.5.27をインストールし、その後
sendmail.8.12.9をソース展開してインストールしました。
quotaはインストールしていません。
よろしくお願いします。
0113名無しさん@お腹いっぱい。NGNG
O MaxMessageSize=10485760
0114名無しさん@お腹いっぱい。NGNG
sendmail.cf をどうやって作ってるかによるが、
例えば cf で SMTP_MAILER_MAX を定義すると SMTP 接続のサイズの上限が設定される。
詳しくは cf の README 参照。

sendmail.cf を直接編集するなら mailer の設定のとこで M= オプションだ。

mailer 毎に設定でなくてよければ confMAX_MESSAGE_SIZE を定義する
(sendmail.cf ではオプションの MaxMessageSize)
0115名無しさん@お腹いっぱい。NGNG
>>114
> mailer 毎に設定でなくてよければ confMAX_MESSAGE_SIZE を定義する
> (sendmail.cf ではオプションの MaxMessageSize)
これって (E)SMTP クライアントがサイズを通知してきたときしか
効かないんでなかったっけ?
0116114NGNG
>>115
そんなことないよ (O MaxMessageSize=5 で)

220 xxx.example.com ESMTP Sendmail 8.12.6/8.11.6; xxx
HELO localhost
250 xxx.example.com Hello localhost [127.0.0.1], pleased to meet you
MAIL FROM: xxx@example.com
250 2.1.0 xxx@example.com... Sender ok
RCPT TO: xxx@example.com
250 2.1.5 xxx@example.com... Recipient ok
DATA
354 Enter mail, end with "." on a line by itself
hogehoge
.
552 5.2.3 Message exceeds maximum fixed size (5)
0117名無しさん@お腹いっぱい。NGNG
SMTP の RFC には MTA は MX が無いと A RR を使うって書いてあるけど、
これをやってない MTA って存在するのかな?
つまり IP が一個しか無くて、ホストも一台しかなくても、
腐れ MTA に対する保険で MX を定義しておく価値はあるのかなって質問です。
0118名無しさん@お腹いっぱい。NGNG
MS-ExchangeでMX無いと配送できなかった記憶あり
気のせいかも
0119名無しさん@お腹いっぱい。NGNG
@ のうしろが MX でないものはその組織の公式なものではなく、
DNS をいじる権限のない香具師がゲリラ的に動かしてるだけという認識。
RFC 的にはともかく。
0120名無しさん@お腹いっぱい。NGNG
ゲリラを差別すんじゃねぇよ、この体制側のイヌめ!
0121名無しさん@お腹いっぱい。NGNG
といちおう罵倒しておいて、
参考になりました。ども >>118-119
0122名無しさん@お腹いっぱい。NGNG
RH9 で sendmailを利用して cgiからsendmail経由でメールを飛ばしています。

宛先と、BCCで2箇所に飛ばす設定にしてあるのですが、届くアドレスと届かないアドレスが
存在するようで、困ってます。

エラーログで届かないアドレスに関しては
star=Data format error ,
start=Deferred: 450<xxx@localhost.lodaldomain>: Sender address rejected: Domain not
found

というのが返ってきてるみたいなのですが、見当つきません。

senderを変えてしまっているのが原因なのでしょうか

よろしければアドバイスおねがいします。

0123名無しさん@お腹いっぱい。NGNG
>>122
> start=Deferred: 450<xxx@localhost.lodaldomain>: Sender address rejected: Domain not
> found
書いてあるとおりじゃないだろうか。
実在するドメインを @ 以下に指定してみては?
0124名無しさん@お腹いっぱい。NGNG
>123
sender は実在するドメインを使用してます。
0125名無しさん@お腹いっぱい。NGNG
>>124
「エンベロープ」って言葉は知ってる?
0126名無しさん@お腹いっぱい。NGNG
Mail Headerのfromじゃなくて SMTP session時
に喋るFROMがおかしいんじゃねーの?
0127名無しさん@お腹いっぱい。NGNG
おおかた submit.cf を設定してないとかいうオチだろ。
0128名無しさん@お腹いっぱい。NGNG
つかCGIなら DNS とMX引いて自力で送ればいいじゃん。
外部プログラムに頼るから問題の切り分けではまるわけだし。
0129名無しさん@お腹いっぱい。NGNG
>>128
外部プログラムに丸投げすることで省ける手間とのトレードオフも考慮しる。
「一概に自力で送る方が良い」とは言えないと思うが。
0130名無しさん@お腹いっぱい。NGNG
unix初心者です。聞くに値しない質問かもしれませんがご容赦下さい。
sendmail8.12.9のインストールを試みているのですが、コンパイル時に

「../../include/sm/bdb.h:17:17: db.h: No such file or directory」

とエラーが出てしまい、うまくいきません。
「bdb.h」は「../include/sm/」配下に確かに存在しているのにこのエラーが出ます。
このエラーの回避法をご存知の方いらっしゃいましたら知恵を貸してください!
ちなみにOSはsolaris8です。お願いします。
0131名無しさん@お腹いっぱい。NGNG
>>130
で、肝心の db.h は?
0132名無しさん@お腹いっぱい。NGNG
130です。「db.h」はエラーにあるパスのところにもともとあったんですが、それだけではダメなんですかね…。
あるのに「No such file or directory」と怒られるので困ってます。
0133名無しさん@お腹いっぱい。NGNG
人に聞く前にsrcをgrep してみたか?bdb.hをのぞいてみたか?
RELEASE_NOTEにもちゃんと書いてある。以上のことやったら何が必要かわかるだろ。
判らないんだったら,MTAなんか使うな。以上。

だけじゃ,かわいそうなので、.
とりあえず、Berkeley DB libraryをいれんさい。
0134名無しさん@お腹いっぱい。NGNG
sendmail-9系って、大幅にアーキテクチャが変更されるらしいね。

どんなものか、今一度そのコードを落としてきて自分のメール鯖としてテスト運用させてもらいたい。
0135名無しさん@お腹いっぱい。NGNG
前スレにもあったけど、postfixやqmailのように、ちいさなアプリケーションを
複数組みあわせたものになるんでしょ?期待してない。
8.xがメンテされつづけるかぎり8.x使いつづけます。
0136名無しさん@お腹いっぱい。NGNG
モノリシックな巨大プロセス一個でどーんと構えてるのが sendmail の良さだったのにね。
0137名無しさん@お腹いっぱい。NGNG
それのどこがいいのよ?
0138名無しさん@お腹いっぱい。NGNG
>>137
ま た d j b 厨 か
0139122NGNG
.>124-129
みなさん、どうもです。
全然わからなかったので少し調べてました。

どうやら、先方のメールサーバに、実在しないドメインですよ、と弾かれていたみたいです。
届いた方のメールヘッダを読んでみると
Return-path , Fromが xxx@localhost.localdomain [GlobalIP]
になっていました。 これが原因だったようです。

また問題が出てきてしまったのですが、このReturn-PathやらFromやらを
実在するドメインに変更するために sendmail.cf sendmail.mc を眺めていたのですが
さっぱり分かりませんでした。

どこをいじればいいのでしょうか、よろしければアドバイスお願いします。

0140名無しさん@お腹いっぱい。NGNG
# my official domain name
# ... define this only if sendmail cannot automatically determine your domain
#Dj$w.Foo.COM
0141名無しさん@お腹いっぱい。NGNG
cf/READMEよめ。

DOMAIN(`CS.Berkeley.EDU')dnl

This example is specific to the Computer Science Division at Berkeley.
You can use "DOMAIN(`generic')" to get a sufficiently bland definition
that may well work for you, or you can create a customized domain
definition appropriate for your environment.
0142122NGNG
>140
>141
ありがとうございます、今から試行錯誤してみます。
0143名無しさん@お腹いっぱい。NGNG
試行錯誤しちゃいかん。
ちゃんとドキュメント読んできちんと理解してから設定すれば、
試行錯誤なんかすることない。
0144hohiNGNG
現在Linuxでsendmailを構築しております。
このメールサーバーで、受け付けたメールには
必ずbccヘッダーを付与して、リレーさせるような
設定は可能なのでしょうか?
結果的には、このメールサーバーを通った
すべてのメールは、指定されたbccアドレスへも
配信されるのが、目的です。
0145名無しさん@お腹いっぱい。NGNG
>>144
板違いです。
http://pc.2ch.net/linux
0146名無しさん@お腹いっぱい。NGNG
さすがにこれを板違いと隔離するのはどうかと。
どのへんに Linux 依存の話がありますか? >>145
0147名無しさん@お腹いっぱい。NGNG
logall.c sendmail でググれ。
sendmailFAQにもあるかな。
0148名無しさん@お腹いっぱい。NGNG
>>144
Bcc: つけなきゃだめ?
sendmail の -X とかじゃだめ?
0149名無しさん@お腹いっぱい。NGNG
そもそも Bcc: がついたメールが配送される状況ってどうなの?
0150hohiNGNG
>>147
英語よめね〜ねど
がんばります。
ありがとう

>>148
当方初心者の為、-X付けると
何が起こるかわかりません。
少し調べます。
ありがとうございます。
0151_NGNG
http://homepage.mac.com/hiroyuki44/
0152名無しさん@お腹いっぱい。NGNG
>>146
>現在Linuxでsendmailを構築しております。
0153名無しさん@お腹いっぱい。NGNG
>>149
従業員のやりとりするメールをきゃぷちゅあするのではないでしょうか
0154名無しさん@お腹いっぱい。NGNG
>>153
それには Bcc: フィールドが必要なの?
0155名無しさん@お腹いっぱい。NGNG
必要ではないが可能だな。ってほかにどんなきゃぷちゃの方法ある?
0156名無しさん@お腹いっぱい。NGNG
Postfix には always_bcc という悪魔のオプションがあったりなんかする。

関係ないが、>>152 それは Linux に*依存*してるのか?
0157名無しさん@お腹いっぱい。NGNG
非商用版はlogall.cを使わないとだめだけど、
商用版のsendmail mailstream managerには標準でその機能が
ついてたりする。
0158名無しさん@お腹いっぱい。NGNG
>>157
なんだかいやらしいな。

つーか、この手の質問ってめっちゃ頻出な気がするけど、
それだけそういう機能の需要があるってことなんだろうな。
世知辛いのう。
0159名無しさん@お腹いっぱい。NGNG
おれもシステムぶちょーにいわれてpostfixでin/outのメールを
すべてコピーするようにした。あと、ファイルサーバの中調べて
怪しげなファイル抽出して保存するやつとか。

考査や、評定に思いっきり影響するんだと思うよ。
0160名無しさん@EmacsNGNG
FreeBSD sendmail-8.12.9 で構築してます。
存在しないユーザー宛に大量のメールを送りつけられるのですが、
いい対処法ありますでしょうか。from に指定されたアドレスに
エラーメールを返してしまうのですが、もちろん指定されたアドレスなど
存在しないのです。
0161名無しさん@お腹いっぱい。NGNG
存在しないユーザー宛のメールは受け取らない。
MX 引いて存在しなければ550返す。
Double Rverse Lookupして、一致しなければ550返す
DNSBLつかって、拒絶する
0162名無しさん@お腹いっぱい。NGNG
>>161
サンクスです。
とりあえず、
存在しないユーザ宛は550を返すようにしてあります。
で、define(`confBIND_OPTS',`-DNSRCH -DEFNAMES') で、
Double Reverse lookupもしてます。
また、FEATURE(dnsbl,`relays.ordb.org') な感じで、
DNSBLも使ってます。
で、550を返す設定だとqueueに溜ってしまうこともあるので、
unavailable Address in validにしてみました。
どうでしょうか。
0163名無しさん@お腹いっぱい。NGNG
>>161
あやむー?
0164PS2じゃたりんNGNG
すいません、初めてFreeBSDですが、
5.1R入れましたけど、
とりあえずやった仕事はDNS、Portsの更新(CVSup)、
Apache2のインストール、次にsendmail使いたいですが、
FreeBSDで最初からsendmailは標準で入るんですか?
一旦削除して、最新を入れたいですけど、
ただportsでmake installで充分ですか?
どなたかご教授お願いします。
0165名無しさん@お腹いっぱい。NGNG
5.xのsendmailは8.9.12ですが、ご不満ですか?
0166名無しさん@お腹いっぱい。NGNG
>>165
(゚Д゚)ハァ?
■ このスレッドは過去ログ倉庫に格納されています