postfix + majordomo
$CREATE 08/22/2001 by Mie Suemitsu
$UPDATE 09/04/2001 by Mie Suemitsu
$UPDATE 01/18/2002 by Mie Suemitsu
$UPDATE 12/02/2009 by Mie Suemitsu
Postfix のメールサーバに majordomo でメーリングリストを構築する手順を古い手順から書き換えました
参考になるサイト
install
ftp://ftp.greatcircle.com/pub/majordomo/ より
majordomo-1.94.5.tar.gz を /usr/local/src に download
# cd /usr/local/src
# tar zxvf src/majordomo-1.94.5.tar.gz
# ln -s majordomo-1.94.5 majordomo
majordom ユーザを登録し home directory を /usr/local/majordomo にする
login できないように /sbin/nologin にする
majordom の uid と gid を 確認する
Makefile を編集
# perl -v ; perl のバージョンを確認する
# which perl ; perl の PATH を確認する
# cd /usr/local/src/majordomo
# vi Makefile
PERL = /usr/bin/perl
CC = gcc
W_HOME = /usr/local/majordomo
MAN = $(W_HOME)/man
W_USER = 1034 ; majordom の uid
W_GROUP = 1034 ; majordom の gid
W_PATH = /bin;/usr/bin;/usr/ucb;/usr/local/bin
majordomo.cf を作成
# cp sample.cf majordomo.cf
# vi majordomo.cf
$whereami = "hogehoge.co.jp"; Postfix の $mydestination
$whoami = "Majordomo\@$whereami";
$whoami_owner = "Majordomo-Owner\@$whereami";
$listdir = "$homedir/lists"; Mailing List を置くディレクトリィ
$sendmail_command = /usr/sbin/sendmail";
make
# make wrapper
# make install
# make install-wrapper
lists directory を作成
# cd /usr/local/majordomo
# mkdir lists
# chown -R majordom:majordom lists
config のチェック
# cd /usr/local/majordomo
# ./wrapper config-test
ユーザ登録するかと聞いてくるので no と応える
Enjoy! というメッセージが出ればOK
aliases を編集
# cd /etc/postfix
# vi major-aliases 新しくmajordomo用のaliasesファイルを作成する
# Majordomo aliases
majordomo: "|/usr/local/majordomo/wrapper majordomo"
owner-majordomo: zenobia@palmyra.ne.jp
majordomo-owner: zenobia@palmyra.ne.jp
# postalias /etc/postfix/major-aliases
mailing list を作成
test というメーリングリストを作成する
# cd /usr/local/majordomo/lists
# touch test
# touch test.info
# ln -s test.info test.intro
# touch test.passwd
# chown majordom:majordom test*
# vi test
test メーリングリストにメールアドレスを登録する
aliases を編集
# cd /etc/postfix
# vi major-aliases
test : "|/usr/local/majordomo/wrapper sequencer -l test -N -h hogehoge.co.jp test-going"
test-going: :include:/usr/local/majordomo/lists/test
owner-test: zenobia@palmyra.ne.jp,
test-owner: zenobia@palmyra.ne.jp
test-approval: test-owner
test-request: "|/usr/local/majordomo/wrapper majordomo -l test"
# postalias /etc/postfix/major-aliases
動作検証
# mail -v majordomo
Subject:
lists
.
test というメーリングリスト名があると majordomo から報告メールが届けばOK
test メーリングリスト宛にメール送信して登録メンバに配信されているか確認する
config を編集
config ファイルを要求する
# mail test-request
Subject:
config test test.admin
.
Cc:
# cd /usr/local/majordomo/lists
# vi test.config ; 設定例
subscribe_policy = closed ; 登録には owner の認証が必要 default は open
restrict_post = test ; 登録メンバ以外から投稿できないようにする
maxlength = byte数 ; メールの制限サイズ default 40kbyte では画像ファイルなど添付した場合にサイズオーバとなる
reply_to = test@hogehoge.co.jp ; 返信アドレスの設定
subject_prefix = [$LIST $SEQNUM] ; サブジェクトの設定
sequencer を使ってメールのサブジェクトに連番を付ける
Tools ディレクトリィの下にあるsequencer を /usr/local/majordomo にコピーする
# cp /usr/lcoal/majordomo/Tools/sequencer /usr/local/majordomo
# chown majordom:majordom /usr/local/majordomo/sequencer
メーリングリスト名.seq というファイルを作成し 1(数値のいち)を入力しておく
# cd /usr/local/majordomo/lists
# vi test.seq
1
alias は上記のmajor-aliases に記述したとおり
test : "|/usr/local/majordomo/wrapper sequencer -l test -N -h hogehoge.co.jp test-going"
と sequencer の設定をしておく
config ファイルに subject_prefix = [$LIST $SEQNUM] と記述することにより $SEQNUMのところが連番になる