■メーリングリストプログラム fml8をインストール
http://www.fml.org/software/fml8/ www.fml.orgを参照する
fml8 チュートリアル (バージョン 7.98.16-20111225)
fml8はrootでインストールする
(Debianのパッケージにはないようなので手動でインストールする)
■インストール条件
OS:Debian6 [Squeeze]
MTA:Postfix 2-7-1 です。既に設定され正常動作しているものとします。
FML:fml-7.98.15-20100306 [fml8]をインストールします。
default domainはhogehoge.jpとします。
hostnameはbluesとします。
ML menberはhoge@hogehoge.jpとします。
■fmlのグループ/ユーザを事前に作成
user@blues:/$ su
password:xxxxxxxx
root@blues:/# addgroup --system fml
root@blues:/# adduser fml
■ダウンロードしたファイルは /usr/local/src において解凍
root@blues:/# cd /usr/local/src
root@blues:/usr/local/src# cd ./usr/local/src/
root@blues:/usr/local/src# tar zxvf fml-7.98.15-20100306.tar.gz
■Configureの実行
引数をつけて実行
–with-fmlconfdir=/etc/fml 基本設定ファイルを置く場所・・・main.cfは/etc/fml を使う [デフォルトは/usr/local/etc/fml]
–with-mlspooldir=/home/fmlspool デフォルトドメインのML群のトップディレクトリ [デフォルトは/var/spool/ml]
–with-default-domainn=hogehoge.jp デフォルトドメインの指定
root@blues:/usr/local/src# cd ../fml-7.98.15-20100306
root@blues:/usr/local/src/fml-7.98.15-20100306# ./configure --with-fmlconfdir=/etc/fml --with-default-domainn=hogehoge.jp --with-mlspooldir=/home/fmlspool
checking for perl... perl
checking for perl... /usr/local/bin/perl
"checking whether optional useful commands are available or not"
checking for cc... /usr/bin/cc
checking for install... /usr/bin/install
checking for cksum... /usr/bin/cksum
checking for sum... /usr/bin/sum
checking for md5... no
checking for digest... no
checking for ls... /bin/ls
checking for tar... /bin/tar
checking for gzip... /bin/gzip
checking for zcat... /bin/zcat
checking for gzcat... no
checking for gunzip... /bin/gunzip
checking for lha... no
checking for ish... no
checking for bzip2... /bin/bzip2
checking for bunzip2... /bin/bunzip2
checking for uuencode... no
checking for compress... no
checking for sendmail... /usr/sbin/sendmail
checking for makemap... no
checking for newaliases... /usr/bin/newaliases
checking for postfix... /usr/sbin/postfix
checking for postalias... /usr/sbin/postalias
checking for postconf... /usr/sbin/postconf
checking for postmap... /usr/sbin/postmap
checking for nkf... /usr/bin/nkf
checking for kakasi... no
checking for namazu... no
checking for pgp... no
checking for pgp5... no
checking for pgpe... no
checking for pgpk... no
checking for pgps... no
checking for pgpv... no
checking for gpg... /usr/bin/gpg
checking for gpgv... /usr/bin/gpgv
checking for gpgsplit... /usr/bin/gpgsplit
checking for less... /usr/bin/less
checking for more... /bin/more
checking for w3m... /usr/bin/w3m
checking for spamassassin... /usr/bin/spamassassin
checking for spamd... /usr/sbin/spamd
checking for spamc... /usr/bin/spamc
checking for bogofilter... /usr/bin/bogofilter
checking for clamscan... /usr/bin/clamscan
checking for vi... /usr/bin/vi
checking for ng... no
checking for mule... no
checking for emacs... no
checking for xemacs... no
configure: creating ./config.status
config.status: creating install.pl
config.status: creating config.sh
config.status: creating fml/etc/install.cf
config.status: creating fml/etc/main.cf
config.status: creating fml/etc/default_config.cf.ja
config.status: creating fml/etc/default_config.cf.en
config.status: creating fml/etc/site_default_config.cf
config.status: creating fml/libexec/loader
config.status: creating fml/bin/fmladdr
config.status: creating fml/bin/fmlalias
config.status: creating fml/bin/fmlconf
config.status: creating fml/bin/fmldoc
config.status: creating fml/bin/fmlhtmlify
config.status: creating fml/bin/fmlsch
config.status: creating fml/bin/fmlproj
config.status: creating fml/bin/fmlpgp
config.status: creating fml/bin/fmlpgp5
config.status: creating fml/bin/fmlpgpe
config.status: creating fml/bin/fmlpgpk
config.status: creating fml/bin/fmlpgps
config.status: creating fml/bin/fmlpgpv
config.status: creating fml/bin/fmlgpg
config.status: creating fml/bin/fmlgpgv
config.status: creating fml/bin/fml
config.status: creating fml/bin/makefml
enabled: perl -w
fml has been configured with the following options:
prefix: /usr/local
exec_prefix: ${prefix}
bindir: ${exec_prefix}/bin
sbindir: ${exec_prefix}/sbin
lib_dir: ${exec_prefix}/lib
libexec_dir: ${exec_prefix}/libexec
mandir: ${datarootdir}/man
datarootdir: ${prefix}/share
datadir: ${datarootdir}
fml process owner: fml
fml process group: fml
fmlconfdir: /etc/fml
ml_home_prefix_map: /etc/fml/ml_home_prefix
mlspooldir: /home/fmlspool
default domain: hogehoge.jp
default hostname: blues
mime based filter: yes
Now you must run "make install" as user "root".
■make installの実行
root@blues:/usr/local/src/fml-7.98.15-20100306# make install
./install.pl fml/etc/install.cf
creating /etc/fml/main.cf
creating /etc/fml/site_default_config.cf
creating /etc/fml/mime_component_filter
updating //etc/fml/defaults/current-20120115
updating //usr/local/lib/fml/current-20120115
copy from fml/lib
copy from cpan/lib
copy from img/lib
updating //usr/local/libexec/fml/current-20120115
updating //usr/local/share/fml/current-20120115
creating /usr/local/bin/fml
creating /usr/local/bin/fmladdr
creating /usr/local/bin/fmlalias
creating /usr/local/bin/fmldoc
creating /usr/local/bin/fmlconf
creating /usr/local/bin/makefml
creating /usr/local/bin/fmlsch
creating /usr/local/bin/fmlproj
creating /usr/local/bin/fmlhtmlify
creating /usr/local/bin/fmlpgp
creating /usr/local/bin/fmlpgp5
creating /usr/local/bin/fmlpgpe
creating /usr/local/bin/fmlpgpk
creating /usr/local/bin/fmlpgps
creating /usr/local/bin/fmlpgpv
creating /usr/local/bin/fmlgpg
creating /usr/local/bin/fmlgpgv
symlink: loader to fml fmladdr fmlalias fmldoc fmlconf makefml fmlsch fmlproj
fmlhtmlify fmlpgp fmlpgp5 fmlpgpe fmlpgpk fmlpgps fmlpgpv
fmlgpg fmlgpgv fml.pl msend.pl mead.pl distribute digest
command error mead fmlserv faker createonpost fetchfml
remind
creating //home/fmlspool
chown fml:fml //home/fmlspool
■MLを作成前の設定
newml_command_mta_config_list にインストールされる MTA のリストから
不要の qmail を抜く。以下の行を追加する。=cut行より上に追加する。
[/etc/fml/site_default_config.cf]
newml_command_mta_config_list -= qmail
■MTA Postfixの設定 デフォルトドメインで設定
[/etc/postfix/main.cf]に以下の行を追加・修正する。
# Postfix からプログラムを実行可能にする。
# includeでMLコマンドドライバを使用可能にする。
allow_mail_to_commands = alias,forward,include
# /etc/mail/aliases は OS デフォルトの alias
# /home/fmlspool/etc/mail/aliases の
# デフォルトドメイン用alias (fml 管理)を追加する。
alias_maps=hash:/etc/mail/aliases,hash:/var/spool/ml/etc/mail/aliases
■MLを作成する test@hogehoge.jp ユーザはfmlで実行
root@blues:/# su fml
fml@blues:/$ makefml newml test
creating /home/fmlspool/etc
creating /home/fmlspool/etc/mail
creating /home/fmlspool/etc/postfix
creating /home/fmlspool/etc/qmail
creating /home/fmlspool/etc/exim
creating /home/fmlspool/etc/sendmail
creating /home/fmlspool/etc/procmail
creating /home/fmlspool/@db@
creating /home/fmlspool/@udb@
creating /home/fmlspool/test/etc
creating /home/fmlspool/test/tmp
creating /home/fmlspool/test/spool
creating /home/fmlspool/test/var
creating /home/fmlspool/test/var/db
creating /home/fmlspool/test/var/db/error
creating /home/fmlspool/test/var/lock
creating /home/fmlspool/test/config.cf
creating /home/fmlspool/test/include
creating /home/fmlspool/test/include-ctl
creating /home/fmlspool/test/include-error
creating /home/fmlspool/test/include
creating /home/fmlspool/test/include-ctl
creating /home/fmlspool/test/include-error
updating /home/fmlspool/etc/mail/aliases
updating /home/fmlspool/etc/mail/aliases database
skipping alias update for sendmail
updating /home/fmlspool/etc/procmail/procmailrc
creating /home/fml/public_html/fml/mlarchive/hogehoge.jp/test
creating /home/fml/public_html/cgi-bin/fml/hogehoge.jp/admin
creating /home/fml/public_html/cgi-bin/fml/hogehoge.jp/ml-admin/test
creating /home/fml/public_html/cgi-bin/anonymous/hogehoge.jp/test
creating /home/fml/public_html/cgi-bin/fml/.htaccess
(a dummy to disable cgi by default)
creating /home/fml/public_html/cgi-bin/fml/hogehoge.jp/admin/menu.cgi
creating /home/fml/public_html/cgi-bin/fml/hogehoge.jp/admin/config.cgi
creating /home/fml/public_html/cgi-bin/fml/hogehoge.jp/admin/thread.cgi
creating /home/fml/public_html/cgi-bin/fml/hogehoge.jp/ml-admin/test/menu.cgi
creating /home/fml/public_html/cgi-bin/fml/hogehoge.jp/ml-admin/test/config.cgi
creating /home/fml/public_html/cgi-bin/fml/hogehoge.jp/ml-admin/test/thread.cgi
creating /home/fml/public_html/cgi-bin/anonymous/hogehoge.jp/test/submit.cgi
creating /home/fml/public_html/fml/listinfo/hogehoge.jp/test/index.html.ja
creating /home/fml/public_html/fml/listinfo/hogehoge.jp/test/index.html.en
■メンバーを追加する ユーザはfmlで実行
fml@blues:/$ makefml subscribe test hoge@hogehoge.jp
■Postfixの再起動
fml@blues:/$ exit
root@blues:/# /etc/init.d/postfix restart
Stopping Postfix Mail Transport Agent: postfix.
Starting Postfix Mail Transport Agent: postfix.
■MLにメール投稿してテストしてみる
メールの体裁を整えないとデフォルトではspam扱いされてしまうので
テストでも本文を書きましょう
宿題:
※フィルタリングなどのカスタマイズは別途好みにあわせて実施が必要です。
※メールのHTML化 Webでの公開はApache側で設定が必要です。
※バーチャルドメインでの運用は設定が異なるようなのでこれから試します。