21.8. ダイアルアップ接続でメールを使う

あなたが固定 IP アドレスを持っているのなら、 デフォルトから何も変更する必要はありません。 割りあてられたインターネット名をホスト名に設定すれば、 sendmail が残りをやってくれます。

あなたが動的に割り当てられた IP アドレスを持っていて、 インターネットに接続するのにダイアルアップ PPP を使用しているのなら、 おそらく ISP のメールサーバにメールボックスがあるでしょう。 ここでは、あなたの ISP のドメインが example.net, あなたのユーザ名が user, あなたのマシンは bsd.home と呼ばれているものとします。 また、ISP から、メールリレーとして relay.example.net を使用してよいと通知されているとします。

(訳注: ISP 上の) メールボックスからメールを取得するためには、 取得アプリケーションをインストールしないといけません。 fetchmail ユーティリティは、 さまざまなプロトコルの多くに対応しているのでよい選択肢です。 通常、あなたの ISP は POP3 を提供しています。 あなたが user-PPP を使用しているなら、次のエントリを /etc/ppp/ppp.linkup に追加することで、 インターネット接続が確立したときに自動的にメールを取得することができます。

MYADDR:
 !bg su user -c fetchmail

あなたがローカルではないアカウントへのメールを配送するために (下記のような) sendmail を使用しているなら、 インターネット接続が確立するとすぐに、 sendmail があなたのメールキューを処理して欲しいとおそらく考えるでしょう。 これを行うには、/etc/ppp/ppp.linkup ファイルの fetchmail コマンドの後に次のコマンドを追加してください。

 !bg su user -c "sendmail -q"

bsd.home 上に user というアカウントを所有しているとします。 bsd.home 上の user のホームディレクトリに .fetchmailrc ファイルを作成します。

poll example.net protocol pop3 fetchall pass MySecret

このファイルはパスワード MySecret を含んでいるので、user を除く他の誰にも読めるようになっていてはいけません。

正しい from: ヘッダでメールを送るためには、 sendmailuser@bsd.home ではなく user@example.net を使用するようにしなくてはいけません。 また、素早くメール送信をするために sendmail にすべてのメールを relay.example.net 経由で送るようにもしたいかもしれません。

次の .mc ファイルで十分でしょう。

VERSIONID(`bsd.home.mc version 1.0')
OSTYPE(bsd4.4)dnl
FEATURE(nouucp)dnl
MAILER(local)dnl
MAILER(smtp)dnl
Cwlocalhost
Cwbsd.home
MASQUERADE_AS(`example.net')dnl
FEATURE(allmasquerade)dnl
FEATURE(masquerade_envelope)dnl
FEATURE(nocanonify)dnl
FEATURE(nodns)dnl
define(`SMART_HOST', `relay.example.net')
Dmbsd.home
define(`confDOMAIN_NAME',`bsd.home')dnl
define(`confDELIVERY_MODE',`deferred')dnl

.mc ファイルを sendmail.cf ファイルに変換する方法の詳細については前の節を参照してください。 また、sendmail.cf ファイルを変更した後は、 sendmail を再起動し忘れないでください。

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

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