CFの簡易マニュアル
defファイルを記述する際に必要な項目をまとめました
CFの設定
- CF_TYPE=R8V8/R8V7
sendmailのバージョンを指定します。
下記以外は、セキュリティ上の問題があるため、sendmailのバージョンアップをする必要があります。
R8V7: sendmail 8.8 以降
R8V8: sendmail 8.9 以降
- OS_TYPE=linux
OS(UNIX)の種別を指定します。
Master/OSTYPE にあるファイルのうちの何れかのファイル名を指定します。
Linuxにも、数種類(linux-redhat、linux-slackwareなど)ありますので、デストリビューションに合わせて選択してください。
linux: LINUX
- MX_SENDMAIL=yes/no
DNSを参照してメールを配信する場合は、yesを指定します。
- MY_DOMAIN=<ドメイン名>
メールサーバのドメイン名を指定します。
ドメイン名は、FQDN (Fully Qualified Domain Name) から、ホスト名の部分を取り除いたものを指定します。
例としては、ash.jp のように指定します。
ここに指定した名前は、以下の定義で、$m により参照することができます。
- MY_NAME=<ホスト名>
メールサーバのホスト名を指定します。
ホスト名は、ドメイン名を除いた一語を指定します。
ここに指定した名前は、以下の定義で、$w により参照することができます。
- OFFICIAL_NAME=<正式名称>
メールサーバの FQDN を指定します。
'$w.$m' と指定するのが、よいでしょう。
- MY_ALIAS=<別名> (複数可)(継続行可)
メールサーバが、複数のホスト名を持つ場合に、その別名を指定します。
ホスト名を一語で指定した場合も、ドメイン名を付加した FQDN も自動的に登録されます。
また、OFFICIAL_NAME として定義された名称も別名として暗黙に登録される。
- FROM_ADDRESS=<From: として利用するアドレス>
メールの発信時に自動的に From: ヘッダに付加する user@address の address を定義します。
'$m' を指定するのがよいでしょう。
- RECIPIENT_GENERIC=yes
メールアドレスとして、user@domain を利用する場合に yes を指定します。
joe@ash.jp などのように短いメールアドレスとすることができます。
- ACCEPT_ADDRS=<受けとるべきアドレス> (複数可)(継続行可)
メールサーバが受け取るアドレスを指定します。
ドメイン名で受けるときは、'$m' を指定するのがよいでしょう。
- SECONDARY_DOMAIN=<セカンダリとなるべきドメイン名>
メールのドメインマスタが一つだけだと、ドメインマスタのトラブル時にメールが届かなくなってしまいます。
セカンダリメールサーバを設置すると、メールがエラーとならずセカンダリメールサーバにスプールされます。
セカンダリメールサーバとして利用する場合には、そのドメイン名を指定します。
- DIRECT_DELIVER_DOMAINS=all/none/<ドメイン名>(複数可)(継続行可)
直接配送するドメインを指定します。
all: 全て直接配送を行なう
none: 全て DEFAULT_RELAY に転送する
<ドメイン名>: 指定したドメイン(複数記述可能)に対しては直接配送し、
それ以外のメールは DEFAULT_RELAY に転送する
- DEFAULT_RELAY=<リレーホスト名>
DIRECT_DELIVER_DOMAINS で定義された直接配送する宛先でなかった場合の転送先ホストを指定します。
DNSを利用しないサブネットの場合は、親ドメインのメールサーバを指定します。
社内でファイアーウォールを構築している場合は、社外へのゲートウェイサーバを指定します。
- TIME_ZONE=''
タイムゾーンの設定をします。
''を指定すると、TZ 環境変数を参照して設定してくれます。
メールの転送制限
-
MAIL_RELAY_RESTRICTION=yes
yes を指定すると、メールの転送制限、メールの受信チェック機能組み込まれます。
アクセス制限された場合は、接続元のMTA側でエラーとなり、sendmail は、syslog に結果を出力します。
MTAとは、メールサーバや、クライアントのメールソフトのことを指します。
sendmail 8.9.1 からは、デフォルトで yes となっていますので、必ず yes としましょう。
送信の許可(組織内−>組織外)
組織内のメールクライアントから、組織外のメールサーバに対してメールを送信することを許可するための指定をします。
- LOCAL_HOST_DOMAIN=<ドメイン名>
このファイルに、受信/中継を無条件で許可する SMTP 接続ホストの ドメイン名を定義します。
SMTP 接続ホストとして、メールサーバのホスト名のみを指定しましょう。
- CLIENT_HOST_DOMAIN=<ドメイン名>
このファイルに、受信/中継を 発信アドレスに従って許可する SMTP 接続ホストのドメイン名を定義します。
LOCAL_HOST_DOMAIN に比べて、CLIENT_FROM_DOMAIN によるチェックが行われます。
SMTP 接続ホストとして、自ドメインのみを指定するのがよいでしょう。
- CLIENT_FROM_DOMAIN=<ドメイン名>
このファイルに、受信/中継を CLIENT_FROM_DOMAIN に従って許可する SMTP 接続ホストの ドメイン名を定義します。
自ドメインのみを指定するのがよいでしょう。
受信の許可(組織外−>組織内)
組織外のメールサーバから、組織のメールサーバがメールを受信することを許可するための指定をします。
- ALLOW_RECIPIENT_DOMAIN=<ドメイン名>
このメールサーバが受理する宛先ドメインのリストを定義します。
宛先ドメインとして、自ドメインのみ指定するのがよいでしょう。
セカンダリドメインへの転送する場合には、セカンダリドメイン名も指定する必要があります。
- ALLOW_RELAY_FROM=<ドメイン名>
このメールサーバが中継を許可するドメインのリストを定義します。
メールの中継サーバとして利用するときに、指定する必要があります。
- ALLOW_RELAY_TO=<ドメイン名>
このメールサーバが中継する宛先ドメインのリストを定義します。
セカンダリドメインへの転送する場合には、セカンダリドメイン名を指定する必要があります。
ローミングの許可(組織外−>組織外)
ローミングとは、他のプロバイダで接続し、組織のサーバを利用するような操作のことです。つまり、組織外のアクセスポイントから、組織のメールサーバを経由して、組織のメールアドレスを発信者に持つようなメールを出すような状況がある場合に使用します。ローミング指定は、他のプロバイダのホスト情報と、利用するユーザ情報で指定します。
ローミング指定は、頻繁に変更する可能性がありますので、テキスト形式のファイルを指定するようにしましょう。
- ROAM_HOST_IPADDR=/etc/sendmail.roamip
ローミングアクセスするホストのIPアドレスを指定します。
210.154.18 と指定すると、210.154.18.* に対して許可されます。
- ROAM_HOST_DOMAIN=/etc/sendmail.roamdomain
ローミングアクセスするホストのドメイン名を指定します。
ash.jp と指定すると、*.ash.jp に対して許可されます。
- ROAM_USERS=/etc/sendmail.roamusers
ローミングアクセスするユーザのメールアドレスを指定します。