article_post_restrictions 変数は 「記事の投稿を許すメンバー」を定義しています。 これを permit_anyone とすると、だれでも投稿可能になります。
article_post_restrictions = permit_anyone
fml4 と異なり、 上のように書くと本当に「誰でも投稿可能」となることに注意して下さい。 *_restrictions 変数には reject_system_special_accounts という root などを弾くルールが別途あります。 デフォルトでは、それらを明示的に指定しています (fml4 では、このあたり曖昧でした)。
fml4 のように、 root などシステムの特別なアカウントは弾き、 それ以外のユーザからのメールは受け付けるという場合、次のようにします。
article_post_restrictions = reject_system_special_accounts permit_anyone注: 以前は reject でしたが、 fml8 2008/08/17 以降のバージョンでは isolate (SPAM の隔離)が推奨です。
article_post_restrictions = isolate_system_special_accounts permit_anyone
ちなみに 2008/08/17 以前 の article_post_restrictions のデフォルトは fml4 互換のため、 次のようになっています
article_post_restrictions = reject_system_special_accounts permit_member_maps rejectこの意味は 「root などシステムの特別なアカウントからの投稿は拒否」し、 「member_maps にあるユーザであれば投稿を許可」 そうでないなら 「投稿を拒否する」 となります。
なお「reject_なになに」および「permit_なになに」という命令は、 マッチしたところで処理が終りになります。 マッチしない場合には次の条件を試します。
2008/08/17 以降のバージョンでは SPAM を隔離するのがデフォルトです
article_post_restrictions = isolate_system_special_accounts permit_member_maps isolate注: reject ではなく isolate となっている。
fml4 のように HOOK でグローバル変数をいじくり回すといった危ないことは出来せん。
IO::Adapter の PCRE (Perl互換正規表現)サポートを利用すれば example.co.jp ドメインからの投稿を許し、 それ以外からの投稿を拒否する restrictions が書けます。
[/var/spool/ml/elena/config.cf] article_post_restrictions = reject_system_special_accounts permit_member_maps reject member_maps = pcre:$ml_home_dir/sender.pcre [$ml_home_dir/domains] \S+\@example.co.jp
注: fml8 2008/08/17 以降のバージョンでは isolate (SPAM の隔離)が推奨です。
[/var/spool/ml/elena/config.cf] article_post_restrictions = isolate_system_special_accounts permit_member_maps isolate member_maps = pcre:$ml_home_dir/sender.pcre [$ml_home_dir/domains] \S+\@example.co.jp
Copyright (C) 1993-2025 Ken'ichi Fukamachi mail:< fukachan at fml.org >