訳者一覧:
 設定ファイル (cf)
 はじめに
 典型的な .mc
 M4 入門
 /etc/mail/
OSTYPE 定義
 LOCAL_MAILER
 USENET
 SMTP
 UUCP
 FAX
 POP
 Procmail
 mail11
 phquery
 cyrus
 qpage
DOMAIN 定義
MAILER 定義
FEATURE 定義
 HACK 機能
 サイトの設定(旧式)
 UUCP メイラ
 書換規則の微調整
LOCAL_RULES
  LOCAL_CONFIG
 マスカレードと中継
 LDAP
 LDAP 再配送
 ANTI-SPAM (未完)
  中継
  送信元の確認
  データべース(アクセス表)
  MAPS プロジェクト
  アクセス表の左項で微調整
  Delay all checks
 STARTTLS
  中継
  Received: ヘッダ
 SMTP 認証
 メイラ・ルールセット追加
 メールフィルタの追加
 待行列の追加
 SMTP 以外の設定
 私は誰ですか?
 複数のホスト名
 MAILERTABLE
 USERDB で氏名との対応付
 その他雑多な特殊機能 (+)
 セキュリティ
 詳細な設定 (confXXXX)
 メッセージ送信
 Map Formats
 src ディレクトリ構成
 Administrative Details
  RULESETS
  MAILERS
  MACROS
  CLASSES
  M4 DIVERSIONS
 日本語訳変更点

この画面は http://home.jp.FreeBSD.org/~koga/cf/ から勝手に持って来て自分用に見易くしたものです。 原本の更新よりも古い可能性があります。
http://www.sendmail.org/m4/masquerading_relaying.html

マスカレードと中継

次のようにして、ホスト名を別のものに見せかける (マスカレードする) こと ができます。
MASQUERADE_AS(`host.domain')
これにより、メールが $j からではなく、host.domain からの発信であるよう にして送信することができます。自分自身のホスト名ががサブドメインとなる ようなマスカレードは普通に行なわれます (逆に、Berkeley が MIT のサイトであるように名前を偽るようなことは普通行ないません)。 この動作は、 FEATURE 定義 を使ってさらに細かく設定することが出来ます (その為にありあまるほどの機能が用意されています)。例えば、 masquerade_envelope, allmasquerade, limited_masquerade, masquerade_entire_domain を参照してください。

マスカレード名は正規化されることはありませんので、 それは唯一の本当の名前であること (すなわち FQDN であって CNAME ではないこと) が重要です。

そうしないで、もしCNAME を使ってしまうと、 受信側でその CNAME が (意図に反して) 正規化されてしまうかもしれません。 したがって、この方法で CNAME 変換をだませる(正規化を抑制できる) という訳ではありません。

通常、マスカレード出来るのは、 自分の機械から発信されたアドレス (つまり正当でなく、まだ @domain が付いていない名前か、 {w} クラス、つまりローカルドメイン名のリストにある名前) だけです。

このようにして定義された マスカレードされる機械の名前は {M} クラスで参照出来るのですが、それは次の方法で 増やすことも出来ます。

MASQUERADE_DOMAIN(`otherhost.domain')
この定義により、user@otherhost.domain 宛てのメールはローカルには配送されないものでも、 中継時に、user@otherhost.domain の文字の部分が、 MASQUERADE_AS で指定されたアドレスであるように書き換えられて配送されます。

この定義内容は、上記記述は、空白で区切ることで名前をいくつでも並べて 指定することも出来ます。 このような名前の一覧がファイルに格納されている場合、

MASQUERADE_DOMAIN_FILE(`filename')
とすることで、指定されたファイルから名前の一覧を読む (すなわち、クラス {M} に要素を追加する) ことができます。

ホストあるいはサブドメインがマスカレードされることから除外するためには、 次のように指定することができます。

MASQUERADE_EXCEPTION(`host.domain')
この指定は、 一つ (もしくは二、三の) ホストの例外を除いて、 ドメイン全体をマスカレードしたい場合に便利だと思います。

通常は、ヘッダアドレスだけがマスカレードされます。もし、エンベロープも 同様にマスカレードしたい場合は、次のようにしてください。

FEATURE(`masquerade_envelope')
例外的に、内部のマスカレードする前の名前を 外部に見せることが必要とされるユーザが必ずあります。

root はその一例です (root は 8.10 より前では「外部に見せる」のが既定となっていました) このような場合に、 次のように指定することで、このリストにユーザを追加することができます。

EXPOSED_USER(`usernames')
この指定は、クラス {E} にユーザを追加します。同様のことを次のようにし て行なうこともできます。
FE/etc/mail/exposed-users

正当でない名前(つまり @hostのない名前) があったら、 その全てをリレーホストに中継するようにもできます。

たとえば、中央のメールサーバがある場合、 そのホストに中継させることで、ユーザは .forward ファイルや aliases を使用する必要がなくなるでしょう。 そうするには次のようにします。

define(`LOCAL_RELAY', `mailer:hostname')
この記述で、配送に使用するメイラの既定値を "relay" にする場合、 "mailer:" の部分を省略することができます。

ローカルの別名定義があって、中継する必要がない(して欲しくない) ユーザ名がある場合、例えば rootで、 これはローカルに別名が定義されているのが普通です。そのような場合には 次のようにすることで、 このリストにエントリを追加することができます。

LOCAL_USER(`usernames')
この指定はクラス {L} にユーザを追加します。 同様のことを次のようにして行なうこともできます。
FL/etc/mail/local-users
/var/spool/mail を共有する形を取っていて、 入って来るメールすべてを中央のハブに送りたい場合、次を使用します。
define(`MAIL_HUB', `mailer:hostname')
この場合も "mailer:" の既定値は "relay" です。 もし、 LOCAL_RELAY と MAIL_HUB の両方を定義し、 そして FEATURE(`stickyhost') を設定した場合は、 正当でない名前は LOCAL_RELAY に送られ、 それ以外のローカルな名前は MAIL_HUB に送られます。

注意: user+detail 形式のアドレス について、 この LOCAL_RELAY と MAIL_HUB を組み合わせて使用できないというバグが (長い間ずっと) 存在しています。 クラス {L} 中の名前はローカルに配送されるので、 それらに対しては aliases ファイルまたは .forward ファイルを持つ必要があります。

たとえば、mastodon.CS.Berkeley.EDU というホストで FEATURE(`stickyhost') を設定している場合、 LOCAL_RELAY, MAIL_HUB の設定と、宛先の組合せ によって次のような効果があります。

FEATURE('stickyhost') がある時の LOCAL_RELAY と MAIL_HUB の効果
メールの宛先訳注
eric eric@mastodon.CS.Berkeley.EDU
LOCAL_RELAY に mail.CS.Berkeley.EDU を設定 mail.CS.Berkeley.EDU
(ローカルな別名はないとして。)
(ローカルに配送される。 別名があれば効く) 正当名だけ受取る
MAIL_HUB に mammoth.CS.Berkeley.EDU を設定 mammoth.CS.Berkeley.EDU (別名付けされた) mammoth.CS.Berkeley.EDU (別名付けされた) 必ず転送
LOCAL_RELAY と MAIL_HUB の両方に上記をそれぞれ設定 mail.CS.Berkeley.EDU (MAIL_HUB は効かず、 LOCAL_RELAY 優先) mammoth.CS.Berkeley.EDU (ローカルな別名はないとして。 MAIL_HUB が効く)

FEATURE(`stickyhost') を設定しない場合、LOCAL_RELAY と MAIL_HUB はそれ ぞれ個別に動作し、MAIL_HUB の設定が優先されます。 外部に出て行くメールすべてを中央の中継サイトに送りたい場合は、次のよう に SMART_HOST を定義します。つまり、以下のようになります。

LOCAL_RELAY
LOCAL_RELAY は正式でない宛先 (たとえば "eric") に適用されます。
MAIL_HUB
はローカルなドメイン上のホストに正式な宛先 (例えば "eric@mastodon.CS.Berkeley.EDU") に適用されます。
SMART_HOST
は他のホストあるいはブラケットで囲まれたアドレスで 正式な宛先 (例えば "eric@mastodon.CS.Berkeley.EDU" あるいは "eric@[127.0.0.1]") に適用されます。
しかし、他の中継定義 (たとえば、UUCP_RELAY, BITNET_RELAY,DECNET_RELAY, FAX_RELAY) は SMART_HOST に優先することに注意してください。このため、 本当にすべてのメールを単一の中央のサイトに送りたい場合は、他の中継定義 をすべて unset しなければなりません。あるいは、さらによい方法として、 それを行なう最小限の設定ファイルを見つけるか作成するかしなければなりま せん。

適切に動作させるために重複を抑制するには、ホスト名はドットで終端させる のがもっともよい方法です。

define(`MAIL_HUB', `host.domain.')
host.domain. の最後のドットに注意して下さい。

この画面は jeedosaquin を使って表示しています。

Copyright cf Project

これらの画面は http://home.jp.FreeBSD.org/~koga/cf/ から勝手に持って来て自分用に見易くした(つもりの)ものです。 原訳の更新よりも古い可能性があります。
英語版: http://home.jp.freebsd.org/~koga/cf/README.orig
Last Update: Sat, 07 Jun 2014 22:16:17 GMT 1.66 2008/03/08