Protectorのチューニングを行う

Last-modified: Wed, 03 Sep 2014 23:24:58 JST (1665d)

Protectorについて

 ProtectorはXOOPSで構築したサイトをスパマーなどから守るために重要なモジュールである。デフォルトの設定そのままでいい部分がほとんどだが、サイトの特性、運営者のこだわり具合によっては多少変更が必要な所もあるので紹介したい。

一般設定での変更部分

Brute Force対策

 パスワードを忘れると、パスワードを請求するよりも思いつく限り入力していく人も多いだろう。デフォルトの設定値より少し数字を増やしてもいいかもしれない。

DoS監視の対象から外すモジュール

 AutoPagerizeに対応したモジュールがあれば入力した方がいい。

DoS等の監視時間 (秒)

 ページが表示されたらきっちり読むという人ばかりではなく、探したい記事を見つけるために読み込んでページをぱっと見た瞬間に戻ったり進んだりする人もいるので、デフォルトの設定値より少し多くしてもいい。

悪意あるクローラーと見なす回数

 上とほぼ同じ。
 私の経験からいうと、「これはちょっと」といいたくなる短時間での大量アクセスをしてくるのは利用者のPCにサイトのデータをなにからなにまで全部保存しようとするダウンロードツール。特にPockey-GetHTMLというのはすごかった。なので、こういったダウンロードツールのユーザーエージェントを調べて.htaccessなどでピンポイントで弾いた方がいいかもしれない。

参考サイト

 .htaccessで特定のユーザーエージェントからのアクセスを制限する方法
 ダウンロードツール - ロボ避けとアクセス制限のための覚え書き - livedoor Wiki(ウィキ)

xoops_trust_pathでの設定

 スパマーによる投稿、スパマーのユーザ登録を排除するためにfilters_disabledフォルダにある「postcommon_post_deny_by_rbl.php」と「postcommon_post_need_multibyte.php」をfilters_enabledフォルダにアップロードする。これは非常に効くので、現在大量のスパムに悩まされている、あるいは理由があって長期間サイトのメンテナンスができないということならやっておきたい。

 ただ、以下のような副作用があることは頭に入れておこう。
 ネットには「スパム投稿を行っているIP」というのをリストにして記録しているサーバがあり、postcommon_post_deny_by_rbl.phpはこのリストにアクセスして、現在、自サイトにアクセスしているIPがそこに記録されているかどうかを確認している。リストにあったらアクセスを弾くというわけだ。で、スパムに使われやすいIPの中には「匿名で使えるネットカフェの回線」なんていうのもあり、ネットカフェの利用者は年中入れ替わっているので、当然、普通の人のアクセスも弾く可能性がある。

参考サイト

 spamhaus.orgをはじめとするIPアドレスベースのブラックリスト(RBL)を使ってはいけない

postcommon_post_deny_by_rbl.phpの設定

 上記の「スパム投稿を行っているIPを記録しているサーバ」というのはいろいろあって、サーバによって質が違う(たとえば情報が古くてスパマーのアクセスをまったく弾けないなど)といわれている。postcommon_post_deny_by_rbl.phpは初期設定では「sbl-xbl.spamhaus.org」というサーバだけを見ているが、こだわりがあるなら他のサーバを指定することができる。

 初期設定

		// RBL servers (don't enable too many servers)
		$rbls = array(
			'sbl-xbl.spamhaus.org' ,
#			'niku.2ch.net' ,
#			'list.dsbl.org' ,
#			'bl.spamcop.net' ,
#			'all.rbl.jp' ,
#			'opm.blitzed.org' ,
#			'bsb.empty.us' ,
#			'bsb.spamlookup.net' ,
		) ;

 #を外すことでそのサーバにアクセスしてIPの照合を行う。うちの本家ではniku.2ch.netを使っている。


[PR]