なぜかportsにないのでfmlプロジェクトのサイトからダウンロードします。8系は開発系なので4系を使用します。
- インストール先は/opt/ml/fmlとする
- MLは/opt/ml/spoolに作成する
- ユーザはfmlとする
- fmlユーザのホームディレクトリは/opt/mlとする
fmlユーザを追加する
Unixアカウントの追加は自分で行います。
なるべくここで作成した一般ユーザで作業をします。
# adduser Username: fml Full name: Uid (Leave empty for default): Login group [fml]: Login group is fml. Invite fml into other groups? []: Login class [default]: Shell (sh csh tcsh nologin) [sh]: tcsh Home directory [/home/fml]: /opt/ml Use password-based authentication? [yes]: Use an empty password? (yes/no) [no]: yes Lock out the account after creation? [no]: Username : fml Password :Full Name : Uid : 1011 Class : Groups : fml Home : /opt/ml Shell : /bin/tcsh Locked : no OK? (yes/no): yes adduser: INFO: Successfully added (fml) to the user database. Add another user? (yes/no): no Goodbye!
fmlをダウンロードしてくる
FTPはこちら→ftp.fml.org
(現時点の安定版最新バージョンはfml-4.0-stable-20040215.tar.gzです)
なお、fmlのバージョンはFreeBSDの開発ツリーに似ています。
- release - リリース版
- stable - リリース版+バグ修正
- current - 開発版
まぁ普通はstableですね。
fmlをインストールする
fml用に追加した一般ユーザで行います。
/usr/local/src # fetch <ファイルパス> ここで一般ユーザにsuする % make install DOMAIN NAME [example.com] FQDN [server.example.com] mail.example.com EXEC FILES DIRECTORY [/usr/local/fml] /opt/ml/fml TOP LEVEL ML DIRECTORY [/var/spool/ml] /opt/ml/spool
Postfixの設定を変更する
以下設定を追加します。
もちろんrootです。
# vi /usr/local/etc/postfix/main.cf + allow_mail_to_commands = alias,forward,include # /usr/local/etc/rc.d/postfix reload
メールアドレスを追加する
% makefml add<メールアドレス>
Postfixのエイリアスに追加する
Postfix用のnewaliasコマンドを使います。
シンボリックリンクを張ってある等環境によってはnewaliasesでいけるかも。
# cd /usr/local/etc/postfix # cat /opt/ml/spool/hoge/aliases >> aliases # postalias aliases
尚、ML管理系のメールはfml宛に送信されるため、aliasesに既存ユーザへのaliasをしておくといいかもしれません。
以上でMLの作成は完了です。
設定ファイル周りのTips
config.phが実際の設定ファイルになっており、makefml configを行った際にもこのファイルが書き変わります。
makefml configよりも詳細な設定をしたい場合は、cfファイルにconfig.phから設定したい変数を抜き出して追加し、makefml update-configします。
cfファイルを修正してからconfig.phを見てみると修正されていることが確認できます。
% makefml update-config <ML名> 作成したMLディレクトリがカレントの場合以下でも可。 % make config.ph
その他Tips
- Fromを強制的に書き換える
送信元アドレスを知らせたくない場合に使う。
※Vodafoneの場合senderに自アドレスを入れてくるのでそれにも対応する。
cfに以下追加
&DEFINE_FIELD_FORCED('from', $MAIL_LIST); &DEFINE_FIELD_FORCED('sender', $MAIL_LIST);
- メール末尾に固定メッセージ追加
cfに以下追加
$START_HOOK = q# my ($s) = &GET_BUFFER_FROM_FILE("$DIR/info"); &ENVELOPE_APPEND('Body', &STR2JIS($s)); #;
/opt/ml/fml/infoファイルを新規に作成しメッセージを記述。
- 件名にタグを付ける
[
タグタイプの設定
% makefml config <ML名> [5]HEADER CONFIGURATIONS [1]SUBJECT_TAG_TYPE [3]Subject: [Elena:00100] (hml 1.6 compat)
タグフォーマットの設定
% makefml config <ML名> [5]HEADER CONFIGURATIONS [2]SUBJECT_TAG_FIGURE [4]4 e.g. [elena 0001], [elena 0100], [elena 10000]
- 通し番号をリセットする
通し番号を管理しているファイルはseqファイルです。
% echo 0 > /opt/ml/spool/<ML名>/seq