ezmlm and ezmlm-idx

ezmlm

ezmlmは、qmailの開発者D. J. Bernstein氏により作成された大規模対応のメーリングリストで、qmailのMaildirにも対応し、fmlやMajordomoに比べ管理も容易です。

 

ezmlmのインストール

環境: Debian 10 buster 

ダウンロード:  # wget http://cr.yp.to/software/ezmlm-0.53.tar.gz

解凍後、cd ezmlm-0.53   error.h のファイルを編集し、extern int errno; を #include <errno.h> に書き換える

ezmlm-manage.c と ezmlm-return.c の 先頭に #include "log.h" を書き込む。

# make
# make man
# make setup

/usr/local/bin/ezmlm/ 以下にインストールされました。

# ls -la /usr/local/bin/ezmlm/
合計 324
drwxr-xr-x 2 root root  4096  8月 21 17:09 .
drwxr-sr-x 3 root root  4096  8月 21 17:09 ..
-rwxr-xr-x 1 root root 22832  8月 21 17:09 ezmlm-list
-rwxr-xr-x 1 root root 31056  8月 21 17:09 ezmlm-make
-rwxr-xr-x 1 root root 43640  8月 21 17:09 ezmlm-manage
-rwxr-xr-x 1 root root 22808  8月 21 17:09 ezmlm-reject
-rwxr-xr-x 1 root root 35184  8月 21 17:09 ezmlm-return
-rwxr-xr-x 1 root root 35248  8月 21 17:09 ezmlm-send
-rwxr-xr-x 1 root root 26896  8月 21 17:09 ezmlm-sub
-rwxr-xr-x 1 root root 26896  8月 21 17:09 ezmlm-unsub
-rwxr-xr-x 1 root root 39480  8月 21 17:09 ezmlm-warn
-rwxr-xr-x 1 root root 23056  8月 21 17:09 ezmlm-weed

/usr/local/bin/ezmlm/ 以下の ezmlm のコマンドバイナリ群にパスが使えるように設定します。 /etc/profile を編集してPATHに :/usr/local/bin/ezmlm  を追加します。

PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/local/bin/ezmlm"

Profileを反映させます。 # source /etc/profile

テストは qmaildamin 導入後に行います。

 

設定

メーリングリストのタイトルに、連番でメーリングリストの番号を表示させるには、qmailadminの画面で、メーリングリストのプレフックスに、メーリングリストの名前の後に :# を追加します。

ezmlmのメーリングリストのタイトルに連番で番号を表示させる設定

 

 

ezmlm-idx

ezmlm-idxは、ezmlmを拡張するパッチプログラムで、Frederik P.Lindberg氏によって開発・メンテナンスされています。ダイジェストリストを作成したり、Subjectを加工したりできるようになります。

詳しい情報: http://untroubled.org/ezmlm/

 

ezmlm-idxのインストール

ezmlm-idxの情報: http://untroubled.org/ezmlm/

ダウンロード: # wget http://untroubled.org/ezmlm/archive/7.2.2/ezmlm-idx-7.2.2.tar.gz

ezmlm-0.53.tar.gzと同じディレクトリに保存し、インストールします。

# tar xvfz ezmlm-idx-7.2.2.tar.gz
# mv ezmlm-idx-7.2.2/* ezmlm-0.53/
# cd ezmlm-0.53 

# ln -s /.../.../ezmlm-0.53/lang/ja /.../.../ezmlm-0.53/lang/default
# make clean

# make
# make man
# ./ezmlm-test

# make install
# cp /.../.../ezmlm-0.53/ezmlm-cgi /usr/lib/cgi-bin/
# chmod 4555 /usr/lib/cgi-bin/ezmlm-cgi

※ezmlm-idx-7.2.2のインストールで参考にしたURL: https://qmailrocks.thibs.com/ezmlm-idx.php ただしこのサイトでは、インストール先がezmlm-idx-7.2.2を解凍したディレクトリになっているので、ezmlm-0.53へ変更しました。

 

http://untroubled.org/ezmlm からフォークしたezmlm-idx の情報:https://github.com/mbhangui/ezmlm-idx

Easy Mailing List Manager for indimail-mta, qmail

 

Webツール

ezmlm-browseのインストール

ダウンロード: wget http://untroubled.org/ezmlm-browse/ezmlm-browse-0.20.tar.gz

ソースデータ: https://github.com/bruceg/ezmlm-browse

インストール手順

# cat INSTALL
Building the Sources
====================
- Unpack the ezmlm-browse sources into a non-web-visible directory.  If
  you are using the setuid wrapper (see below), this is the directory
  from which ezmlm-browse will execute.
- Make sure all the conf-* files have values appropriate for your
  system (they contain notes about what they are used for).  They are
  set to appropriate defaults for most systems using GCC.
- If your python program is not in the path, put the full path to it in
  the first line of a file called "auto-python".
  If in doubt, skip this step.
- Run "make".
Simple Installation
===================
- As a user that has read access to the list archives, run:
  ./ezmlm-browse-setup --apache DESTPATH TARGET.cgi
  where: DESTPATH is the destination directory into which the files will
  be installed, TARGET.cgi is the CGI filename to install.  For the
  simplest usage this target will be "index.cgi", but if you have other
  CGI scripts in the same directory you may name it something else.
Generic Installation
====================
- Copy either "ezmlm-browse" (if your web server is using Apache suexec
  or equivalent) or "wrapper" (for setuid execution) into a location
  where CGI programs may be executed.  Usually this is either something
  in a "cgi-bin" directory or a file elsewhere named "something.cgi".
  The destination name does not need to be either "wrapper" or
  "ezmlm-browse" as the script will automatically determine its own name
  for the links it creates.
- Make sure the resulting program is executable and owned by the a that
  has read access to the list archives.
- If your web server runs as a user that cannot read the mailing list
  archives (normally true) and does not use the Apache suexec or
  equivalent module, make the copy of the "wrapper" program setuid to a
  user that has read access to the mailing list archive files.  Do *NOT*
  make any Python script setuid.
- Copy in the "ezmlm-browse.ini" file and edit it as appropriate for
  your site and lists.
- If using Apache with the program in a directory other then "cgi-bin",
  make sure CGI execution is enabled in that directory by adding the
  following lines to a ".htaccess" file in the same directory:
        Options +ExecCGI
        AddHandler cgi-script .cgi
        DirectoryIndex index.cgi
  Other server software should be similarly configured.
Configuration
=============
- Edit ezmlm-browse.ini in the destination directory to declare which
  mailing lists are visible to the web, and set the other defaults as
  appropriate.
- Mailing lists should have the ezmlm-make "-i" option enabled to keep
  the necessary indices up to date.  If this is not enabled, run the
  following command for each list:
        ezmlm-make -+ -i /path/to/list

ただし、Webでメーリングリストが閲覧できるのは便利ですが、アクセス権限などを厳格に設定しないと、メーリングリストの内容が公開されてしまいます。

なので、過去のメーリングリストのデータを見たい場合は、ezmlmのコマンドで取得したほうが、安全、安心だと思います。

ダイジェストメールの有効化

ダイジェストメールの場合は「ml2-digest-subscribe@example.jp」になります。同様に、ダイジェストメールをやめるには「ml2-digest-usubscribe@example.jp」に空メッセージを送信します。

※メッセージやタイトルなどで文字化けが起きる場合は、メールソフトでのテキストエンコーディングで、Unicodeに設定します。

123 から145のメッセージを取得 メーリングリスト名-get.123_145@example.jp

123 から145のインデック付のメッセージを取得 メーリングリスト名-index.123_145@example.jp

 

 

autoresponderのインストール

参照したURL: https://www.atmarkit.co.jp/ait/articles/0203/09/news002_2.html

適当な作業ディレクトリにダウンロードして展開します。

ダウンロード: wget https://sourceforge.net/projects/qmailadmin/files/autorespond/2.0.4/auto...

# tar xvfz autorespond-2.0.4.tar.gz
# cd autorespond-2.0.4/
# make
# make install

※これで/usr/local/bin/autorespondがインストールされました。qmailadminから使用することが目的ですから、直接autorespondを使用する機会は少ないと思いますが概要だけ確認しておきます。

autoresponderの使用方法は、「.qmail」ファイルに次の1行を記述します。

| /usr/local/bin/autorespond time num message dir [ flag arsender ]

引数やオプションの意味
time:numに使う受付時間(単位:秒)
num:timeで指定された時間以内に受け付けるメールの最大数
message:応答メッセージファイル
dir:ログを作成するディレクトリ
flag(送信されてきたメッセージの扱い方)
0:応答メッセージに添付しない
1:応答メッセージに添付(デフォルト指定)
arsender(応答メッセージ中の差出人)
+:Fromを空にする
$:送られてきたメッセージ中の「To:」を使用

 

 

 

 

 

タグ: 

オープンソースソフトウェア: