今まで別の場所で運用していたメーリングリストを、自宅に移すことにする。
うちには、今までもfmlがインストールされていたのだけれど、なかなか普通の人はfmlのコマンドメールなんか送ってくれないので、webのインターフェイスがあるmailmanをインストールすることにする。
だいたいこんな感じで、快適にmailmanが使えるようになりました。後の設定は、webからやれるので楽なのではないかしらん・・・。
うちには、今までもfmlがインストールされていたのだけれど、なかなか普通の人はfmlのコマンドメールなんか送ってくれないので、webのインターフェイスがあるmailmanをインストールすることにする。
- いつものようにportsから mail/mailman をインストール。makeオプションは、MAIL_GID=mailman
- /usr/local/mailman/Mailman/mm_cfg.pyを修正。以下をファイルの後ろにつける。
DEFAULT_SERVER_LANGUAGE = 'ja' DEFAULT_EMAIL_HOST = 'wizard-limit.net' DEFAULT_URL_HOST = 'www.wizard-limit.net' DEFAULT_URL_PATTERN = 'https://%s/mailman/' PUBLIC_ARCHIVE_URL = 'https://%(hostname)s/pipermail/%(listname)s' MTA = 'Postfix'
うちの場合はパスワードが流れる系は全てhttpsで。
ちなみに、ここに書く設定項目については、Defaults.pyを読めばわかる。
MTA='Postfix'って書くと、Mailmanがpostfixと連携してくれるようになるので、いちいちrootでaliasesとか書き換えなくても良くなる。webからメーリングリストの作成とかも可。
※ DEFAULT_EMAIL_HOSTと、DEFAULT_URL_HOSTはDefault.pyで書かないとwebからのメーリングリストの作成ができなかった。 - bin/genaliasesコマンドを実行する。data/aliases, data/aliases.dbができる。chownでオーナーをmailman:mailmanにしておく。グループの書き込みもできるように。
- bin/newlist mailmanでサイトリスト?を作る。(いまいちこれの必要性がわからないんだけど・・・)
- postfixのmain.cfに以下の行を追加する。(これが、mailmanとpostfixの連携の肝らしい)
alias_maps = hash:/etc/aliases,hash:/usr/local/mailman/data/aliases
※ 書き換えたら、postfix reload - cronの登録
# cd /usr/local/mailman/cron # crontab -u mailman crontab.in
- デーモンの起動
# /usr/local/etc/rc.d/mailman.sh start
- httpd.confの編集。httpsのvirtualhostの設定のところに以下を追加。
ScriptAlias /mailman/ "/usr/local/mailman/cgi-bin/" Alias /pipermail/ "/usr/local/mailman/archives/public/"
- iconsの下のアイコンを、apacheのアイコンディレクトリにコピー。
# cp /usr/local/mailman/icons/* /usr/local/apache/icons/
※ 多分うちの設定は古い or 特殊なので、コピー先は適当に読み替えてください。 - apacheを再起動して、https://www.wizard-limit.net/mailman/listinfo にアクセスする。
- 何故か、Powered by FreeBSDのロゴが出ない。findで探しても入ってないみたいなので、FreeBSDのページからもらってくる。(暇があったらトップページにも置こうかしらん)
だいたいこんな感じで、快適にmailmanが使えるようになりました。後の設定は、webからやれるので楽なのではないかしらん・・・。
自宅でもmailmanの続きを読む