SOARISTO工房 Logo
2011年8月 Archive
 1  |  2  |  3  |  4 | Next 
2011/08/30

 効果テキメンでした。0xF9F8

spam01.jpg

 前回、スパム認定されたIPアドレスを含むサブネット全体を、丸ごと「完全遮断」するという強硬手段に出た訳ですが・・・、

 上記は、ここ1ヶ月半ほどのスパムコメント数の推移です。

 規制を掛ける前は、最大で1日8件、平均で1日4.3件のスパムコメントが付いていましたが、スパム認定されたIPを規制することで、1日平均2.6件にまで落とすことができました。

 さらに、スパム認定されたIPアドレスを含むサブネット全体を規制することで、1日平均0.2件(ここ数日は0件)にまで落とすことができました。

 してやったり、という感じです。

 これだけ効果が大きいものとは、当初は思いも寄りませんでした。しかも、そのほとんどが中国(cn)からのアクセスなので、実効上、なんら問題はありません。

 ついでに、PHPも、さらなる改善を図りました。

 前回のスクリプトを書いている途中に気付いたのですが、IPアドレスを解決する際に、わざわざAPNICのWebサーバに聞きに行かなくても、自分のサーバでwhoisコマンドを実行してその結果を得れば、HTTPプロトコルによるオーバーヘッドを無くせるので、レスポンスの改善を図ることができます。

 ということで、さっそく改良しました。以下、そのソース(一部)です。

 「ip2cidr()」は、IPv4形式のIPアドレス(開始アドレスと終了アドレス)から、ネットアドレスとサブネットマスクを生成する関数で、PHPの電子マニュアルに載っていたもの、そのままです。

 「GetNetMask()」が、今回のポイントとなる関数で、IPアドレスからネットアドレス等の関連情報を取得するものです。

 「exec()」関数でwhoisコマンドを実行し、結果をバッファに入れます。バッファを検索し、「inetnum」という文字列があれば、IPv4形式のIPアドレス(開始アドレスと終了アドレス)を取得します。

 あわせて、「country」という文字列があれば、国籍を取得します。

 なお、IPアドレスによっては、「inetnum」がwhoisサーバのデータベースに載っていない場合があるため、その場合には、例外処理をしています。

2011/08/28

 今日は、BMW3.netさん主催の「がんばろう日本! 灼熱の大手町オフ 2011」にお邪魔してきました。

shakunetsu01.jpg

 天候に恵まれ(過ぎ)、ほんとうに灼熱です。0xF9C7

shakunetsu02.jpg

 場所はここ。大手町、「逓信総合博物館」横の駐車場。(ププッ)0xF9F8

 その昔、逓信ビルと同じデザインの「東京郵政局ビル」があり、関東総通局とかが入っていました。(懐かしい)

shakunetsu03.jpg

 いつもながらに、壮観な眺めです。

 エントリは110台。スタッフさんやショップなどのクルマを含めると、130台ぐらいが集まっていたでしょうか。

 そのうち、ホワイト系とブラック系で、全体の8割以上を占めていました。日本人は、ほんとうに白か黒が好きなんですねぇ。本国ではあり得ないことです。

shakunetsu04.jpg

 稀少車(?)の、色付きグルマの皆さんです。0xF9C7

 3年目にして、初めて同じ色(シルバー・ストーンⅡ)のM3 Coupeを見ました。

shakunetsu05.jpg

 同じ色、同じホイールというまたとないチャンスなので、お隣さんとホイールの出っ張り比べをしてみました。

shakunetsu06.jpg

 フロントは15mm、リヤは12mm出ています。

#ちなみに、車検は通りません。0xF9C7

shakunetsu07.jpg

 お隣さんと。

shakunetsu08.jpg

 BMWの卒業生でしょうか、Porsche GT軍団も来ていました。

 gucciさんをはじめ、企画・運営の皆さま、お疲れさまでした。ありがとうございました。

2011/08/26
[ ALPINA, Car ]

 今日はクルマを取りに行くので、久しぶりに会社をお休みしました。
(いや、先々週ぐらいに休んでたかも)0xF9C7

 早いもので、M3 Coupeを購入してから、丸3年が経ってしまいました。

 3年経ちましたが、まだ走行距離は13,000km。昨年からは、4,000kmぐらいしか延びていません。

 先日、冷やかしにポルポル屋さんに行った際、査定してもらったところ、低走行キロということで、3年落ちにしては、妙にいい金額がでました。0xF9F8

 それはさておき、

nicole01.jpg

 いつもニコニコNicoleさんにやってきました。

 隣にいるのは、「B7 BiTurbo Limousine」です。しかも、最近出たばかりの「Allrad」です。

 素の状態で20,450,000円(税込)で、これにアルピナ・ブルーの「スペシャル・ペイント」(550,000円)などのオプションを加えていくと、乗り出しで2,300~2,500万円ぐらいにはなるでしょうか。
(M3 Coupe、2台分です)0xF9C7

nicole02.jpg

 新車登録に向けて、予備車検で、いま陸運から戻ってきたばかりだとか。

 21インチホイールが、これほどすんなり決まるクルマも少ないことでしょう。

 いや~、いつかはALPINA。0xF9CF

2011/08/25

 前回、MT5と連携した形で、スパムフィルタを作りました。

 日々自動的に追加していってくれるので、便利なことは便利なのですが、踏み台とされるIPアドレスがつぎつぎに増えていっているため、イタチごっこ状態となっています。

 スパムと判定されたIPアドレスの一覧を見ると、ほとんどが中国からのアクセス(DNS解決できないものも含めて)ですが、特に

   *.dynamic.163data.com.cn

からのものが多くなっています。

 中国のプロバイダーにぶら下がっているユーザで、セキュリティーの甘いユーザーが踏み台にされて、各国のサイトに悪さをしているようです。
(ネットで検索すると、あちこちで被害が発生しているようです)

spam01.jpg

 ということで、いよいよ強制措置を取ることにします。上記中国のプロバイダーからのアクセスは、丸ごと「完全遮断」することにします。

 あわせて、MT5でスパム認定される毎に、IPアドレスを一つ一つちまちまと追加していたのでは日が暮れてしまうので(夜中に自動処理ですけど)、スパム認定されたIPアドレスを含むサブネット全体を、丸ごと「完全遮断」することにします。

 これらには、上記中国のプロバイダーのIPアドレスに加えて、DNS解決できないIPアドレスも含みます。

 工房としては、かなり思い切った措置となります。

 当然のことながら、まっとうなユーザーも影響を受けることになりますが、どーせほとんどが中国からのアクセスなので、ばっさり切り捨てます。
(不幸にも、セキュリティーリテラシーの弱い人たちがいるセグメントに含まれていたということで、諦めていただきます)

 上記を実現するためには、「IPアドレスから、そのIPアドレスが含まれるネットアドレスと、サブネットマスクを得る」という機能(関数)が必要となります。

 以下、そのソース(一部)です。

 IPアドレスからネットアドレス等の関連情報を取得するには、ご存知のとおり、「whois」というコマンドを使います。ネット上では、APNIC(アジア・太平洋エリアを管轄する組織)などのサイトで確認できます。

 こんな確認をいちいちやっていたのでは日が暮れてしまうので、自動的に取得できるようにする訳ですが、試行錯誤の結果、

   http://wq.apnic.net/apnic-bin/whois.pl?searchtext=(IPアドレス)&object_type=inetnum

というコマンド(URL)を与えることにより、ネットアドレスを取得でることが分かりました。

 「GetNetMask()」というのが、その関数です。

 PHPでは、Webサーバが出力するデータを、通常のファイルと同じように扱うことができます。

 上記URLをオープンして、出力される行を検索し、「inetnum」という文字列が含まれる行にある、IPv4形式のIPアドレス(開始アドレスと終了アドレス)を取得します。

 その開始アドレスと終了アドレスから、ネットアドレスとサブネットマスクを生成します。

 この関数を、いろいろ試行錯誤して作っていたのですが、なんのことはない、PHPの電子マニュアルに、そのままどんぴしゃの関数の例が載っていました。「ip2cidr()」という関数です。

 ということで、割と簡単に機能を強化することができまました。上記IPアドレスの一覧のうち、一番右のカラムに、「ネットマスク」(ネットワークアドレスとサブネットマスク)の情報を載せてあります。

 この情報を、Webサーバの「.htaccess」ファイルに、「deny from (ネットマスク)」として追加することにより、スパム認定されたIPアドレスを含むサブネット全体を、丸ごと「完全遮断」することができます。

 さて、その効果のほどはいかに・・・。

2011/08/12

 前回の続きです。

 一息ついたので、いよいよ鐘楼に上ることにします。

venezia19.jpg

 地上からエレベーターで上がり、残り少しだけ階段です。

venezia20.jpg

 いやぁ、素晴らしい眺めです。0xF9CF

venezia21.jpg

 ナポレオンをして、「アドリア海の真珠」と言わしめたのも、頷ける気がします。

#まるで、「紅の豚」のワンシーンのようです。
(ポルコ・ロッソとカーチスの決闘の地(島)に、観衆が各々の船で向かうところ)

venezia22.jpg

 サンタ・ルチア駅に到着する前に見掛けた、巨大な豪華客船が見えます。

venezia23.jpg

 サン・マルコ大聖堂を、上から。

venezia24.jpg

 ということで、絶景も見れたので、そろそろ帰路につくことにします。

 帰りは、メルチェリーエ通りをとおって、リアルト橋に向かい、そこから水上バスに乗ることにします。

venezia25.jpg

 いたるところに水路が張り巡らされていて、ほんとうに迷路のようです。

venezia28.jpg

 目の前を、ゴンドラがゆっくりと通り過ぎて行きます。

venezia26.jpg

 リアル・ピノッキオのお店を発見。

 後で調べたところ、「ピノッキオの冒険」って、イタリアの作家の作品なのですね。

venezia27.jpg

 リアルト橋に到着。

 橋の上は、宝石店や貴金属店、皮革製品のお店がずらりと並ぶ、ショッピングアーケードとなっています。

venezia34.jpg

 リアルト橋の上から。

 ほんとうに、映画のセットの中に迷い込んでしまったかのような感じです。

venezia29.jpg

 小腹が空いたので、運河沿いのカフェで、ちょこっと腹ごしらえ。

venezia30.jpg

 「Rialto」から水上バスに乗り、行きに乗った「Ferrovia」を通り越して、「Piazzale Roma」(ローマ広場)というところで降ります。

 このモダンな赤い橋は、「コスティツツィオーネ橋」といい、2008年に架けられたものです。ヴェネツィアは、中世の風景の中に現代の生活が同居する、不思議な街でした。

 ここからシャトルバスに乗り、一路、マルコ・ポーロ・テセラ空港に向かいます。

venezia31.jpg

 滑走路の向こうに、ラグーナが見えます。

venezia32.jpg

 イタリアで見る、最後の夕日。

venezia33.jpg

 そして月。

 ラグーナの上に建つ街を、やさしく照らしています。

 またいつか、きっと来ようと思います。ありがとう、ヴェネツィア。ありがとう、イタリア。

 1  |  2  |  3  |  4 | Next