- - PR -
RedHat標準のsendmailでローカル配信をする設定について
1
投稿者 | 投稿内容 | ||||
---|---|---|---|---|---|
|
投稿日時: 2003-12-08 19:58
こんばんは。森谷です。
構築時にまたもや疑問がわき上がったので、相談です。 各サーバ上で色々な監視スクリプトを走らせており、異常が発生した場合は、その旨のメールを遠隔地の管理者に送付しようとしています。 その際のメールの送信でsendmailを利用しようとしているのですが、RedHat標準添付のsendmailの場合、デーモンとして起動させていないと、サーバからメールを送信する事ができません。 メールサーバとしてなら、デーモン起動が必要だと思いますが、通常のサーバから直接メールを送信する場合にも自サーバ上でsendmailを起動しておく必要があるのでしょうか? # その必要はなかった気がするのですが、送信できず、デーモン起動を行おうと # 送信できます。 対処療法では納得出来ないため、皆さんにご相談です。 よろしくお願い致します。 | ||||
|
投稿日時: 2003-12-08 20:18
これでしょうか。
"Q3.44 -- I disabled sendmail on some machines which don't receive mail, but since upgrading to 8.12 they can't send mail either; why?" http://www.sendmail.org/faq/section3.html#3.44 | ||||
|
投稿日時: 2003-12-08 22:22
こんばんは。森谷です。
返信ありがとうございます! 早速Webページを見ました。下記設定が.mcファイルに施してあれば、ローカルからのメールの配信を受けると解釈しました。 -- DAEMON_OPTIONS(`NAME=NoMTA4, Family=inet, Addr=127.0.0.1')dnl 以前は、デーモンとしてsendmailを立ち上げなくても良かったと記憶していますが、8.12以降は、上記設定を施した後、デーモンとして起動ということでしょうか? # 25番で待ち受けるのはあまり気持ちの良い物ではないなと…。 | ||||
|
投稿日時: 2003-12-08 22:49
試してないですが、たぶん、こんな手順になるかと。
# 手持ちのホストは全部postfixなので。 1) メールをキューに入れる。(/bin/mailなどで) 2) (念のため)キューに入ったことを確認。sendmail -bp かな。 あるいは /usr/bin/mailq を実行。 3) キューのメールを送信。sendmail -q を実行だったような。 (確認するなら sendmail -v -q で) | ||||
|
投稿日時: 2003-12-09 10:15
おはようございます。森谷です。
ちいにぃさん返信ありがとうございます。 示して頂いた手順の3)以降はCronで起動するということでしょうか?それも手かも知れませんが、障害時のサーバからのメール配信を行いたいので、常時メールを送信したいのです。 # 3)は一般ユーザでは実行出来ませんでした。 いろいろわがままですよね…。 | ||||
|
投稿日時: 2003-12-09 12:35
私は障害検出プログラムから 1)〜3)の手順を順にキックして‥‥と考えてましたが、 3)の手順を障害検出プログラムからキックしない場合はcronなどで実行しなきゃ なりませんね。(Debian GNU/LinuxのPostfixかEximで、常駐しない場合こういう 設定だったような) ということで、sendmailを常駐せずに、sendmail -q も実行しない‥‥となると、 私には思いつきませんです。 お役に立てず申し訳ないです。 | ||||
|
投稿日時: 2003-12-09 23:08
> # 3)は一般ユーザでは実行出来ませんでした。
ですよね.sudo 使ったらいかがでしょう?監視スクリプトを走らせる権限で sendmail だけ使わせうるようにするとか... ちょっと邪道かもしれませんが... | ||||
|
投稿日時: 2003-12-10 19:38
ローカル配信するには、(本来、自分は書き込みできない他のユーザのメールスプールに書き込むということなので)どこかで、root になる必要がありますよね。
8.12 より前の sendmail では sendmail に root setuid してあった。(ユーザが起動した sendmail コマンドが配信まで行う) 8.12 以降では、root setuid はセキュリティ上イヤなので、daemon 起動することにした。(ユーザが起動した sendmail コマンドは daemon に渡すだけ。daemon が配信を行う) sendmail を setuid するとか、 sudo とか、 root にならせる方法は、いくつかありうるかも知れませんけど、 なぜ、8.12 以降の sendmail が、この方法を選んだのか、よく考えた上で結論を出した方がいいと思います。 |
1