さらばNaver
「動的コンテンツに食らうにしては負荷が大きすぎ馬鹿過ぎる」
として.htaccess拒否の刑に処されたNaverのロボット
NaverBot-1.0 (NHN Corp. / +82-2-3011-1954 / nhnbot@naver.com)
なんですが、.htaccessにて拒否→403エラーを返してもまったく気にも留めず、すごい頻度でひたすら(間違った)リクエストを送りつけ続ける→他ロボットと同時にアクセス&アクセスの集中する時間帯になると、ファイヤーウォールが音を上げてしばしば
(既に設定出来る最大値にしてるけど)
「1分間に許可出来る新規セッションの量を越えちゃったんで、以後パケットを捨てます。」
とか言い始めちゃうし、Apacheのエラーログサイズが普段の100倍を軽く越え、ログから有為な情報を読み取るのが極めて困難になってきましたんで、やむをえずNaverのロボットによるアクセスを、(WEBサーバ側ではなく)ファイヤーウォール側にて完全に遮断する事にしました。
#KORNET-IDC
deny from 61.78.59.0/255.255.251.0
#KONET
deny from 218.144.0.0/255.240.0.0
#Naver.co.jp
deny from 202.234.172.0/25
deny from 219.163.205.160/27
deny from 220.73.165.15/255.255.253.0
ということらしいので、これをそのままiptableに設定します。
DROP all -- 61.78.59.0/255.255.251.0 anywhere
DROP all -- 218.144.0.0/12 anywhere
DROP all -- 202.234.172.0/25 anywhere
DROP all -- 219.163.205.160/27 anywhere
DROP all -- 220.73.165.0/255.255.253.0 anywhere
今回は何の手心も加えず、「指定範囲から来るありとあらゆるパケットを全部捨てろ」と指示しました。
結果>
山のように出てたエラーメッセージ/ファイヤーウォールの悲鳴が、見事にすっきり止まりました!(^_^)
副作用として「以後上記範囲に含まれる代理(プロキシ)サーバ等を経由してのアクセスが不能になる」ってのが出るんですが、当面これに対処する気はぜんぜんありませんので悪しからず。
ということで、たぶんこれでNaverネタはおしまいでしょう(^_^;) 調べてみるとkrドメインからのアクセスを悉く弾くルールを作成するツールなんてのまで存在するみたい→皆さん苦労してるんですねぇ(^^;;
どうやらNaverbotはrobots.txtをちゃんと理解するみたいなので、「.htaccessで拒否する」「ファイヤーウォールで遮断する」ではなくrobots.txtにリクエストを出さないように書いとくのが正しい対応のようです。
確かにこっちのほうが遥かにスマートなやり口だと思われ。