21.7. UUCP とともに SMTP を使う
戻る | 第21章 電子メール | 次へ

## 21.7. UUCP とともに SMTP を使う

FreeBSD とともに出荷されている sendmail の設定は、 サイトがインターネットに直接接続しているものとして設計されています。 UUCP 経由でメールを交換したいサイトは、他にも 設定ファイルをインストールしなければいけません。

`/etc/mail/sendmail.cf` を手動で調整することは先進的なトピックです。 sendmail のバージョン 8 は設定ファイルを m4(1) プリプロセッサから生成します。 これにより、高度に抽象化された設定を行うことができます。 m4(1) による設定ファイルは `/usr/src/usr.sbin/sendmail/cf` 以下にあります。

もしシステムをすべてのソースとともにインストールしていなければ、 sendmail の設定材料は分割された個別のソース tarball を取得してください。 FreeBSD のソースコードが入った CDROM をマウントしているのなら、

`#` `cd /cdrom/src` `#` `cat scontrib.?? | tar xzf - -C /usr/src/contrib/sendmail`

と展開してください (展開してもたった数百 KB 程度です)。 `cf` ディレクトリの `README` ファイルは m4 による設定の基本的な手引として役に立つでしょう。

UUCP 配送に対応するための一番よい方法は `mailertable` 機能を使用することです。 これは経路を決定するために sendmail が使用できるデータベースを作成します。

まずはじめに `.mc` ファイルを作成しなければいけません。 `/usr/src/usr.sbin/sendmail/cf/cf` にいくつか例があります。`foo.mc` という名前のファイルをあなたが作成したとすると、 有効な `sendmail.cf` ファイルへ変換するには次のようにするだけです。

`#` `cd /usr/src/usr.sbin/sendmail/cf/cf` `#` `make foo.cf` `#` `cp foo.cf /etc/mail/sendmail.cf`

典型的な `.mc` ファイルは次のようになるでしょう。

VERSIONID(``Your version number`') OSTYPE(bsd4.4) FEATURE(accept_unresolvable_domains) FEATURE(nocanonify) FEATURE(mailertable, `hash -o /etc/mail/mailertable') define(`UUCP_RELAY', `your.uucp.relay`) define(`UUCP_MAX_SIZE', 200000) define(`confDONT_PROBE_INTERFACES') MAILER(local) MAILER(smtp) MAILER(uucp) Cw `your.alias.host.name` Cw `youruucpnodename.UUCP`

`accept_unresolvable_domains`, `nocanonify` および `confDONT_PROBE_INTERFACES` 機能を含んでいる行は、 メール配送時にまったく DNS を使用しません。 `UUCP_RELAY` の記述は UUCP 配送に対応するのに必要です。 そこにインターネットホスト名を単に書くだけで .UUCP pseudo ドメインアドレスを扱うことができるようになります。 大抵の場合、あなたの ISP のメールリレーをそこに入力するでしょう。

次に、 `/etc/mail/mailertable` が必要になります。 メールを配送するリンクが外界との間に一つだけの場合は、 次のようにファイルを記述するだけで十分でしょう。

# # makemap hash /etc/mail/mailertable.db < /etc/mail/mailertable . uucp-dom:`your.uucp.relay`

次はさらに複雑な例です。

# # makemap hash /etc/mail/mailertable.db < /etc/mail/mailertable # horus.interface-business.de uucp-dom:horus .interface-business.de uucp-dom:if-bus interface-business.de uucp-dom:if-bus .heep.sax.de smtp8:%1 horus.UUCP uucp-dom:horus if-bus.UUCP uucp-dom:if-bus . uucp-dom:

はじめの三行はドメインで宛先を指定されたメールが、 配送路を 「近道」 するために、 デフォルトルートではなく代わりにいくつかの UUCP 隣接ホストへ送られる特別な場合を扱います。 次の行はメールを SMTP で配送可能なローカルイーサネットドメインへ送ります。 最後に ``uucp-neighbor` !`recipient`` がデフォルトルートを上書きすることを許可するための UUCP 隣接ホストは .UUCP 仮想ドメイン記法で言及されます。 最後の行は常に他のすべてが当てはまるシングルドットです。 これは UUCP 隣接ホストへの UUCP 配送をすることで、 世界に向けたあなたの普遍的メールゲートウェイとして役に立ちます。 `uucp-dom:` キーワードの後ろにあるノード名はすべて、 `uuname` コマンドを使用することで確かめられる正しい UUCP 隣接ホストである必要があります。

このファイルは、実際に使用する前に DBM データベース形式に変換する必要があることに注意してください。 これを実行するコマンドラインは mailertable ファイルの先頭にコメントとして書かれています。 mailertable を変更するたびにいつもこのコマンドを実行する必要があります。

最後のアドバイス: もし、 いくつかのメールルーティングがうまく動いているかどうか分からないときは sendmail に `-bt` オプションをつけることを覚えておいてください。 これは sendmail を アドレステストモード で起動します。 あなたがテストしたいメールルーティングのアドレスを後につけて、 単純に `3,0` と入力してください。 最後の行は、内部で使われたメールエージェント、 このエージェントが呼び出された目的地ホスト、および (もしかしたら変換された) アドレスを表示します。 このモードを終了するには Ctrl+D を入力します。

`%` `sendmail -bt` ADDRESS TEST MODE (ruleset 3 NOT automatically invoked) Enter <ruleset> <address> `>` `3,0 foo@example.com` canonify input: foo @ example . com ... parse returns: $# uucp-dom $@ `your.uucp.relay` $: foo < @ example . com . > `>` `^D`

戻る | 上に戻る | 次へ
21.6. 先進的なトピックス | ホーム | 21.8. ダイアルアップ接続でメールを使う

本文書、および他の文書は ftp://ftp.FreeBSD.org/pub/FreeBSD/doc/ からダウンロードできます。

FreeBSD に関する質問がある場合には、 ドキュメント を読んだ上で <questions@FreeBSD.org> まで (英語で) 連絡してください。
本文書に関する質問については、 <doc@FreeBSD.org> まで電子メールを (英語で) 送ってください。