.
Mailサーバー => セキュアメールサーバー構築 > 4.Sendmail-8.11 FMLに関する設定
Linux 活用ガイド:目次

サーバ構築ガイド

レンタル ガイド

ショップ 構築ガイド

情報漏洩対策

Sendmail-8.11 FMLに関する設定

本稿で紹介している内容は、 Sendmail-8.9.3 メールサーバー構築(古いので削除しました)で紹介した内容を継承しています。ここで紹介した Sendmail-8.9.3 で FMLを導入していた場合は修正が必要です。

FML 未導入の場合は必要のない設定なので飛ばしてください。

FMLに関する修正

先ほどの修正に加え、以下の個所を修正します。

/usr/lib/sendmail-cf/cf/sendmail.mc

define(`ALIAS_FILE',`/etc/mail/aliases,/var/spool/ml/etc/aliases') --1

sendmail.cfの生成

再度M4プリプロセッサによりsendmail.cfを生成して下さい。

# cd /usr/lib/sendmail-cf/cf
# make sendmail.cf

/usr/lib/sendmail-cf/cf/sendmail.cf が生成されます。
/etc/mail/sendmail.cfと置き換えてSendmailを再起動して下さい。
その際、エラーがないか確認します。

FMLによるMLを運営してる場合の注意

aliasesファイルがML用と2つあるため、念のため以下の手順を踏みます。 このサイトで紹介しているFMLのインストールディレクトリを基準に解説しています。

# touch /var/spool/ml/etc/aliases
# makemap hash /etc/mail/aliases < /etc/mail/aliases
# makemap hash /var/spool/ml/etc/aliases < /var/spool/ml/etc/aliases
# newaliases

以下のように表示されればOKです。 この修正を加えたsendmail.cfを作成し、/etc/sendmail.cfと差し替えてSendmailを再起動します。

/etc/mail/aliases: 18 aliases, longest 10 bytes, 204 bytes total
/var/spool/ml/etc/aliases: 18 aliases, longest 46 bytes, 606 bytes total

メーリングリストで使用していたaliasesファイル、及びaliases.dbファイルの所有権、パーミッションに注意する必要があります。WEBブラウザで管理するFMLを紹介していますが、今回の設定でファイルの所有権が変わっていないか注意して下さい。

FML(メーリングリスト)対策

上記の設定だけでは、メーリングリストは正しく動作しません。ちなみにメーリングリストにメールを転送すると以下のデリバリーが返ってきます。

smrsh: fml.pl not available for sendmail programs

これはsendmailが利用するshellが、より安全なsmrshを利用するようになったためです。fml.plを実行しようとしたがsmrshに よってはじかれてしまった事を意味します。この問題を回避するためにsmrshにfml.plの実行を認めさせなければなりません。

smrsh対策

このサイトで紹介したFMLインストールを基に解説します。ディレクトリが異なる場合は適宜読み替えて下さい。メーリングリストの章ではFMLインストール時に以下のディレクトリを選択しました。

EXEC FILES DIRECTORY [/usr/local/fml]
TOP LEVEL ML DIRECTORY [/var/spool/ml]

以下のディレクトリにsite_init.phファイルを作成します。

/var/spool/ml/etc/fml/site_init.ph

site_init.phに以下の内容を記述します。

/var/spool/ml/etc/fml/site_init.ph

push(@INC, "/usr/local/fml");
push(@LIBDIR,"/usr/local/fml/module");
push(@LIBDIR,"/usr/local/fml/module/CPAN");
push(@LIBDIR,"/usr/local/fml/module/Japanese");
push(@LIBDIR,"/usr/local/fml/module/fml-devel");
1;


fml.pl,libloadconfig.pl,default_config.phをそれぞれ/etc/smrshにシンボリックを張ります。

# ln -s /usr/local/fml/fml.pl /etc/smrsh/
# ln -s /usr/local/fml/libloadconfig.pl /etc/smrsh/
# ln -s /usr/local/fml/default_config.ph /etc/smrsh/

ここで紹介しているSendmailのインストールはTurboLinuxのrpmを利用しているので /etc/smrsh になりますが、他のディストリビュータやソースやソースからコンパイルしてsendmailをインストールしている場合はパスが異なるかも知れません。

ここで紹介している回避策はFMLの本家サイトで紹介されていた方法を元に解説しています。

NONE TITLE 4.html

bottom_mark
ページ最上部
ページ最上部 前のページ