- PR -

Sendmailのリレー設定について

投稿者投稿内容
てんろく
常連さん
会議室デビュー日: 2003/02/04
投稿数: 23
投稿日時: 2003-04-04 23:57
お世話になります。

Sendmailのリレー設定の方法が分からないのです。(知っている方には、とても簡単なことだと思いますが。)

設定は、m4で行っています。
複数台のSendmailサーバから送信されたメールの転送先を、1台のSendmailサーバにスタティックに転送したいのです。(CFでやると、StaticRouteになるそうですが、CFを使ったことないので。)

FEATURE(`msp', `転送先のホスト名', `MSA')とするとできそうな感じがしたのですが、設定してみると、
MAILER(`local'),MAILER(`procmail')が存在するとこのことで、実現できませんでした。
この転送先のホスト名でもメールを受信しているため、ローカル配送を変えることはできません。

良い方法をご存知の方、ご教授お願いいたします。
jun
ベテラン
会議室デビュー日: 2003/01/07
投稿数: 80
お住まい・勤務地: 愛知県
投稿日時: 2003-04-05 00:55
junと言います。
こんにちは。

define(`SMART_HOST',`転送先ホスト名')

これでは実現できませんか?
はずしていたらごめんなさい。
てんろく
常連さん
会議室デビュー日: 2003/02/04
投稿数: 23
投稿日時: 2003-04-05 13:07
junさん、早速のご回答ありがとうございます。

define(`SMART_HOST',`転送先ホスト名')

についてちょっと調べてみました。確かにそのようです。

キーワードが分からないと調べようもなく、困ってました。
あ〜、良かったです。
ありがとうございました。
dawn
会議室デビュー日: 2003/04/08
投稿数: 6
投稿日時: 2003-04-08 13:26
dawnといいます。
もう解決しちゃってるみたいですが^^;

define(`SMART_HOST',`転送先ホスト名')
はCFでいう
DEFAULT_RELAY=
にあたります。
SMART_HOSTを設定しているメールサーバは何も考えずSMART_HOSTに
メールをリレーします。
一般的には内部メールサーバが(DMZなどに置かれる)リレーサーバ
に渡すときに内部側に設定します。

CFのStaticRouteを実現したい場合m4マクロでは
FEATURE(`mailertable')dnl
をm4ファイルに設定し、/etc/mail/mailertableに静的配送先を書きます。
てんろく
常連さん
会議室デビュー日: 2003/02/04
投稿数: 23
投稿日時: 2003-04-10 18:32
てんろくです。

dawnさん、ありがとうございます。まだ、設定していないので、間に合いました。

 このスレッドに投函する前に、FEATURE(`mailertable')についても少し調べてみたのですが、以下のような解説文をどこかで見かけて、ちょっと違うかなと思いました。
 「FEATURE(`mailertable')は、通常、DNSのMXレコードから引けるサーバと異なるサーバにメールを転送する場合に使用する。」と。

 結局、define(`SMART_HOST',`転送先ホスト名')でもFEATURE(`mailertable')でも、実現は可能なようですが、違いはどこなのでしょうか?
 CFでいう、DEFAULT_RELAYとStaticRouteの違いが分からないので、せっかくのdawnさんのアドバイスが分からないのです。すいません、dawnさん...。

 特に「何も考えずSMART_HOSTにメールをリレーします。」とは?
jun
ベテラン
会議室デビュー日: 2003/01/07
投稿数: 80
お住まい・勤務地: 愛知県
投稿日時: 2003-04-10 23:30
junです。
こんにちわ。

#私がレスしてしまってよいのかどうか?
 うまく説明ができるかな・・というのもありますが。。

◆◇◆◇◆◇◆◇◆◇

(1)FEATURE(`mailertable') ・・/etc/mail/mailertable について

   DMZなどに配置されるメールリレーサーバがファイアーウオールの
  内部に存在するメールスプールサーバに静的にメールを配送する時に利用します。
  書式は

   ドメイン名1     smtp:[内部メールスプールサーバ名1]
   ドメイン名2     smtp:[内部メールスプールサーバ名2]
   ドメイン名3     smtp:[内部メールスプールサーバ名3]

  ってな感じです。  
  通常、DNSのMXレコードで指定されるのはDMZのリレーサーバで
  あり、でもリレーサーバで受け取ったメールは内部のスプールサーバ
  (要はmailertableで指定されているそのドメイン名の本当の受け取り先)
  に静的にそのまま転送しちゃう・・・

  静的に配送先を知っているメール以外はちゃんとDNSのMXレコードを見て
  配送します。だってこのファイルに世界中のメールサーバとドメイン名の対応
  付けを書くわけにいかないですもん。
  
(2)define(`SMART_HOST',`転送先ホスト名') について
   
  dawnさんがおっしゃっているように内部メールサーバがDMZ等に配置
  されるリレーサーバにメールを転送する時に設定します。

  例えば自分でスプールしないメール(自分宛のメール以外)で、
  他に配送先を知らないドメインのメールについてはとりあえず
  ここに設定されているメールサーバに投げてしまえって事ですね。。
  何も考えないっていうのはMXレコードもろくに見ずに・・・って
  ニュアンスですよね。(たぶん)

◆◇◆◇◆◇◆◇◆◇

ここで説明している使い方なんてあくまで一例ですので、
たぶん、もっと奥深いものだと思いますけど・・・


こんなんでわかりますかね・・・
日本語下手でごめんなさい。
dawn
会議室デビュー日: 2003/04/08
投稿数: 6
投稿日時: 2003-04-11 09:11
こんにちはdawnです。

junさん、とても丁寧な説明ありがとうございます♪

mailertableとSMART_HOSTの違いは
junさんおっしゃる通りだと思います。

簡単に言うと(簡単すぎて語弊があるかもしれませんが^^;)
mailertable(CFでいうDEFAULT_RELAY)は
「インターネットから送られる来るメールを内部のメールサーバに
配送する際にDMZに置かれるリレーサーバに設定するもの」

SMART_HOST(CFでいうDEFAULT_RELAY)は
「内部からインターネットにメールを送信する際に、
内部メールサーバは一旦DMZなどに置かれるリレーサーバに
メールを渡すので内部のメールサーバに設定するもの」

という私の認識です。

では
dawn
会議室デビュー日: 2003/04/08
投稿数: 6
投稿日時: 2003-04-11 14:36
dawnです。

上記の投稿は記述ミスがありました。

mailertable(CFでいうDEFAULT_RELAY)は
ではなく
mailertable(CFでいうStaticRoute)は
の間違いです^^;

スキルアップ/キャリアアップ(JOB@IT)