NP_cles()

123456789101112131415161718192021222324252627282930

NP_BlacklistJP v1.1

 
投稿者:hsur 投稿日時:2007-03-18 - 01:12
カテゴリー:Plug-in - - トラックバック(default)- Views: 667

IPによるホワイトリスト機能を実装しました。その他DNSBL周りのバグ修正を行っています。

ダウンロードはこちら
[NP_Blacklist v1.1][508clicks]

NP_Blacklist v1.2をリリースしています。

2007/4/7追記(v1.1.1)
 ・一部環境において管理画面でエラーが出る問題を修正
 ・IPブロックがきちんと働いていなかったバグを修正

※利用方法についてはNucleusCMS Japanのplugins:np_blacklist [Nucleus CMS Japan Wiki]にまとめてあります。

このバージョンは以前のバージョン(0.98 jp##)と動作が異なります。ファイルの上書きのみではアップグレードできません。アップグレードの際はアップグレードについての解説をよく読んで作業してください

動作確認はNucleus 3.24(UTF-8)、PHP 4.4.6環境で行っています。
動作確認報告、バグ報告はこのエントリへ、コメント・トラックバックをお願いします。

[Added] IPホワイトリスト機能を追加

指定したIPアドレスを排除しないようにするIPホワイトリスト機能を追加しました。
CIDR形式(###.###.###.###/##)で指定することができます。
これに伴い、IPブラックリストについてもCIDR形式を使うことができるようになりました。

[Fixed] DNSBLの参照が正常に行われていなかった問題を修正

DNSBLの参照がきちんと行われていなかった問題を修正しました。

[Fixed] IPアドレスの判定が不適切であった問題を修正

DNSBL参照時に結果の判定が不適切(実用上は無害)であったため、念のため修正しました。」

[Changed] 正規表現判定の/m修飾子を削除

正規表現判定からm修飾子を削除しました。
0.98 jp8までと同じ判定ロジックに戻ります。

[Changed] ソースコードから不要部分を削除

ソースコードのクリーンナップを行いました。

    このエントリは役に立ちましたか?

      

    トラックバックについて [policy]

    Trackback URL:
    Trackbacks
    いつもお世話になっている Nucleusプラグイン開発日誌と備忘録 - NP_cles() で NP_BlacklistJP v1.1 と NP_TrackBack v2.0.3jp8 がリリースされました。 今回のバージョンアップでは、と が目玉((?))でしょう...
    徒然なるままに (2007/03/19 06:06)

    Comments [policy]

    yama wrote:

    さっそく試してみます。
    NP_Blacklistとは別ネタにすべきかもしれませんが、すでに受けてしまったスパムを同じようなルールベースで一括削除(つまり掃除)できるプラグインがあると便利かも。Nucleusで作られたサイトを今回いろいろ探してみたのですが、スパムの掃除が大変なので初期状態からNucleusを入れ直したというサイトがいくつかありました。

    2007-03-18 20:26 <%HatenaAuth()%> 

    hsur wrote:

    あー、なるほど。
    確かにそれはいいかもしれないですね。
    ちょっと考えてみます。

    探して削除しちゃうのはそんなに難しくないんですが、誤認でごっそりとコメントとかトラックバックが無くなったら悲しいですよね。削除対象になるコメントなり、トラックバックをユーザーに提示して、一括削除できるようなイメージでしょうかね。

    2007-03-18 20:31 <%HatenaAuth()%> 

    yama wrote:

    先に対象をリストアップできると便利ですね。だけど実際、数万件もあったりするケースがあると思います。というかありました。笑
    こういう場合の掃除の仕方として「絶対にクロ」の条件で確認なしにごっそり削除して、数が絞れてきたらグレーっぽい条件で目視でいちおう確認してから削除…というふうにできると安心かもしれないです。ホワイトリストも組み合わせられるとなお便利かも。

    2007-03-18 22:16 <%HatenaAuth()%> 

    えらー wrote:

    インストールできたのですが、
    IPホワイトリスト編集
    IPブラックリスト編集
    のところでエラーがでました。

    IPホワイトのエラーが
    Fatal error: Call to undefined function: pbl_showip() in hogehoge.com/httpdocs/nucleus/plugins/blacklist/index.php on line 190

    ブラックリストのエラーが
    Fatal error: Call to undefined function: pbl_showip() in hogehoge.com/httpdocs/nucleus/plugins/blacklist/index.php on line 183

    といった物です。
    以前の0.98からアップグレードしたときに出て来ました。もし解決ご存じでしたら教えて下さい。

    2007-03-22 21:05 <%HatenaAuth()%> 

    hsur wrote:

    環境がわからないので、何とも言えないですがちゃんとアップデートできていないような気がします。

    特にblacklistディレクトリ内のファイルは確実に全て上書きされているかどうか、確認してみてください。

    2007-03-24 14:38 <%HatenaAuth()%> 

    chiecco009 wrote:

    Macユーザーです。

    templateフォルダ内にファイル名の長いファイルがいくつかありますが、私の環境では31文字以上のファイルをうまく扱えません。そのため、毎回サーバにアップロードしてからファイル名を修正する作業が必要になっています。

    できれば、31文字以内のファイル名にして頂けると大変助かります。ご検討下さい。

    2007-03-24 17:35 <%HatenaAuth()%> 

    hsur wrote:

    参考までにどのような環境をお使いですか?
    31文字ということなので、もしかしてMacOS9(HFS)系ですか?

    私もMacユーザーなのですが、現在のMacOSXでは特に不具合はないので。。。。
    (プラグインの開発自体はWindowsのEclipseで行っています。)

    2007-03-24 18:01 <%HatenaAuth()%> 

    chiecco009 wrote:

    すみません、Mac というよりは Dreamweaver MX の問題だったようです。

    サーバへの転送に Fetch を使うようにしたら、特に問題なく作業できました。

    2007-03-26 17:34 <%HatenaAuth()%> 

    shika wrote:

    はじめまして。
    nucleus3.24 (utf-8)を使用しております。 NP_Blacklist v1.1を新規インストールし、管理画面に移ろうとしたときにエラーが表示されてしまいました。
    エラーの内容は
    Fatal error: Cannot redeclare pbl_ipcache_write() (previously declared in ./cache_file.php:11) in
    (省略)/nucleus/plugins/blacklist/cache_file.php on line 10
    というものです。インストール方法のご説明を参考にし、/blacklist/settingsと/blacklist/cacheのパーミッションも変更したのですが、エラーの内容が分からずに苦慮しております。当方初心者のため、ご面倒をおかけしますが、どのように対処したらよいかお教え願えませんでしょうか。よろしくお願いいたします。

    2007-03-27 15:44 <%HatenaAuth()%> 

    hsur wrote:

    おそらくblacklistの不具合によるものだと思うので修正版を用意しようと思うのですが、さしあたって以下の方法を試してもらえますでしょうか。

    blacklist/index.phpの2行目の部分

    require_once("blacklist_lib.php");

    //require_once("blacklist_lib.php");

    に書き換える。

    2007-03-28 01:24 <%HatenaAuth()%> 

    shika wrote:

    修正して再インストールしたところ、無事管理画面に入ることができました。ご教授ありがとうございました。
    なお、サーバーの環境を詳しくお伝えしておりませんでした。管理者に問い合わせたところ、Mac OSX server 10.4で、phpのバージョンは4.44、Apache1.33とのことでした。ご報告が遅くなってすみません。

    2007-03-28 13:02 <%HatenaAuth()%> 

    dkex wrote:

    こんにちは。

    Blacklist 長らく使用させて頂いているのですが、0.98jpx では URL 内の文字列も NG 判定して弾いていたものが、1.1 ではうまく弾いてくれないようです。たとえば、hogehoge.com というのを NG 指定するとテストでは引っ掛かるのですが、実際コメントに http://hogehoge.com/hoge.html などと入力して投稿してみると素通りします。

    また、手動で禁止 IP を登録しても、その IP からのコメントを弾いていないようなのです。

    普通の文中の単語はきちんと判定しているようです。なにか設定やインストールに問題があるのでしょうか。以前のバージョンは完全に削除してからインストールし、AddSpamCheckEvent のインストールもして、パーミッションの設定もしています。

    2007-03-30 09:42 <%HatenaAuth()%> 

    hsur wrote:

    ログインをしたままテストをおこなっていませんか?
    少し前のバージョンからログインをしている場合にはspam判定をしないようになっています。

    2007-03-30 12:16 <%HatenaAuth()%> 

    dkex wrote:

    ログアウトしてもダメなので、よくよく見てみたら、setting ディレクトリに自動生成されるファイルのパーミションをきちんと設定しそこねていたようです。XREA のレンタルサーバーを利用しているのですが、自動生成されたファイルのパーミッションの変更でエラーが出ていたというオチでした。

    お騒がせしました。

    2007-03-30 15:41 <%HatenaAuth()%> 

    おやじまん wrote:

    ログについてですが、V1.1になってから、IPによるブロックというログは残らなくなったのでしょうか。

    些細なことですが、なくなったとしたらちょっと寂しいです。というのは冗談ですが、あまりにしつこいところはサイトへのアクセス自体を拒否しようかなと思っており、このログが結構参考になったもので、あればうれしいかなと…

    2007-04-05 20:22 <%HatenaAuth()%> 

    hsur wrote:

    今でもIPによるブロックというログは残るはずですが、具体的にどのバージョンと比べた場合の話ですか?

    昔のバージョンではページを開いた際に必ずスパムチェックをしていたこともあったのですが、負荷の問題があるので現在のバージョンではそのようなことはしないようになっています。そのため、IPによるブロックというログはひと頃に比べるとだいぶ少なくなったとは思いますが・・・もしかしたらそのことですか?

    2007-04-06 01:38 <%HatenaAuth()%> 

    おやじまん wrote:

    今でもIPによるブロックというログは残るはずですが、具体的にどのバージョンと比べた場合の話ですか?

    情報の記載がなく、大変失礼しました。

    V1.0と比べたときです。apacheのログとかを見ていると、「同一IPから何度spamを受信したらIPブラックリストに追加するか?」で、自動的にIPブラックリストに登録された後にも何度か同じIPアドレスからSpamが来ているようです。だけど、blacklistのログには残っていないんですね。

    といいますか、3月下旬にV1.1にしてから、一度も「IPによるブロック」というログにお目にかかっていないのです。だからIPによるブロックというログは残らなくなっちゃったのかなと思った次第です。

    判定の順番が変わったとかが原因でしょうか?

    2007-04-06 11:28 <%HatenaAuth()%> 

    hsur wrote:

    そうですか。特に何も変えたつもりはないのですが、バージョンアップの際にいろいろといじった部分なので何かバグがあるのかもしれません。

    いまちょっと時間が取れないので確認できませんが、時間が取れるようになったら確認してみます。

    2007-04-06 14:32 <%HatenaAuth()%> 

    maca wrote:

    はじめまして。おかしなことが起こったので報告させていただきます。
    本日、v0.98jpからv1.1.1にバージョンあげてみたんですが、ブラックリスト管理のプラグインオプション以外の項目(NGワード編集等)のページで、Necleusの管理メニュー(左に出てくるメニュー)が消えるという現象がおきました。この現象下では、NGワードを追加等の操作をしても一切反映されませんでした。

    管理操作履歴において
    Blacklist: 'NP_BLACKLIST_CACHE_DIR' は書き込み可能になっていません.
    と表示されていました。
    casheの属性を777に変えてみたんですが、上記現象は改善されませんでした。

    と、よく分からない状況だったので、v1.0をインストールしなおしたところ問題なく(?)いけたので現在v1.0を使用しています。

    環境ですが、
    necleus v3.24
    php 4.4.2
    MySQL 4.0.26
    apache わかりませんでした。

    読みにくい文章ですいません。

    2007-04-07 21:22 <%HatenaAuth()%> 

    hsur wrote:

    Blacklist: 'NP_BLACKLIST_CACHE_DIR' は書き込み可能になっていません.

    このログが残っているということは、何らかの理由でblacklist/blacklist_lib.phpが読み込めていないのだと思います。

    v1.0で問題ないということなんですが、1.1の再インストールはしていないのですよね。blacklist/blacklist_lib.phpの読み込みについてはv1.0から変えていないので、もう一度1.1をインストールしてもらえるといいかもしれません。

    2007-04-07 23:29 <%HatenaAuth()%> 

    maca wrote:

    v1.1をもう1度インストールしたらうまくいきました。
    お騒がせしてすいませんでした。

    2007-04-08 19:31 <%HatenaAuth()%> 

    Add Comments

    コメントは承認後の表示となります。
    OpenIDでログインすると、即時に公開されます。

    OpenID を使ってログインすることができます。

    Identity URL: Yahoo! JAPAN IDでログイン