[ TOP ]
2004/3/26

fml

fml

上へ
  FTP

MTAも設定し終わったので、ML(メーリングリスト)を入れたいと思います。
MLにはfmlを使います。
素直にezmlmを使わないところがひねくれてます。(笑)

その上、バーチャルドメインごとにインストールすると良いのだが、横着なので1つで無理矢理やってしまいます。
fmlには、次世代MLがあり、こちらはバーチャルドメイン対応です。
しかし、まだ開発中なので様子見です。
なんと言っても 2004/03/26 現在、動作実績が確認されている環境に Red Hat 9 が入っていません。(T-T)

  1.   パッケージをダウンロード

    fmlのfml-stableから、fml-4.0-stable-<一番新しい日付>.tar.gz をダウンロードします。

  2.   インストール準備

    バーチャルドメイン上で動かすため、vpopmailユーザーでインストールを行います。

    まず、ダウンロードしたパッケージファイルを /home/vpopmail に置きます。
    root で作業している場合は、vpopmailに所有者を変更しておきます。
    # chown vpopmail.vchkpw /home/vpopmail/fml-4.0-stable-<一番新しい日付>.tar.gz

    次にインストールのために、ディレクトリとperlのシンボリックリンクを作成しておきます。
    perlのシンボリックリンク
    #すでに作成している場合も多いと思います
    # ln -s /usr/bin/perl /usr/local/bin/perl
    vpopmail ユーザーになって、ディレクトリを準備します
    # su - vpopmail
    $ mkdir /home/vpopmail/fml
    $ mkdir /home/vpopmail/ml

  3.   インストール

    準備も出来たので、インストールを進めます。
    解凍して、ディレクトリを移動します
    $ tar zxvf fml-4.0-stable-20040215.tar.gz
    $ cd fml-4.0-stable-20040215

    インストールを開始します
    $ ./makefml install

    インストール中にいくつか質問されます
    変更したい場合以外は、そのまま{ Enter }で構いません

    Personal, Group, Fmlserv (personal/group/fmlserv) [personal]
    特に他の人に管理を渡すつもりはないので、デフォルトの personal のまま { Enter }

    DOMAIN NAME        [localdomain]
    FQDN           [localhost.localdomain]
    vpopmailのバーチャルドメインを利用するので、デフォルトのまま { Enter }

    EXEC FILES DIRECTORY   [/usr/local/fml]  /home/vpopmail/fml
    TOP LEVEL ML DIRECTORY  [/var/spool/ml]  /home/vpopmail/ml
    先に作成してあるディレクトリを指定します

    Language (Japanese or English) [English]
    もちろん、Japanese !(爆)

    TimeZone (TZ: e.g. +0900, -0300) [+0900]
    タイムゾーンも日本なので +0900 でOKです


    最後に確認が表示されるので、意図した通りであれば{ y }を入力します
    違っていたら、{ n }を入力してやり直しましょう
      --- summary ---
          DOMAIN: localdomain
            FQDN: localhost.localdomain
        EXEC_DIR: /home/vpopmail/fml
          ML_DIR: /home/vpopmail/ml
        Language: Japanese
        TimeZone: +0900
    
    
    The current configuration is saved in /usr/local/fml/.fml/system
    
    ---Install the Fml system to /usr/local/fml. (y/n) [n]
    		

    -- Enjoy Internetworking!
    で、インストール完了です。

    .bash_profile の PATH に /home/vpopmail/fml を追加しておくと操作がしやすいかなと思います。

  4.   MLを作成

    では、umekawa.infoに test という ML でも登録してみます。
    $ /home/vpopmail/fml/makefml newml test

    aliasを登録します。
    $ echo 'hoge@umekawa.info' > '/home/vpopmail/ml/etc/qmail/alias/.qmail-test-admin'
    $ echo 'hoge@umekawa.info' > '/home/vpopmail/ml/etc/qmail/alias/.qmail-test-request'
    $ ln -s /home/vpopmail/ml/etc/qmail/alias/.qmail* /home/vpopmail/domains/umekawa.info

    assignを修正します。
    $ su -
    # cd /var/qmail/users
    # vi assign
    運営するドメインの行のすぐ上に追加します。
    +umekawa.info-test:vpopmail:89:89:/home/vpopmail/ml/etc/qmail/alias:-:test:
    assignを修正したら、変更を反映しておきます。
    # ../bin/qmail-newu

    あとは、fmlのマニュアル通りにMLを運営すれば良いです。
    基本的なコマンドはこんな感じです。
    細かくは help を参照してください。
    MLの設定変更
    makefml config test

    ユーザーの追加
    makefml adduser test hoge@example.com

    ユーザーの削除
    makefml byeuser test hoge@example.com

  5.   ML作成後の処理

    MLに送ったメールのヘッダを見ると、メール情報が localdomain になっています。

    List-Post: <mailto:test@localdomain>
    List-Owner: <mailto:test-admin@localdomain>
    List-Help: <mailto:test-ctl@localdomain?body=help>
    List-Unsubscribe: <mailto:test-ctl@localdomain?body=unsubscribe>

    このままというのは良い気はしないので、修正します。
    $ cd /home/vpopmail/ml/test
    $ vi cf

    DOMAINNAME                      localdomain
    FQDN                            localhost.localdomain
    
    ここを、↓MLを登録したサーバーに変更します
    
    DOMAINNAME                      umekawa.info
    FQDN                            umekawa.info
    

    修正したら、config を開いてすぐに 0 で終了します。
    $ makefml config test

    もう一度、メールを送ってみます。
    List-Post: <mailto:test@umekawa.info>
    List-Owner: <mailto:test-admin@umekawa.info>
    List-Help: <mailto:test-ctl@umekawa.info?body=help>
    List-Unsubscribe: <mailto:test-ctl@umekawa.info?body=unsubscribe>

    guide や help も localdomain になっているので必要なら総て修正します。
    /home/vpopmail/ml/test 以下にファイルがあります。


以上で、MLの設定は終わりです。
ユーザーの管理はコマンドでもできますが、fmlにCGIがありますので、これを使ってユーザーの管理をできるようにします。
インストール方法は別途まとめるようにします。