- Mailman
〜OSSのメーリングリストサーバ〜 - ここでは、OSSのメーリングリスト管理ソフトウェア「Mailman」を紹介します。
- メーリングリスト管理
- ここでは、コマンドラインでメーリングリスト管理を行う方法について紹介します。
- 管理Webインタフェース
- ここでは、WEB管理画面について紹介します。
- インストール
- ここでは、CentOS7の場合を例に、インストール方法について紹介します。
Mailman(Mailman, the GNU Mailing List Manager)は、OSSのメーリングリスト管理ソフトウェアです。Pythonで記述されていて、GNU General Public Licenseのもとで公開されています。Mailmanは、RedHat Enterprise LinuxやCentOSに採用されていて、パッケージを使って簡単に導入することができます。Mailmanは、ISPやメールサービスを提供する事業者などでも使われています。インストール後、ログインすると、以下のようなメーリングリストのリストが表示されます。
Mailmanの特徴は、次の通りです。
リストの作成や削除に合わせて、Postfixの設定を自動的に連携することができるMailmanは非常に高機能です。Mailmanは、Webからの管理も可能ですが、機能が多い分だけ管理も複雑になります。そのため、シンプルにメーリングリストを作りたい場合には、Sympaなどの別のソフトウェアを使った方が良い場合もあります。
Mailman 3が、Mailmanの新バージョンとしてリリースされました。
Mailman 3はMailman suiteとも呼ばれており、Mailman core、Mailman Client、Postorius(ウェブUI)等の複数のコンポーネントで構成されています。Mailman 2では実装されていなかったマルチドメインの対応ができるようになっています。
ただし、日本語での利用については、まだ完全ではなく、通知メールの件名表示が文字化けしたり、ウェブインタフェースが部分的にしか日本語表示ができないなどの課題があります。
Mailmanは、RedHat Enterprise LinuxやCentOSなどに同梱され、パッケージで提供されています。ディストリビューションに付属したパッケージを利用することで、ディストリビュータのサポートを受けることが可能です。
ただし、Mailmanは非常に機能が豊富です。そのため、設定によってはメールが届かない、特定のメールだけが配送されないなどのトラブルが発生する可能性があります。こうした場合の問題解決を、ディストリビュータから受けることはできません。そのため、自分で問題解決をする自信がない場合には、構築をベンダーに依頼するのが安心です。
Mailmanのメーリングリストの管理や編集は、コマンドラインから行うことができます。次のようなコマンドが用意されています。
コマンド名 | 役割 |
---|---|
list_lists | メーリングリストの一覧を表示 |
newlist | メーリングリストの作成 |
rmlist | メーリングリストの削除 |
add_members | メーリングリストへのメンバーの登録 |
list_members | メーリングリストのメンバーの表示 |
remove_members | メーリングリストからのメンバーの削除 |
サイト管理者は、これらのコマンドを使ってメーリングリストを管理することができます。
また、同様の機能をWebからも利用することができます。
次のようないくつかの欠点があります。
Mailmanは、複数のドメインに対応していません。そのため、複数のドメインを扱うメールサーバを運用している場合には、複数のサーバを作る必要がありますが、システム構成が複雑になるため、こうのような用途には向いていません。なお、Mailman 3では、マルチドメイン対応が行われていますが、まだ安定して動作はしません。
aliasデータベースにメーリングリストを設定することで動作します。そのため、メーリングリストの名称と、システムのユーザ名が重複すると、メーリングリストへの配送が優先され、ユーザにはメールが届きません。また、この重複を検知する方法も備えていません。
メールサーバの多くがLDAPに対応していますが、MailmanはLDAPに対応していません。大きな組織でメーリングリストを運用する場合、管理者がメーリングリストメンバーを追加する時に、メールユーザのメールアドレスをマニュアルでコマンドやGUIに設定する必要があり不便です。Maiman以外のLDAPに対応したメーリングリストサーバでは、アドレス帳からユーザを選択したり、ユーザ名とメーリングリスト名の重複を避ける機能を利用できるソフトウェアもあります。
このような欠点が問題になる場合には、別のメーリングリストソフトウェアを検討する必要があります。
デージーネットでは、Mailmanを使ったメーリングリストサーバの構築サービスを提供しています。そして、デージーネットでサーバを構築した場合には、Open Smart Assistanceを利用することができます。Open Smart Assistanceでは、ソフトウェアの利用方法に関するQ&A、障害発生時の障害調査、セキュリティ情報の提供など、ソフトウェア単独ではなく、システム全体に対するサポートを受けることができます。
例えば、以前に弊社が構築したサーバで、特定のメールがメーリングリストに配送されないという障害がありました。調査したところ、メーリングリストのSPAM対策機能に抵触していることが分りました。そのため、デージーネットから設定の変更を提案して問題を解決しました。
デージーネットのOpen Smart Assistanceでは、このような障害に対しても迅速に対応します。Mailmanの詳細な情報の他に、管理インターフェースの紹介やインストール手順についても記載しています。
Mailmanを利用して、多数のメーリングリストを管理するメーリングリストサーバを構築しました。4台のサーバを使って、サーバの冗長性と拡張性を確保した構成で導入を行いました。
メーリングリストは、登録されたメールアドレスにメールを一斉配布するための仕組みです。用途は様々で、メルマガの配信のように組織外へのメール配送で利用する場合もあれば、社内の部署やプロジェクトメンバー間での情報交換で利用する場合もあります。それぞれの利用シーンによって、必要となる機能も違ってきます。
ここでは、主な選定のポイントについて解説します。