Merge 1.4 -> 1.8 changes.

Submitted by:	Mihoko TANAKA <mihoko@pa.yokogawa.co.jp> and
		The Japanese Documentation Project
This commit is contained in:
Masafumi Max NAKANE 1997-01-20 16:23:21 +00:00
parent 4ad5e9dffe
commit 04ce9ce98f
Notes: svn2git 2020-12-08 03:00:23 +00:00
svn path=/head/; revision=1071
2 changed files with 592 additions and 344 deletions

View file

@ -1,6 +1,6 @@
<!-- $FreeBSD$ --> <!-- $FreeBSD$ -->
<!-- The FreeBSD Japanese Documentation Project --> <!-- The FreeBSD Japanese Documentation Project -->
<!-- Original revision: 1.4 --> <!-- Original revision: 1.8 -->
<!-- <!--
<!DOCTYPE linuxdoc PUBLIC "-//FreeBSD//DTD linuxdoc//EN"> <!DOCTYPE linuxdoc PUBLIC "-//FreeBSD//DTD linuxdoc//EN">
@ -11,222 +11,273 @@
<author> &a.wlloyd; <author> &a.wlloyd;
<date> 24 Nov 1996, (c) 1996 <date> 24 Nov 1996, (c) 1996
<abstract> このセクションでは, FreeBSD 上での電子メールをセットアップするための基本的な情報について書かれています. </abstract> <abstract> このセクションでは, FreeBSD 上での電子メールをセットアップするための基本的な情報について書かれています. </abstract>
<toc> <toc>
--> -->
<chapt><heading>電子メール<label id="mail"></heading> <chapt><heading>電子メール<label id="mail"></heading>
<sect><heading>基礎事項</heading>
<p><em>原作: &a.wlloyd;.</em> <p><em>原作: &a.wlloyd;.</em>
<p><em>訳: &a.mihoko;9 December 1996.</em> <p><em>訳: &a.mihoko;14 January 1997.</em>
<p> 電子メール, というとその概念は簡単そうに聞こえますが, 電子メールは <p> 電子メールのコンフィグレーションは,
非常に複雑な仕組みになっています. 1台のマシン上で電子メールシステムを 多くの <ref name="システム管理" id="bibliography"> の書籍で主題
単純にセットアップする以上のことをしたい場合には, sendmail についての として取り上げられています.
本を買って参照してください. ネットワークに合わせたメールホスト構築の範疇を越えるようなことをする
のは, 簡単にはいきません.
<sect1><heading>序章</heading> 電子メールのコンフィグレーションの一部は, ドメインネームシステム
<p> (DNS) によって制御されています. あなた自身で DNS サーバを
電子メール交換の主要なプログラムや構成要素を, 次に示します. 立ち上げたい場合には, <bf><tt> /etc/namedb </tt></bf> ファイルを
<sect2><heading>ユーザプログラム</heading> あなたのサーバに合うように変更してください.
<p> これは, <tt /elm, pine, mail/ や, より洗練された WWW ブラウザ さらに詳しい情報が必要な場合には,'<bf><tt> man -k named </tt></bf>'
コマンドを実行してください.
<sect><heading>基本事項</heading>
<p>
電子メール交換の主要なプログラムや構成要素を, 次に示します.
<tt/メールホスト/ はあなたのホストやネットワークに対するすべて
の電子メールを配送したり受け取ったりするサーバです.
<sect1><heading>ユーザプログラム</heading>
<p> これは, <tt /elm, pine, mail/ や, より洗練された WWW ブラウザ
のようなプログラムです. このプログラムは, 単純に のようなプログラムです. このプログラムは, 単純に
すべてのメールをローカルメールホスト転送します. この転送は, すべてのメールをローカルメールホスト転送します. この転送は,
<tt>sendmail</tt> を呼び出すか, メールホストに対して TCP 上 <tt>sendmail</tt> を呼び出すか, メールホストに対して TCP 上
の通信を使ってメールを配送するかのいずれかによっておこないます. の通信を使ってメールを配送するかのいずれかによっておこないます.
<sect2><heading>転送エージェント - Sendmail</heading>
<p> 通常, このプログラムはバックグラウンドで実行されている <sect1><heading>メールホストサーバデーモン</heading>
<tt /sendmail または smail/ です. 実行をやめたり, <p> 通常, このプログラムはバックグラウンドで実行されている
コマンドライン引数を変更するには, <tt /sendmail または smail/ です. 実行をやめたり,
<tt> /etc/sysconfig </tt> ファイルを編集します. コマンドライン引数を変更するには,
特別な理由(防火壁-Firewall 上などの 場合)がないかぎり, <tt> /etc/sysconfig </tt> ファイルを編集します.
そのまま, 実行する設定にしておくべきです. 特別な理由(<ref name="ファイアウォール" id="firewalls"> を
構築している場合など)がないかぎり, 実行する設定にしておくべきです.
<p> <p>
<tt>sendmail</tt> は安全なサイト上であっても潜在的にセキュリティ上の <tt>sendmail</tt> は安全なサイト上であっても潜在的にセキュリティ上の
弱点になることを覚えておいてください. 弱点になることを覚えておいてください.
<tt>sendmail</tt> のいくつかのバージョンでは, セキュリティ上の問題が <tt>sendmail</tt> のいくつかのバージョンでは, セキュリティ上の問題が
知られています. 知られています.
<p> <tt> sendmail </tt> は, 送信先へのメールを受け取る実際の <p><tt><bf> sendmail </bf></tt> は, 電子メールの配送,
ホストを決定するために, DNS を参照します. 受信の二つの仕事をおこないます.
<p> sendmail はローカルキューからメッセージを取り出し, 受け取る
コンピュータ上の sendmail へインターネットを介して配送します. <p><bf><tt/sendmail/ </bf> は, サイトの外側へメールを配送する必要が
<p> また, sendmail はその逆をおこなうこともできます. ある場合, DNS を参照して配送先のメールを受け取る実際のホストを決定します.
つまり, メッセージを受け取って, ローカルマシン上に
メッセージを保管します. <p> <tt/sendmail/ が配送エージェントとして動作する場合は,
<sect2><heading>POP サーバ</heading> ローカルキューからメッセージを取り出し, 受信側
<p> このプログラムはメールボックスからメールを取り出し, コンピュータ上の sendmail へインターネットを介して配送します.
ブラウザにメールを渡します. POP サーバをあなたのマシン上で
動かしたい場合には, 次の二つの作業をする必要があります. <sect1><heading>DNS - ネームサービス</heading>
<p> ドメインネームシステムとそのデーモン <tt/named/ は, ホストから
IP アドレス, および ホスト名からメールホストへのマッピングをおこなう
データベースを持っています.
IP アドレスは "A" レコードで定義します. "MX" レコードでは,
あなた宛のメールを受け取るメールホストを定義します.
もし あなたのホスト宛のメールに対する "MX" レコードを持っていない場合には,
メールはあなたのホストに直接配送されます.
あなたが自分自身の DNS サーバを実行させていない場合には,
DNS 上の情報を自分で変更することはできません.
インターネットプロバイダを使用している場合には, プロバイダに依頼して
変更してもらってください.
<sect1><heading>POP サーバ</heading>
<p> このプログラムはメールボックスからメールを取り出し,
ブラウザにメールを渡します. POP サーバをあなたのマシン上で
動かしたい場合には, 次の二つの作業をする必要があります.
<itemize> <itemize>
<item>ports やパッケージから pop ソフトウェアを入手する. <item>pop ソフトウェアを
<item>POP サーバをロードするように, <tt>/etc/inetd.conf</> ファイルを編集する. <url url="../ports/mail.html" name="ports コレクション"> から入手
します.
pop ソフトウェアは, <tt><bf> /usr/ports </bf></tt>
または パッケージコレクションにあります.
このハンドブックには, <ref name="ポート" id="ports"> システム
についての完全な解説のセクションがあります.
<item>POP サーバを起動できるように,
<bf><tt>/etc/inetd.conf</tt></bf>
ファイルを編集します.
</itemize> </itemize>
入手した pop プログラムには, 説明文が入っていますので, それを読んで 入手した pop プログラムには説明文が付属していますので, それを読んで
ください. ください.
<sect1><heading>コンフィグレーション</heading> </sect>
<sect><heading>コンフィグレーション</heading>
<sect1><heading>基本事項</heading>
<p> <p>
あなたのマシンに FreeBSD を普通にインストールすれば, それだけで他の あなたのマシンに FreeBSD を普通にインストールして,
ホストへ電子メールを送ることができるようになります. <bf><tt> /etc/resolv.conf </tt></bf> ファイルを設定するか,
問題は, あなたのホストに戻ってくるようなメールがないことです. またはネームサーバを走らせれば,
メッセージを送るたびに自動<tt>返信アドレス</tt>を手 他のホストへ電子メールを送ることができるようになります.
で編集することを厭わないならば, これは問題にはなりません. あなたのホスト宛のメールを特定のホストに配送するようにしたい場合
には, 次の二つの方法があります.
<p> <p>
同じユーザ名を使用して, 電子メールを他のホストで受け取ることができる - ネームサーバ ( <tt><bf>man -k named</></> ) を実行し,
ようにするのは, 比較的簡単です. あなた自身のドメイン <tt> smallminingco.com </tt> を定義する.
この場合は, POP または telnet 経由で電子メールを受け取ることができます. <p>
- あなたのホストに対する現在の DNS 名に配送されたメールを受け取る.
つまり <tt> dorm6.ahouse.school.edu </tt> 宛に送られたメールを受け取る.
<p>
インターネットへ完全に接続されたあなたのホストに直接メールが配送される
ためには,
ネームサーバのどのオプションを使用するかはあまり重要なことではありません.
大切なのは, あなたが恒久的な IP アドレスを持っていなくてはいけないと
いうことです. ダイナミック PPP で得られる IP アドレスではダメです.
もしあなたがファイアウォールの内側にいる場合は,
ファイアウォールが smtp トラフィックを
あなたのホストに渡すように設定されていなければいけません.
そのためには, ファイアウォールとなるホストの
<bf><tt> /etc/services </tt></bf> に
<verb>
smtp 25/tcp mail #Simple Mail Transfer
</verb>
と書いておきます.
あなたのホスト上でメールを受けたい場合には, DNS の MX エントリが
あなたのホストアドレスを指しているか,
あなたのホストの DNS 名に対して MX エントリが存在しないことを
確認してください.
次のコマンドを実行してみてください.
<verb>
newbsdbox# hostname
newbsdbox.freebsd.org
newbsdbox# host newbsdbox.freebsd.org
newbsdbox.freebsd.org has address 204.216.27.xx
</verb>
もしあなたのマシンが上記のメッセージだけを出力したならば,
<tt><bf>root@newbsdbox.freebsd.org</bf></tt> へのメールは, 問題なく
配送されるでしょう.
上記のメッセージの代わりに,
<verb>
newbsdbox# host newbsdbox.freebsd.org
newbsdbox.FreeBSD.org has address 204.216.27.xx
newbsdbox.FreeBSD.org mail is handled (pri=10) by freefall.FreeBSD.org
</verb>
というメッセージが出力された場合は, あなたのマシンに直接配送された
すべてのメールは, freefall 上の同じユーザ名に配送されてます.
この情報は, あなたのドメインネームサーバ上で設定します.
この設定をおこなうホストは, <bf><tt> /etc/resolv.conf </tt></bf>
にプライマリネームサーバとして書いたホストと同じホストであるべきです.
メールルーティング情報をもつ DNS レコードは, メールエクスチェンジャエントリ
(MX エントリ) です. MX エントリが存在しない場合には,
アドレスレコードにしたがって, 直接宛先ホストに配送されます.
freefall.freebsd.org の現時点での MX エントリは, 次のようになっています.
<verb>
freefall MX 30 mail.crl.net
freefall MX 40 agora.rdrop.com
freefall HINFO Pentium FreeBSD
freefall MX 10 freefall.FreeBSD.org
freefall MX 20 who.cdrom.com
freefall A 204.216.27.xx
freefall CNAME www.FreeBSD.org
</verb>
freefall は多くの MX エントリを持っています.
もっとも MX の値が小さいホストが, 最終的にメールを受け取ります.
もし freefall が他の処理で忙しかったり, ダウンしているような場合には,
他のホストが, 一時的にメールをキューにいれます.
使い勝手をよくするためには, 代替の MX サイトは, それぞれ
別の経路でインターネットへ接続しているとよいでしょう.
インターネットプロバイダまたは他の関連サイトが, このサービスを
提供することができます.
<bf><tt>dig, nslookup, </tt></bf>や<bf><tt> host </tt></bf> コマンド
を使うと, とても便利です.
<sect1><heading>あなたのドメイン (ネットワーク) に対するメール設定<label id="mail:domain"></heading>
<p>
ネットワークメールホストをセットアップするためには, すべての
ワークステーション宛のメールを直接受ける必要があります.
言いかえれば, <tt> *.smallminingco.com </tt> 宛のすべてのメールを
ハイジャックし, そのメールをあなたのメールホストである個々のマシンにに配送
します.
それらのワークステーション上のネットワークユーザは, たいていメールを
POP や telnet 等で受け取ります.
「同じユーザ名」のユーザアカウントが, 両方のマシンに存在しなければな 「同じユーザ名」のユーザアカウントが, 両方のマシンに存在しなければな
りません. 必要ならば, アカウントを作成するために <tt/adduser/ りません. 必要ならば, アカウントを作成するために <tt/adduser/
コマンドを使用してください. <tt/shell/ を <tt>/nonexistant</tt> コマンドを使用してください. <tt/shell/ を <tt>/nonexistant</tt>
に設定すると, ユーザはログインできなくなります. に設定すると, ユーザはログインできなくなります.
使用する予定のメールホストは, あなたのホスト上でメール交換が 使用する予定のメールホストは, 各ワークステーションごとにメール交換が
できるように設定されていなければなりません. これは, DNS (すなわち できるように設定されていなければなりません. これは, DNS (すなわち
BIND や named) の設定が必要です.詳細は, ネットワークの本を参照してください. BIND や named) の設定が必要です. 詳細は, ネットワークの本を参照してください.
基本的には, 以下の行を DNS サーバに追加する必要があります. 基本的には, 以下の行を DNS サーバに追加する必要があります.
<verb> <verb>
myhost.smalliap.com A xxx.xxx.xxx.xxx ; Your ip pc24.smallminingco.com A xxx.xxx.xxx.xxx ; Workstation ip
MX 10 smtp.smalliap.com ; your mailhost MX 10 smtp.smallminingco.com ; Your mailhost
</verb> </verb>
自前で DNS サーバを走らせているのでなければ, この作業は, 自分では 自前で DNS サーバを実行しているのでなければ, この作業は, 自分では
おこなえません. 自分で DNS サーバを走らせたくなければ, おこなえません. 自分で DNS サーバを実行したくない場合は,
インターネットプロバイダ等に依頼して, 作業をおこなってもらってください. インターネットプロバイダ等に依頼して, 作業をおこなってもらってください.
この作業により, あなたのホスト宛のメールは, この作業により, このワークステーション宛のメールは,
MX (メールエクスチェンジャ) ホストに送られるようになります. MX (メールエクスチェンジャ) ホストに送られるようになります.
A レコードがどのマシンを指しているかどいうことには関係なく, A レコードがどのマシンを指しているかどいうことには関係なく,
メールは MX ホストに送られます. メールは MX ホストに送られます.
<p> <p>
この機能は, 仮想ホストを実装するために使用されています. この機能は, 仮想電子メールホスト (Virtual Email Hosting)
を実装するために使用されています.
<p>例 <p>例
<p> <p>
わたしは foo.bar というドメインを持つ顧客がいます. わたしは foo.bar というドメインを持つ顧客がいて,
foo.bar 宛のメールをすべて, わたしのマシン foo.bar 宛のメールをすべて, わたしのマシン
smtp.amalliap.com に送りたいと思っています. smtp.amalliap.com に送りたいと思っています.
このような場合, あなたの DNS サーバ上で, 以下のようなエントリを作成 このような場合, あなたの DNS サーバ上で, 以下のようなエントリを作成
しなければなりません: しなければなりません:
<verb> <verb>
foo.bar MX 10 smtp.smalliap.com ; your mailhost foo.bar MX 10 smtp.smalliap.com ; your mailhost
</verb> </verb>
そのドメインに対して電子メールを送りたいだけなら, そのドメインに対して電子メールを送りたいだけなら,
A レコードは必要ありません. A レコードは必要ありません.
つまり, <tt>foo.bar</tt> に対するアドレスレコードが存在しない限り,
'<bf><tt>ping foo.bar</tt></bf>' コマンドが動作することを期待しては
いけません
メールボックスに最終的に配送するためにメールを実際に受けている メールボックスへの最終的な配送が行われるメールを実際に受けている
メールホスト上では, sendmail がどのホストに対してのメールを受け付けて メールホスト上では, sendmail はメールを受け付けているホストを
いるかを知らせなければなりません. 知っている必要があります.
<p>そのためには, (FEATURE(use_cw_file) を使用している場合) <p>そのためには, (FEATURE(use_cw_file) を使用している場合)
/etc/sendmail.cw ファイルに myhost.smalliap.com を追加してください. /etc/sendmail.cw ファイルに pc24.smallminingco.com を追加するか,
または, /etc/sendmail.cf ファイルに, "Cw myhost.smalliap.com" の行を <bf><tt>/etc/sendmail.cf</tt></bf> ファイルに,
追加してください. "Cw myhost.smalliap.com" の行を追加してください.
<p>あなたのホスト上で実際にメールを受信するためには,
あなたのホストを指すように変更された MX エントリがなければいけません.
また, Cw 行をあなたのマシン上の <tt>sendmail.cf</tt> に記述しなけれ
ばなりません.
<p>
あなたがインターネットに対して永久に接続するのでなければ, これは悪い
考えです. メールは戻ってきてしまうでしょう.
<p> <p>
もしあなたが本気で <tt/sendmail/ を使って何かしようと思うなら, もしあなたが本気で <tt/sendmail/ を使って何かしようと思うなら,
sendmail のソースをインストールするべきです. sendmail のソースをインストールするべきです.
ソースには, たくさんのドキュメントも付いています. ソースには, たくさんのドキュメントも付いています.
<ref name="UUCP と sendmail" id="sendmailuucp"> に <tt/sendmail/ <ref name="UUCP のセットアップ" id="sendmailuucp"> の節に <tt/sendmail/ の
ソースを入手するのに必要な情報が掲載されています. ソースを入手するのに必要な情報が掲載されています.
</sect>
<sect><heading>よくある質問 (FAQ)<label id="mailfaq"></heading>
<sect1> <sect1>
<heading>どうして わたしのサイト上にいるホストに対して完全な形のドメイン名 (FQDN) を使わなければいけないの?</heading> <heading> UUCP のセットアップ<label id="sendmailuucp"></heading>
<p><em>よくある質問 (FAQ) より抜粋.</em>
<p> <p>
おそらく, そのホストは実際には違うドメインに属しているのでしょう.
例えば, もしあなたが foo.bar.edu ドメインにいて,
bar.edu ドメインの中の「mumble」というホストに接続したいと
します. その場合あなたは, 「mumble」ではなく
「mumble.bar.edu」という 完全な形のドメイン名 (FQDN) によっ
てそのホストを参照しなければなりません.
<p> <p>
伝統的に, これは BSD BIND リゾルバでは許されていました. FreeBSD に付属する sendmail のコンフィグレーションは,
しかしながら, FreeBSD に載っている現在の <em>BIND</em> の
バージョンでは, あなたが属しているドメイン以外では,
完全な形でないドメイン名に対するデフォルトの省略形は
使用されていません.
適切でないホスト名 <tt>mumble</tt> は, <tt>mumble.foo.bar.edu</tt>
としても解決されるべきです. そうしないと, ルートドメインに
検索をしにいってしまいます.
<p>
これは, <tt>mumble.bar.edu</tt> や <tt>mumble.edu</tt> を
経由して検索し続けるような過去の習慣とは異なります.
なぜこれが悪い慣例, さらにはセキュリティーホールと考えられ
るようになった理由については, RFC1535 を参照してください.
<p>
この問題を回避するには,
<p><tt>
search foo.bar.edu bar.edu
</tt><p>
という行を
<p><tt>
domain foo.bar.edu
</tt>
に置き換えます.
<p>
これをあなたのマシン上の <tt>/etc/resolv.conf</tt> ファイルに
記述してください. しかしながら, 検索順序は, RFC 1535 に
書かれている, 「ローカル管理と公共の管理の間の境界線」
を越えないことを, あらかじめ確認してください.
</sect1>
<sect1><heading>Sendmail が ``mail loops back to myself'' という
エラーを出します</heading>
<p>
これについては, sendmail FAQ の中で, 次のように答えられて
います:-
<verb>
* 次のような 「Local configuration error」というメッセージ
が出ます:
553 relay.domain.net config error: mail loops back to myself
554 <user@domain.net>... Local configuration error
この問題をどうやって解決すればよいでしょうか?
MX レコードを使って, あるドメイン(例: domain.net)宛にメー
ルを特定のホスト(この場合, relay.domain.net)に転送しようと設定したと
します. ただし中継ホストは, 自身を domain.net とは認識していません.
(FEATURE(use_cs_file) を使用している場合は)
/etc/sendmail.cw に, domain.net を追加してください.
または, 「Cw domain.net」を /etc/sendmail.cf に追加してく
ださい.
</verb>
<p>
sendmail FAQ は, <tt>/usr/src/usr.sbin/sendmail</tt> にあ
ります. 「ひとひねりした」メール設定
をしたいと思っているなら, FAQ を読むことをおすすめします.
<sect1>
<heading>UUPC を使ってメール配送をおこなうにはどうしたらいい?<label id="sendmailuucp"></heading>
<p>
FreeBSD に載っている sendmail のコンフィグレーションは,
直接インターネット接続しているサイトに合うように作られてい 直接インターネット接続しているサイトに合うように作られてい
ます. メールを UUCP 経由で交換するようにしたい場合には, ます. メールを UUCP 経由で交換するようにしたい場合には,
別の sendmail コンフィグレーションファイルをインストールし 別の sendmail コンフィグレーションファイルをインストールし
なければなりません. なければなりません.
<p> <p>
<tt>/etc/sendmail.cf</tt> を手動で作成することは, 純正主義者 <tt>/etc/sendmail.cf</tt> を手動で作成することは, 純正主義者
がおこなうことだと考えられています. sendmail のバージョン 8 がおこなうことだと考えられています. sendmail のバージョン 8
@ -234,17 +285,15 @@ domain foo.bar.edu
コンフィグレーションファイルを生成する方法が取られています. コンフィグレーションファイルを生成する方法が取られています.
この場合, 実際に手動で作成したコンフィグレーションは, この場合, 実際に手動で作成したコンフィグレーションは,
実際のコンフィグレーションより簡潔です. 実際のコンフィグレーションより簡潔です.
以下の場所にあるコンフィギュレーションファイルを使用してく 以下の場所にあるコンフィグレーションファイルを使用してください.
ださい.
<verb> <verb>
/usr/src/usr.sbin/sendmail/cf /usr/src/usr.sbin/sendmail/cf
</verb> </verb>
システム上にすべてのソースをインストールして システム上にすべてのソースをインストールして
いない場合, sendmail の設定スタッフは, ソースを いない場合, sendmail の設定ツールは不完全なままであり,
tar でまとめてさらにそれを分割してある配布物を, 展開しなければ それは個別のソース配布物の中にあります.
なりません. CD-ROM をマウントしてあれば, 以下のようにします. CD-ROM をマウントしてあれば, 以下のようにします.
<verb> <verb>
cd /usr/src cd /usr/src
@ -254,7 +303,7 @@ domain foo.bar.edu
驚かないでください. これはたった数百キロバイトのサイズのファ 驚かないでください. これはたった数百キロバイトのサイズのファ
イルです. イルです.
<tt>cf</tt> ディレクトリ上にある <tt>README</tt> ファイル <tt>cf</tt> ディレクトリ上にある <tt>README</tt> ファイル
には, m4 コンフィギュレーションの基本的な紹介が書かれてい には, m4 コンフィレーションの基本的な紹介が書かれてい
ます. ます.
<p> <p>
@ -305,7 +354,7 @@ domain foo.bar.edu
説明できません. その理由について, ここでは質問しないでください. 説明できません. その理由について, ここでは質問しないでください.
.UUCP 仮想ドメインアドレスを扱うことができるインターネット .UUCP 仮想ドメインアドレスを扱うことができるインターネット
ホスト名を書いてください. ホスト名を書いてください.
おそらく, 使用する ISP のメール中継ホスト名をそこに入力する おそらく, 使用する ISP のメール中継ホスト名をそこに記述する
ことになります. ことになります.
<p> <p>
@ -329,8 +378,8 @@ domain foo.bar.edu
です. はじめの三行は, ドメインアドレスが指定されたメールが です. はじめの三行は, ドメインアドレスが指定されたメールが
デフォルトルートに送信せずに, 配送パスを「短縮」して, 隣接 デフォルトルートに送信せずに, 配送パスを「短縮」して, 隣接
UUCP サイトにメールを送るための設定です. UUCP サイトにメールを送るための設定です.
次の行は, メールを SMTP を使用して配送されているローカル 次の行は, メールを SMTP を使用して配送されているローカル
イーサネットドメイン上のマシンに送信するための設定です. イーサネットドメイン上のマシンに送信するための設定です.
最後に, UUCP 接続されているドメインが, .UUCP という仮想ド 最後に, UUCP 接続されているドメインが, .UUCP という仮想ド
メイン表記されている場合です. これは, メイン表記されている場合です. これは,
「uucp-neighbor!recipient」をデフォルト規則で書換えるため 「uucp-neighbor!recipient」をデフォルト規則で書換えるため
@ -375,8 +424,83 @@ domain foo.bar.edu
> ^D > ^D
j@uriah 192% j@uriah 192%
</verb> </verb>
</sect>
<sect1><heading>ダイアルアップ PPP ホストで電子メールを使うにはどうしたらいい?</heading>
<sect><heading>よくある質問 (FAQ)<label id="mailfaq"></heading>
<p><em>このセクションは, FAQ から移動してきました.</em>
<sect1>
<heading>どうして 同じサイトのホストに対して完全な形のドメイン名 (FQDN) を使わなければいけないの?</heading>
<p>
おそらく, そのホストは実際には違うドメインに属しているのでしょう.
例えば, もしあなたが foo.bar.edu ドメインにいて,
bar.edu ドメインの中の「mumble」というホストに接続したいと
します. その場合あなたは, 「mumble」ではなく
「mumble.bar.edu」という完全な形のドメイン名 (FQDN) によっ
てそのホストを参照しなければなりません.
<p>
伝統的に, これは BSD BIND リゾルバでは許されていました.
しかしながら, FreeBSD に付属する現在の <em>BIND</em> の
バージョンでは, 自分が属しているドメイン以外では,
完全な形でないドメイン名に対するデフォルトの省略形は
使用できません.
ですから, 完全でないホスト名 <tt>mumble</tt> は,
<tt>mumble.foo.bar.edu</tt> として解決されるか,
ルートドメインに検索しにいくでしょう.
<p>
これは, <tt>mumble.bar.edu</tt>, <tt>mumble.edu</tt>
というように検索し続けるような過去の動作とは異なります.
なぜこれが悪い慣例, さらにはセキュリティーホールと考えられ
るようになった理由については, RFC1535 を参照してください.
<p>
この問題を回避するには,
<p><tt>
search foo.bar.edu bar.edu
</tt><p>
という行を
<p><tt>
domain foo.bar.edu
</tt>
に置き換えます.
<p>
これを自分のマシン上の <tt>/etc/resolv.conf</tt> ファイルに
記述してください. しかしながら, 検索順序は, RFC 1535 に
書かれている, 「ローカル管理と公共の管理の間の境界線」
を越えないことを, あらかじめ確認してください.
</sect1>
<sect1><heading>Sendmail が ``mail loops back to myself'' というエラーを出します</heading>
<p>
これについては, sendmail FAQ の中で, 次のように答えられて
います:-
<verb>
* 次のような 「Local configuration error」というメッセージ
が出ます:
553 relay.domain.net config error: mail loops back to myself
554 <user@domain.net>... Local configuration error
この問題をどうやって解決すればよいでしょうか?
MX レコードを使って, あるドメイン(例: domain.net)宛にメールを
特定のホスト (この場合, relay.domain.net) に転送しようと設定したと
していますが, 中継ホストは自身が domain.net であるとは認識
していません.
(FEATURE(use_cs_file) を使用している場合は)
/etc/sendmail.cw に, domain.net を追加してください.
または, 「Cw domain.net」を /etc/sendmail.cf に追加してください.
</verb>
<p>
sendmail FAQ は, <tt>/usr/src/usr.sbin/sendmail</tt> に
あります. 「ちょっと凝った」メール設定
をしたい場合は, FAQ を読むことをおすすめします.
<sect1><heading>ダイアルアップ PPP ホストで電子メールを使うにはどうしたらいいの?</heading>
<p> <p>
LAN 上にある FreeBSD マシンを, インターネットに接続したいと LAN 上にある FreeBSD マシンを, インターネットに接続したいと
します. FreeBSD マシンは, その LAN でのメールゲートウェイになります. します. FreeBSD マシンは, その LAN でのメールゲートウェイになります.
@ -409,7 +533,7 @@ bigco.com. MX 10 bigco.com.
プライマリ MX サイトにメールを配送しようと, あなたのホストに接続しに プライマリ MX サイトにメールを配送しようと, あなたのホストに接続しに
いきます. いきます.
ログインスクリプトとして, このようなものを使うといでしょう. ログインスクリプトとして, このようなものを使うといでしょう.
<verb> <verb>
#!/bin/sh #!/bin/sh
# Put me in /usr/local/bin/pppbigco # Put me in /usr/local/bin/pppbigco
@ -435,14 +559,14 @@ bigco.com. MX 10 bigco.com.
> ばなりません. > ばなりません.
> >
> すべてのメールを今すぐ送るために sendmail を初期化するコマンドはあ > すべてのメールを今すぐ送るために sendmail を初期化するコマンドはあ
> るでしょうか?もちろん私たちのマシン上には, ユーザはルート (root) 権限 > るでしょうか? もちろん私たちのマシン上には, ユーザはルート (root) 権限
> を持っていません. > を持っていません.
sendmail.cf の 「privacy flags」 セクションに, sendmail.cf の 「privacy flags」 セクションに,
「Opgoaway,restrictqrun」の定義があります. 「Opgoaway,restrictqrun」の定義があります.
root 以外のユーザがキューを処理できるようにするには, root 以外のユーザがキューを処理できるようにするには,
restrictqrun を削除してください. また, MX を再調整が必要かもれません. restrictqrun を削除してください. また, MX を再調整が必要かもれません.
あなたがたは, 顧客のサイトに対する一番優先度の高い MX なので, あなたがたは, 顧客のサイトに対する一番優先度の高い MX なので,
次のように定義します: 次のように定義します:
@ -453,7 +577,7 @@ OwTrue
このようにすると, リモートサイトからのメールが, 顧客のマシンと接続し このようにすると, リモートサイトからのメールが, 顧客のマシンと接続し
ようとせず, 直接あなたがたのホストマシンに配送されるようになります. ようとせず, 直接あなたがたのホストマシンに配送されるようになります.
ホストマシンに配送されたメールは, 続いて顧客のマシンに送られます. ホストマシンに配送されたメールは, 続いて顧客のマシンに送られます.
これはホスト名にのみ有効なので, 顧客のメルマシンに, これはホスト名にのみ有効なので, 顧客のメルマシンに,
「host.customer.com」とは別に, 「customer.com」も定義する必要があり 「host.customer.com」とは別に, 「customer.com」も定義する必要があり
ます. DNS 上で, 「customer.com」に対する A レコードを定義してください. ます. DNS 上で, 「customer.com」に対する A レコードを定義してください.
</verb> </verb>

View file

@ -1,6 +1,6 @@
<!-- $FreeBSD$ --> <!-- $FreeBSD$ -->
<!-- The FreeBSD Japanese Documentation Project --> <!-- The FreeBSD Japanese Documentation Project -->
<!-- Original revision: 1.4 --> <!-- Original revision: 1.8 -->
<!-- <!--
<!DOCTYPE linuxdoc PUBLIC "-//FreeBSD//DTD linuxdoc//EN"> <!DOCTYPE linuxdoc PUBLIC "-//FreeBSD//DTD linuxdoc//EN">
@ -11,222 +11,273 @@
<author> &a.wlloyd; <author> &a.wlloyd;
<date> 24 Nov 1996, (c) 1996 <date> 24 Nov 1996, (c) 1996
<abstract> このセクションでは, FreeBSD 上での電子メールをセットアップするための基本的な情報について書かれています. </abstract> <abstract> このセクションでは, FreeBSD 上での電子メールをセットアップするための基本的な情報について書かれています. </abstract>
<toc> <toc>
--> -->
<chapt><heading>電子メール<label id="mail"></heading> <chapt><heading>電子メール<label id="mail"></heading>
<sect><heading>基礎事項</heading>
<p><em>原作: &a.wlloyd;.</em> <p><em>原作: &a.wlloyd;.</em>
<p><em>訳: &a.mihoko;9 December 1996.</em> <p><em>訳: &a.mihoko;14 January 1997.</em>
<p> 電子メール, というとその概念は簡単そうに聞こえますが, 電子メールは <p> 電子メールのコンフィグレーションは,
非常に複雑な仕組みになっています. 1台のマシン上で電子メールシステムを 多くの <ref name="システム管理" id="bibliography"> の書籍で主題
単純にセットアップする以上のことをしたい場合には, sendmail についての として取り上げられています.
本を買って参照してください. ネットワークに合わせたメールホスト構築の範疇を越えるようなことをする
のは, 簡単にはいきません.
<sect1><heading>序章</heading> 電子メールのコンフィグレーションの一部は, ドメインネームシステム
<p> (DNS) によって制御されています. あなた自身で DNS サーバを
電子メール交換の主要なプログラムや構成要素を, 次に示します. 立ち上げたい場合には, <bf><tt> /etc/namedb </tt></bf> ファイルを
<sect2><heading>ユーザプログラム</heading> あなたのサーバに合うように変更してください.
<p> これは, <tt /elm, pine, mail/ や, より洗練された WWW ブラウザ さらに詳しい情報が必要な場合には,'<bf><tt> man -k named </tt></bf>'
コマンドを実行してください.
<sect><heading>基本事項</heading>
<p>
電子メール交換の主要なプログラムや構成要素を, 次に示します.
<tt/メールホスト/ はあなたのホストやネットワークに対するすべて
の電子メールを配送したり受け取ったりするサーバです.
<sect1><heading>ユーザプログラム</heading>
<p> これは, <tt /elm, pine, mail/ や, より洗練された WWW ブラウザ
のようなプログラムです. このプログラムは, 単純に のようなプログラムです. このプログラムは, 単純に
すべてのメールをローカルメールホスト転送します. この転送は, すべてのメールをローカルメールホスト転送します. この転送は,
<tt>sendmail</tt> を呼び出すか, メールホストに対して TCP 上 <tt>sendmail</tt> を呼び出すか, メールホストに対して TCP 上
の通信を使ってメールを配送するかのいずれかによっておこないます. の通信を使ってメールを配送するかのいずれかによっておこないます.
<sect2><heading>転送エージェント - Sendmail</heading>
<p> 通常, このプログラムはバックグラウンドで実行されている <sect1><heading>メールホストサーバデーモン</heading>
<tt /sendmail または smail/ です. 実行をやめたり, <p> 通常, このプログラムはバックグラウンドで実行されている
コマンドライン引数を変更するには, <tt /sendmail または smail/ です. 実行をやめたり,
<tt> /etc/sysconfig </tt> ファイルを編集します. コマンドライン引数を変更するには,
特別な理由(防火壁-Firewall 上などの 場合)がないかぎり, <tt> /etc/sysconfig </tt> ファイルを編集します.
そのまま, 実行する設定にしておくべきです. 特別な理由(<ref name="ファイアウォール" id="firewalls"> を
構築している場合など)がないかぎり, 実行する設定にしておくべきです.
<p> <p>
<tt>sendmail</tt> は安全なサイト上であっても潜在的にセキュリティ上の <tt>sendmail</tt> は安全なサイト上であっても潜在的にセキュリティ上の
弱点になることを覚えておいてください. 弱点になることを覚えておいてください.
<tt>sendmail</tt> のいくつかのバージョンでは, セキュリティ上の問題が <tt>sendmail</tt> のいくつかのバージョンでは, セキュリティ上の問題が
知られています. 知られています.
<p> <tt> sendmail </tt> は, 送信先へのメールを受け取る実際の <p><tt><bf> sendmail </bf></tt> は, 電子メールの配送,
ホストを決定するために, DNS を参照します. 受信の二つの仕事をおこないます.
<p> sendmail はローカルキューからメッセージを取り出し, 受け取る
コンピュータ上の sendmail へインターネットを介して配送します. <p><bf><tt/sendmail/ </bf> は, サイトの外側へメールを配送する必要が
<p> また, sendmail はその逆をおこなうこともできます. ある場合, DNS を参照して配送先のメールを受け取る実際のホストを決定します.
つまり, メッセージを受け取って, ローカルマシン上に
メッセージを保管します. <p> <tt/sendmail/ が配送エージェントとして動作する場合は,
<sect2><heading>POP サーバ</heading> ローカルキューからメッセージを取り出し, 受信側
<p> このプログラムはメールボックスからメールを取り出し, コンピュータ上の sendmail へインターネットを介して配送します.
ブラウザにメールを渡します. POP サーバをあなたのマシン上で
動かしたい場合には, 次の二つの作業をする必要があります. <sect1><heading>DNS - ネームサービス</heading>
<p> ドメインネームシステムとそのデーモン <tt/named/ は, ホストから
IP アドレス, および ホスト名からメールホストへのマッピングをおこなう
データベースを持っています.
IP アドレスは "A" レコードで定義します. "MX" レコードでは,
あなた宛のメールを受け取るメールホストを定義します.
もし あなたのホスト宛のメールに対する "MX" レコードを持っていない場合には,
メールはあなたのホストに直接配送されます.
あなたが自分自身の DNS サーバを実行させていない場合には,
DNS 上の情報を自分で変更することはできません.
インターネットプロバイダを使用している場合には, プロバイダに依頼して
変更してもらってください.
<sect1><heading>POP サーバ</heading>
<p> このプログラムはメールボックスからメールを取り出し,
ブラウザにメールを渡します. POP サーバをあなたのマシン上で
動かしたい場合には, 次の二つの作業をする必要があります.
<itemize> <itemize>
<item>ports やパッケージから pop ソフトウェアを入手する. <item>pop ソフトウェアを
<item>POP サーバをロードするように, <tt>/etc/inetd.conf</> ファイルを編集する. <url url="../ports/mail.html" name="ports コレクション"> から入手
します.
pop ソフトウェアは, <tt><bf> /usr/ports </bf></tt>
または パッケージコレクションにあります.
このハンドブックには, <ref name="ポート" id="ports"> システム
についての完全な解説のセクションがあります.
<item>POP サーバを起動できるように,
<bf><tt>/etc/inetd.conf</tt></bf>
ファイルを編集します.
</itemize> </itemize>
入手した pop プログラムには, 説明文が入っていますので, それを読んで 入手した pop プログラムには説明文が付属していますので, それを読んで
ください. ください.
<sect1><heading>コンフィグレーション</heading> </sect>
<sect><heading>コンフィグレーション</heading>
<sect1><heading>基本事項</heading>
<p> <p>
あなたのマシンに FreeBSD を普通にインストールすれば, それだけで他の あなたのマシンに FreeBSD を普通にインストールして,
ホストへ電子メールを送ることができるようになります. <bf><tt> /etc/resolv.conf </tt></bf> ファイルを設定するか,
問題は, あなたのホストに戻ってくるようなメールがないことです. またはネームサーバを走らせれば,
メッセージを送るたびに自動<tt>返信アドレス</tt>を手 他のホストへ電子メールを送ることができるようになります.
で編集することを厭わないならば, これは問題にはなりません. あなたのホスト宛のメールを特定のホストに配送するようにしたい場合
には, 次の二つの方法があります.
<p> <p>
同じユーザ名を使用して, 電子メールを他のホストで受け取ることができる - ネームサーバ ( <tt><bf>man -k named</></> ) を実行し,
ようにするのは, 比較的簡単です. あなた自身のドメイン <tt> smallminingco.com </tt> を定義する.
この場合は, POP または telnet 経由で電子メールを受け取ることができます. <p>
- あなたのホストに対する現在の DNS 名に配送されたメールを受け取る.
つまり <tt> dorm6.ahouse.school.edu </tt> 宛に送られたメールを受け取る.
<p>
インターネットへ完全に接続されたあなたのホストに直接メールが配送される
ためには,
ネームサーバのどのオプションを使用するかはあまり重要なことではありません.
大切なのは, あなたが恒久的な IP アドレスを持っていなくてはいけないと
いうことです. ダイナミック PPP で得られる IP アドレスではダメです.
もしあなたがファイアウォールの内側にいる場合は,
ファイアウォールが smtp トラフィックを
あなたのホストに渡すように設定されていなければいけません.
そのためには, ファイアウォールとなるホストの
<bf><tt> /etc/services </tt></bf> に
<verb>
smtp 25/tcp mail #Simple Mail Transfer
</verb>
と書いておきます.
あなたのホスト上でメールを受けたい場合には, DNS の MX エントリが
あなたのホストアドレスを指しているか,
あなたのホストの DNS 名に対して MX エントリが存在しないことを
確認してください.
次のコマンドを実行してみてください.
<verb>
newbsdbox# hostname
newbsdbox.freebsd.org
newbsdbox# host newbsdbox.freebsd.org
newbsdbox.freebsd.org has address 204.216.27.xx
</verb>
もしあなたのマシンが上記のメッセージだけを出力したならば,
<tt><bf>root@newbsdbox.freebsd.org</bf></tt> へのメールは, 問題なく
配送されるでしょう.
上記のメッセージの代わりに,
<verb>
newbsdbox# host newbsdbox.freebsd.org
newbsdbox.FreeBSD.org has address 204.216.27.xx
newbsdbox.FreeBSD.org mail is handled (pri=10) by freefall.FreeBSD.org
</verb>
というメッセージが出力された場合は, あなたのマシンに直接配送された
すべてのメールは, freefall 上の同じユーザ名に配送されてます.
この情報は, あなたのドメインネームサーバ上で設定します.
この設定をおこなうホストは, <bf><tt> /etc/resolv.conf </tt></bf>
にプライマリネームサーバとして書いたホストと同じホストであるべきです.
メールルーティング情報をもつ DNS レコードは, メールエクスチェンジャエントリ
(MX エントリ) です. MX エントリが存在しない場合には,
アドレスレコードにしたがって, 直接宛先ホストに配送されます.
freefall.freebsd.org の現時点での MX エントリは, 次のようになっています.
<verb>
freefall MX 30 mail.crl.net
freefall MX 40 agora.rdrop.com
freefall HINFO Pentium FreeBSD
freefall MX 10 freefall.FreeBSD.org
freefall MX 20 who.cdrom.com
freefall A 204.216.27.xx
freefall CNAME www.FreeBSD.org
</verb>
freefall は多くの MX エントリを持っています.
もっとも MX の値が小さいホストが, 最終的にメールを受け取ります.
もし freefall が他の処理で忙しかったり, ダウンしているような場合には,
他のホストが, 一時的にメールをキューにいれます.
使い勝手をよくするためには, 代替の MX サイトは, それぞれ
別の経路でインターネットへ接続しているとよいでしょう.
インターネットプロバイダまたは他の関連サイトが, このサービスを
提供することができます.
<bf><tt>dig, nslookup, </tt></bf>や<bf><tt> host </tt></bf> コマンド
を使うと, とても便利です.
<sect1><heading>あなたのドメイン (ネットワーク) に対するメール設定<label id="mail:domain"></heading>
<p>
ネットワークメールホストをセットアップするためには, すべての
ワークステーション宛のメールを直接受ける必要があります.
言いかえれば, <tt> *.smallminingco.com </tt> 宛のすべてのメールを
ハイジャックし, そのメールをあなたのメールホストである個々のマシンにに配送
します.
それらのワークステーション上のネットワークユーザは, たいていメールを
POP や telnet 等で受け取ります.
「同じユーザ名」のユーザアカウントが, 両方のマシンに存在しなければな 「同じユーザ名」のユーザアカウントが, 両方のマシンに存在しなければな
りません. 必要ならば, アカウントを作成するために <tt/adduser/ りません. 必要ならば, アカウントを作成するために <tt/adduser/
コマンドを使用してください. <tt/shell/ を <tt>/nonexistant</tt> コマンドを使用してください. <tt/shell/ を <tt>/nonexistant</tt>
に設定すると, ユーザはログインできなくなります. に設定すると, ユーザはログインできなくなります.
使用する予定のメールホストは, あなたのホスト上でメール交換が 使用する予定のメールホストは, 各ワークステーションごとにメール交換が
できるように設定されていなければなりません. これは, DNS (すなわち できるように設定されていなければなりません. これは, DNS (すなわち
BIND や named) の設定が必要です.詳細は, ネットワークの本を参照してください. BIND や named) の設定が必要です. 詳細は, ネットワークの本を参照してください.
基本的には, 以下の行を DNS サーバに追加する必要があります. 基本的には, 以下の行を DNS サーバに追加する必要があります.
<verb> <verb>
myhost.smalliap.com A xxx.xxx.xxx.xxx ; Your ip pc24.smallminingco.com A xxx.xxx.xxx.xxx ; Workstation ip
MX 10 smtp.smalliap.com ; your mailhost MX 10 smtp.smallminingco.com ; Your mailhost
</verb> </verb>
自前で DNS サーバを走らせているのでなければ, この作業は, 自分では 自前で DNS サーバを実行しているのでなければ, この作業は, 自分では
おこなえません. 自分で DNS サーバを走らせたくなければ, おこなえません. 自分で DNS サーバを実行したくない場合は,
インターネットプロバイダ等に依頼して, 作業をおこなってもらってください. インターネットプロバイダ等に依頼して, 作業をおこなってもらってください.
この作業により, あなたのホスト宛のメールは, この作業により, このワークステーション宛のメールは,
MX (メールエクスチェンジャ) ホストに送られるようになります. MX (メールエクスチェンジャ) ホストに送られるようになります.
A レコードがどのマシンを指しているかどいうことには関係なく, A レコードがどのマシンを指しているかどいうことには関係なく,
メールは MX ホストに送られます. メールは MX ホストに送られます.
<p> <p>
この機能は, 仮想ホストを実装するために使用されています. この機能は, 仮想電子メールホスト (Virtual Email Hosting)
を実装するために使用されています.
<p>例 <p>例
<p> <p>
わたしは foo.bar というドメインを持つ顧客がいます. わたしは foo.bar というドメインを持つ顧客がいて,
foo.bar 宛のメールをすべて, わたしのマシン foo.bar 宛のメールをすべて, わたしのマシン
smtp.amalliap.com に送りたいと思っています. smtp.amalliap.com に送りたいと思っています.
このような場合, あなたの DNS サーバ上で, 以下のようなエントリを作成 このような場合, あなたの DNS サーバ上で, 以下のようなエントリを作成
しなければなりません: しなければなりません:
<verb> <verb>
foo.bar MX 10 smtp.smalliap.com ; your mailhost foo.bar MX 10 smtp.smalliap.com ; your mailhost
</verb> </verb>
そのドメインに対して電子メールを送りたいだけなら, そのドメインに対して電子メールを送りたいだけなら,
A レコードは必要ありません. A レコードは必要ありません.
つまり, <tt>foo.bar</tt> に対するアドレスレコードが存在しない限り,
'<bf><tt>ping foo.bar</tt></bf>' コマンドが動作することを期待しては
いけません
メールボックスに最終的に配送するためにメールを実際に受けている メールボックスへの最終的な配送が行われるメールを実際に受けている
メールホスト上では, sendmail がどのホストに対してのメールを受け付けて メールホスト上では, sendmail はメールを受け付けているホストを
いるかを知らせなければなりません. 知っている必要があります.
<p>そのためには, (FEATURE(use_cw_file) を使用している場合) <p>そのためには, (FEATURE(use_cw_file) を使用している場合)
/etc/sendmail.cw ファイルに myhost.smalliap.com を追加してください. /etc/sendmail.cw ファイルに pc24.smallminingco.com を追加するか,
または, /etc/sendmail.cf ファイルに, "Cw myhost.smalliap.com" の行を <bf><tt>/etc/sendmail.cf</tt></bf> ファイルに,
追加してください. "Cw myhost.smalliap.com" の行を追加してください.
<p>あなたのホスト上で実際にメールを受信するためには,
あなたのホストを指すように変更された MX エントリがなければいけません.
また, Cw 行をあなたのマシン上の <tt>sendmail.cf</tt> に記述しなけれ
ばなりません.
<p>
あなたがインターネットに対して永久に接続するのでなければ, これは悪い
考えです. メールは戻ってきてしまうでしょう.
<p> <p>
もしあなたが本気で <tt/sendmail/ を使って何かしようと思うなら, もしあなたが本気で <tt/sendmail/ を使って何かしようと思うなら,
sendmail のソースをインストールするべきです. sendmail のソースをインストールするべきです.
ソースには, たくさんのドキュメントも付いています. ソースには, たくさんのドキュメントも付いています.
<ref name="UUCP と sendmail" id="sendmailuucp"> に <tt/sendmail/ <ref name="UUCP のセットアップ" id="sendmailuucp"> の節に <tt/sendmail/ の
ソースを入手するのに必要な情報が掲載されています. ソースを入手するのに必要な情報が掲載されています.
</sect>
<sect><heading>よくある質問 (FAQ)<label id="mailfaq"></heading>
<sect1> <sect1>
<heading>どうして わたしのサイト上にいるホストに対して完全な形のドメイン名 (FQDN) を使わなければいけないの?</heading> <heading> UUCP のセットアップ<label id="sendmailuucp"></heading>
<p><em>よくある質問 (FAQ) より抜粋.</em>
<p> <p>
おそらく, そのホストは実際には違うドメインに属しているのでしょう.
例えば, もしあなたが foo.bar.edu ドメインにいて,
bar.edu ドメインの中の「mumble」というホストに接続したいと
します. その場合あなたは, 「mumble」ではなく
「mumble.bar.edu」という 完全な形のドメイン名 (FQDN) によっ
てそのホストを参照しなければなりません.
<p> <p>
伝統的に, これは BSD BIND リゾルバでは許されていました. FreeBSD に付属する sendmail のコンフィグレーションは,
しかしながら, FreeBSD に載っている現在の <em>BIND</em> の
バージョンでは, あなたが属しているドメイン以外では,
完全な形でないドメイン名に対するデフォルトの省略形は
使用されていません.
適切でないホスト名 <tt>mumble</tt> は, <tt>mumble.foo.bar.edu</tt>
としても解決されるべきです. そうしないと, ルートドメインに
検索をしにいってしまいます.
<p>
これは, <tt>mumble.bar.edu</tt> や <tt>mumble.edu</tt> を
経由して検索し続けるような過去の習慣とは異なります.
なぜこれが悪い慣例, さらにはセキュリティーホールと考えられ
るようになった理由については, RFC1535 を参照してください.
<p>
この問題を回避するには,
<p><tt>
search foo.bar.edu bar.edu
</tt><p>
という行を
<p><tt>
domain foo.bar.edu
</tt>
に置き換えます.
<p>
これをあなたのマシン上の <tt>/etc/resolv.conf</tt> ファイルに
記述してください. しかしながら, 検索順序は, RFC 1535 に
書かれている, 「ローカル管理と公共の管理の間の境界線」
を越えないことを, あらかじめ確認してください.
</sect1>
<sect1><heading>Sendmail が ``mail loops back to myself'' という
エラーを出します</heading>
<p>
これについては, sendmail FAQ の中で, 次のように答えられて
います:-
<verb>
* 次のような 「Local configuration error」というメッセージ
が出ます:
553 relay.domain.net config error: mail loops back to myself
554 <user@domain.net>... Local configuration error
この問題をどうやって解決すればよいでしょうか?
MX レコードを使って, あるドメイン(例: domain.net)宛にメー
ルを特定のホスト(この場合, relay.domain.net)に転送しようと設定したと
します. ただし中継ホストは, 自身を domain.net とは認識していません.
(FEATURE(use_cs_file) を使用している場合は)
/etc/sendmail.cw に, domain.net を追加してください.
または, 「Cw domain.net」を /etc/sendmail.cf に追加してく
ださい.
</verb>
<p>
sendmail FAQ は, <tt>/usr/src/usr.sbin/sendmail</tt> にあ
ります. 「ひとひねりした」メール設定
をしたいと思っているなら, FAQ を読むことをおすすめします.
<sect1>
<heading>UUPC を使ってメール配送をおこなうにはどうしたらいい?<label id="sendmailuucp"></heading>
<p>
FreeBSD に載っている sendmail のコンフィグレーションは,
直接インターネット接続しているサイトに合うように作られてい 直接インターネット接続しているサイトに合うように作られてい
ます. メールを UUCP 経由で交換するようにしたい場合には, ます. メールを UUCP 経由で交換するようにしたい場合には,
別の sendmail コンフィグレーションファイルをインストールし 別の sendmail コンフィグレーションファイルをインストールし
なければなりません. なければなりません.
<p> <p>
<tt>/etc/sendmail.cf</tt> を手動で作成することは, 純正主義者 <tt>/etc/sendmail.cf</tt> を手動で作成することは, 純正主義者
がおこなうことだと考えられています. sendmail のバージョン 8 がおこなうことだと考えられています. sendmail のバージョン 8
@ -234,17 +285,15 @@ domain foo.bar.edu
コンフィグレーションファイルを生成する方法が取られています. コンフィグレーションファイルを生成する方法が取られています.
この場合, 実際に手動で作成したコンフィグレーションは, この場合, 実際に手動で作成したコンフィグレーションは,
実際のコンフィグレーションより簡潔です. 実際のコンフィグレーションより簡潔です.
以下の場所にあるコンフィギュレーションファイルを使用してく 以下の場所にあるコンフィグレーションファイルを使用してください.
ださい.
<verb> <verb>
/usr/src/usr.sbin/sendmail/cf /usr/src/usr.sbin/sendmail/cf
</verb> </verb>
システム上にすべてのソースをインストールして システム上にすべてのソースをインストールして
いない場合, sendmail の設定スタッフは, ソースを いない場合, sendmail の設定ツールは不完全なままであり,
tar でまとめてさらにそれを分割してある配布物を, 展開しなければ それは個別のソース配布物の中にあります.
なりません. CD-ROM をマウントしてあれば, 以下のようにします. CD-ROM をマウントしてあれば, 以下のようにします.
<verb> <verb>
cd /usr/src cd /usr/src
@ -254,7 +303,7 @@ domain foo.bar.edu
驚かないでください. これはたった数百キロバイトのサイズのファ 驚かないでください. これはたった数百キロバイトのサイズのファ
イルです. イルです.
<tt>cf</tt> ディレクトリ上にある <tt>README</tt> ファイル <tt>cf</tt> ディレクトリ上にある <tt>README</tt> ファイル
には, m4 コンフィギュレーションの基本的な紹介が書かれてい には, m4 コンフィレーションの基本的な紹介が書かれてい
ます. ます.
<p> <p>
@ -305,7 +354,7 @@ domain foo.bar.edu
説明できません. その理由について, ここでは質問しないでください. 説明できません. その理由について, ここでは質問しないでください.
.UUCP 仮想ドメインアドレスを扱うことができるインターネット .UUCP 仮想ドメインアドレスを扱うことができるインターネット
ホスト名を書いてください. ホスト名を書いてください.
おそらく, 使用する ISP のメール中継ホスト名をそこに入力する おそらく, 使用する ISP のメール中継ホスト名をそこに記述する
ことになります. ことになります.
<p> <p>
@ -329,8 +378,8 @@ domain foo.bar.edu
です. はじめの三行は, ドメインアドレスが指定されたメールが です. はじめの三行は, ドメインアドレスが指定されたメールが
デフォルトルートに送信せずに, 配送パスを「短縮」して, 隣接 デフォルトルートに送信せずに, 配送パスを「短縮」して, 隣接
UUCP サイトにメールを送るための設定です. UUCP サイトにメールを送るための設定です.
次の行は, メールを SMTP を使用して配送されているローカル 次の行は, メールを SMTP を使用して配送されているローカル
イーサネットドメイン上のマシンに送信するための設定です. イーサネットドメイン上のマシンに送信するための設定です.
最後に, UUCP 接続されているドメインが, .UUCP という仮想ド 最後に, UUCP 接続されているドメインが, .UUCP という仮想ド
メイン表記されている場合です. これは, メイン表記されている場合です. これは,
「uucp-neighbor!recipient」をデフォルト規則で書換えるため 「uucp-neighbor!recipient」をデフォルト規則で書換えるため
@ -375,8 +424,83 @@ domain foo.bar.edu
> ^D > ^D
j@uriah 192% j@uriah 192%
</verb> </verb>
</sect>
<sect1><heading>ダイアルアップ PPP ホストで電子メールを使うにはどうしたらいい?</heading>
<sect><heading>よくある質問 (FAQ)<label id="mailfaq"></heading>
<p><em>このセクションは, FAQ から移動してきました.</em>
<sect1>
<heading>どうして 同じサイトのホストに対して完全な形のドメイン名 (FQDN) を使わなければいけないの?</heading>
<p>
おそらく, そのホストは実際には違うドメインに属しているのでしょう.
例えば, もしあなたが foo.bar.edu ドメインにいて,
bar.edu ドメインの中の「mumble」というホストに接続したいと
します. その場合あなたは, 「mumble」ではなく
「mumble.bar.edu」という完全な形のドメイン名 (FQDN) によっ
てそのホストを参照しなければなりません.
<p>
伝統的に, これは BSD BIND リゾルバでは許されていました.
しかしながら, FreeBSD に付属する現在の <em>BIND</em> の
バージョンでは, 自分が属しているドメイン以外では,
完全な形でないドメイン名に対するデフォルトの省略形は
使用できません.
ですから, 完全でないホスト名 <tt>mumble</tt> は,
<tt>mumble.foo.bar.edu</tt> として解決されるか,
ルートドメインに検索しにいくでしょう.
<p>
これは, <tt>mumble.bar.edu</tt>, <tt>mumble.edu</tt>
というように検索し続けるような過去の動作とは異なります.
なぜこれが悪い慣例, さらにはセキュリティーホールと考えられ
るようになった理由については, RFC1535 を参照してください.
<p>
この問題を回避するには,
<p><tt>
search foo.bar.edu bar.edu
</tt><p>
という行を
<p><tt>
domain foo.bar.edu
</tt>
に置き換えます.
<p>
これを自分のマシン上の <tt>/etc/resolv.conf</tt> ファイルに
記述してください. しかしながら, 検索順序は, RFC 1535 に
書かれている, 「ローカル管理と公共の管理の間の境界線」
を越えないことを, あらかじめ確認してください.
</sect1>
<sect1><heading>Sendmail が ``mail loops back to myself'' というエラーを出します</heading>
<p>
これについては, sendmail FAQ の中で, 次のように答えられて
います:-
<verb>
* 次のような 「Local configuration error」というメッセージ
が出ます:
553 relay.domain.net config error: mail loops back to myself
554 <user@domain.net>... Local configuration error
この問題をどうやって解決すればよいでしょうか?
MX レコードを使って, あるドメイン(例: domain.net)宛にメールを
特定のホスト (この場合, relay.domain.net) に転送しようと設定したと
していますが, 中継ホストは自身が domain.net であるとは認識
していません.
(FEATURE(use_cs_file) を使用している場合は)
/etc/sendmail.cw に, domain.net を追加してください.
または, 「Cw domain.net」を /etc/sendmail.cf に追加してください.
</verb>
<p>
sendmail FAQ は, <tt>/usr/src/usr.sbin/sendmail</tt> に
あります. 「ちょっと凝った」メール設定
をしたい場合は, FAQ を読むことをおすすめします.
<sect1><heading>ダイアルアップ PPP ホストで電子メールを使うにはどうしたらいいの?</heading>
<p> <p>
LAN 上にある FreeBSD マシンを, インターネットに接続したいと LAN 上にある FreeBSD マシンを, インターネットに接続したいと
します. FreeBSD マシンは, その LAN でのメールゲートウェイになります. します. FreeBSD マシンは, その LAN でのメールゲートウェイになります.
@ -409,7 +533,7 @@ bigco.com. MX 10 bigco.com.
プライマリ MX サイトにメールを配送しようと, あなたのホストに接続しに プライマリ MX サイトにメールを配送しようと, あなたのホストに接続しに
いきます. いきます.
ログインスクリプトとして, このようなものを使うといでしょう. ログインスクリプトとして, このようなものを使うといでしょう.
<verb> <verb>
#!/bin/sh #!/bin/sh
# Put me in /usr/local/bin/pppbigco # Put me in /usr/local/bin/pppbigco
@ -435,14 +559,14 @@ bigco.com. MX 10 bigco.com.
> ばなりません. > ばなりません.
> >
> すべてのメールを今すぐ送るために sendmail を初期化するコマンドはあ > すべてのメールを今すぐ送るために sendmail を初期化するコマンドはあ
> るでしょうか?もちろん私たちのマシン上には, ユーザはルート (root) 権限 > るでしょうか? もちろん私たちのマシン上には, ユーザはルート (root) 権限
> を持っていません. > を持っていません.
sendmail.cf の 「privacy flags」 セクションに, sendmail.cf の 「privacy flags」 セクションに,
「Opgoaway,restrictqrun」の定義があります. 「Opgoaway,restrictqrun」の定義があります.
root 以外のユーザがキューを処理できるようにするには, root 以外のユーザがキューを処理できるようにするには,
restrictqrun を削除してください. また, MX を再調整が必要かもれません. restrictqrun を削除してください. また, MX を再調整が必要かもれません.
あなたがたは, 顧客のサイトに対する一番優先度の高い MX なので, あなたがたは, 顧客のサイトに対する一番優先度の高い MX なので,
次のように定義します: 次のように定義します:
@ -453,7 +577,7 @@ OwTrue
このようにすると, リモートサイトからのメールが, 顧客のマシンと接続し このようにすると, リモートサイトからのメールが, 顧客のマシンと接続し
ようとせず, 直接あなたがたのホストマシンに配送されるようになります. ようとせず, 直接あなたがたのホストマシンに配送されるようになります.
ホストマシンに配送されたメールは, 続いて顧客のマシンに送られます. ホストマシンに配送されたメールは, 続いて顧客のマシンに送られます.
これはホスト名にのみ有効なので, 顧客のメルマシンに, これはホスト名にのみ有効なので, 顧客のメルマシンに,
「host.customer.com」とは別に, 「customer.com」も定義する必要があり 「host.customer.com」とは別に, 「customer.com」も定義する必要があり
ます. DNS 上で, 「customer.com」に対する A レコードを定義してください. ます. DNS 上で, 「customer.com」に対する A レコードを定義してください.
</verb> </verb>