wordpressのコメントアタック対策 fail2ban

コメントアタックという用語で良いのか微妙だが、apacheのログを眺めていると、
wordpressに結構なPOSTリクエストを送ってくる奴がいる。

このブログにPOSTリクエストが送られるのは、
基本的に自分が記事を更新したときだけなので
(コメントなんてほとんどないですからね)
ほぼ、POSTリクエスト = アタックやいかがわしい行為のはず。

ということで、前々から知ってはいたが、全く手を出したことの無い
fail2banの設定をしてみた。

fail2banはログを見て、事前に定義したレシピに
ヒットするとactionを実行(iptablesでブロックとか)するすぐれもの。

wordpressだけでなく、どちらかというと認証が発生する系の
サーバでは設定しといた方がいいなと思う。
sshとか、pop3とか、その手のサービス。

まー。今回はwordpressの設定。

例によってインストールはapt-get一発
(ubuntu14.04)

 

 

 

/etc/fail2ban/jail.confに以下を追加

 

 

 

  • filterはこれから定義する
  • logpathは実際の環境にあったもの
  • actionは、これだとiptablesで、http,httpsをブロックする
  • findtimeは、検知する間隔
  • bantimeは、ブロックする時間
  • maxretryは、findtime中この回数だけヒットしたらブロックするって値

上で使うfilterを作る。

/etc/fail2ban/filter.d/apache-wpcm.conf

 

 

 

もう、単純に、/wp-comments-post.phpにPOSTしたリクエストを対象とする。

でサービス再起動

 

 

 

実際に定義した、filterがログファイルにヒットするかチェックするには、
fail2ban-regex コマンドを使う。ログファイルが大きいと結構時間がかかります。

 

 

14770行チェックして、121マッチとのこと。全くヒットしないとか、ヒットしすぎとかでは無いので
実運用して様子見します。

メールのバリデーション・構文チェック

プログラム的にメールの送信とかしていると、結構な割合でメールの形式が正しくなかったりする。

普通のメーラーとかでは、問題なくても、何処かのメールサーバのとあるシステムでは

SPAM判定されたり、Header ERRORとかで怒られたり、後になって気付くことが多い。

事前に、プログラムが自動生成するメールの形式を、チェック出来るようなツールがないか調べたところ、意外とない。

HTMLだとウジャウジャ存在するのに(HTML バリデーターとかでgoogle先生)、

メールはかなり少ない。特に日本語の情報。

ってことで調べた結果、以下のサイトにたどり着きました。

Message Lint

IETFのサイトなんで、変なサイトってことは無いと思いますが、

実メールで、さすがに外に情報出したくないなんて時でも、ソースが公開されているので

ローカル環境でも実行出来ます。

たぶん、gccとmakeが入っているくらいの環境なら、コンパイルも簡単だと思う。

実際にローカルで実行してみた結果の感想としては、うん。よくわからん。

Multipartのboundaryが閉じてないと、怒ってくれたのでそれなりに使えるはず。

 

 

 

(続)ubuntu server 12.04 LTSを14.04 LTSにアップグレード

前にちょっと記事にしたが、その続編ぽいもの。

前回のサーバは、DNSくらいしか動いてなくて、特に問題なかったのだが、

今回はLAMP環境を移行した。はまりまくり。

メモってないので、記憶をたどると、ハマりどころとしては。

debian系のsites-enabledの設定ファイルが変わった。

debian系では、/etc/apache2/sites-enabled/以下に各サイトの設定を書いて

そのサイトを有効にするには、a2ensiteコマンドを実行すると、/etc/apache2/sites-available/以下に

シンボリックリンクが作られて有効になるといった感じの動作。

まー。この動作自体は、よく考えられていて良いとは思っている。

この設定ファイルだが、前は、どんなファイル名でも良かったのだが、

14.04からは、*.confと拡張子が付いてないと、読み込まれなくなった。

なので軒並み修正。

 

apache 2.4からアクセス制御の書き方が変わった。

ubuntuというか、apacheの変更だが、古くからのapacheのアクセス制御は、

以下のような感じ

 

 

が、2.4からはこんな感じになる。

 

 

 

と、こんな感じになった。まー。シンプルで良い気もするが、軽い気持ちでバージョンアップすると痛い目にあう。

過去の表記を有効にするモジュールもあるようなのだが、
少なくとも自分で追加したサイト側には有効になっておらず
全部手動で、2.4系の書き方に変更する必要があった。

2.4系の細かいアクセス制御設定は、他のサイト等を参考にしていただければと思います。
(自分もよく分かってない。)

全部許可なら

 

 

 

とからしい。

ロング・グッドバイ(NHK) ロケ地

「ギムレットには早すぎるね」

のセリフで有名な、ロング・グッドバイがNHKでドラマ化されている。

2014年4月19日(土)スタートで全5話。毎週土曜日夜9時から。

でやってるのだが、これがまたハードボイルド感バリバリで、キャストや、セットの気合い入りっぷりが半端ない。

主人公の、増沢磐二(原作ではフィリップ・マーロウ)役の浅野忠信がまた、かっこいい。

ただ演技はちょっとコミカル風に感じてしまうが、まーそれも含めて魅力なんだと思う。

で、このドラマの凄いのが、セットや小道具やら照明やらロケ地やら。

特に再三登場する、

  • 増沢磐二探偵事務所
  • Victor’s bar
  • 上井戸家(古田新太の家)

こいつらが半端ない。

まず、増沢磐二探偵事務所だが、なんとこちらはセットらしい。

公式のblogで説明がある。

すげー。気合いの入りっぷりが半端ない。

ちなみに、事務所の外は、静岡に実在する場所らしいです。

この記事

次に、上井戸家だが、こちらもblogに記事がある。

この記事

うーん。シャレた建物だ。

Victor’s barに関していまのところ情報無いようです。一番知りたいのに。

実在するなら是非行ってみたいなー。これもセットかなー。

自分は村上春樹翻訳しか読んでおりません。

linuxでモニタの表示をキャプチャ(screendump)

昔debianを触っていた時に、偶然モニタの表示状態を取得出来るコマンドがあって、こりゃ便利だと思ったがどんなコマンドだったか忘れてしまっていた。

リモートに設置されているサーバで、お客さんにモニタの状態を確認してもらうとき、こっちでも見れると何かと便利。

ただ、当時redhat系には入ってないコマンドだったので、結局使えないからということで綺麗さっぱり忘れてしまっていた。

で、今回思い出したそのコマンド

 

こいつを実行すると、モニタに表示されているっぽいもの(foobar login:みたいな)が確認出来る。

なんでredhat系には、無いんだよと嘆いていたところ、screendumpは仮想コンソールとやらを表示している模様。

man vcs

ということは、デバイスファイル直接見ればいいんじゃね。とのことでやってみた。

vcsかvcsaかは環境によって違うと思う。また、環境によってはどちらも存在しないことがある。

一応自分の環境では、vcsの方を単純にcatしたら、モニタに表示されている内容が表示された。

ただ、改行とかされないので非常に見辛い。

 

これまた、初めて知ったのだがfoldコマンドにパイプしてやると、見栄えが良くなる。

 

man fold

世の中知らないことばかりですね。

あと当然ですが、これはCUI環境での話です。

findコマンドで、サイズの大きいディレクトリを探す

なんでこんなこと調べようと思ったかというと、とあるシステムで特定のパーティションのi-nodeが溢れそうになっていた。

i-nodeを大量消費するのは、細かいファイルを大量に作るやつだと思うので、そんなディレクトリがあれば、

きっとディレクトリサイズがでかくなっているはず。

 

Linuxのディレクトリサイズは、中のファイル数が多くなると、大きくなる。細かい理由とかはgoogle先生に聞くといいと思う。

 

で、調べるのは、findコマンドでこんな感じ

普通のディレクトリであれば、4kのはずなので、このくらいデカければ、まー異常ってことで。

一応予想通り、i-nodeを大量消費しているディレクトリを特定出来た。

ブラウザの表示サイズを100%に戻すCtrl+0

WEBブラウジングをしていて、文字が小さかったりすると、Ctrl+マウススクロールで、文字を拡大したりするのだが、

元のサイズに戻す時、こんなもんだったかな程度のアバウトなサイズで戻してきた。

が、ショートカットキーで一発で戻せるらしい。

Ctrl + 0

コントロール、プラス、数字のゼロ。

linux環境ではあるが、Firefox、chromeどっちでも大丈夫だった。ネットの記事を見るとIEでも同じショートカットっぽい。

うーん。知らなかった。

ubuntu server 12.04 LTSを14.04 LTSにアップグレード

やっとこさLTSがリリースされたので、アップグレードしてみる。

サーバ環境なので、GUIなど無いので、CUIでアップグレード。

現在のバージョンを確認

do-release-upgradeでアップグレードの実行

ん?新しいのは無いって?

なんかネットで情報調べると-dオプションをつけろと。

man見ると、develリリースとか書いてあるから、開発版じゃないのとか思うのだが

とりあえずやってみた。

ssh経由だと、ご丁寧に、sshdを別ポートで上げてくれるし、iptablesの警告まで出してくれる。

途中変更を加えた、configとかあると、新しいコンフィグに置き換えるか聞かれるけど

日本語の説明なので全く問題ない。

インストールしているパッケージの数や、サーバのスペックで、かなり変わると思うが

自分の環境では、30分くらいで終わった。

使っているサービスもDNSくらいだったので、アップグレード後も特に問題なさそう。

うーん。簡単。簡単。

2014年4月23日 山中慎介・長谷川穂積 W世界戦 視聴率

http://www.sanspo.com/etc/news/20140425/amk14042505000001-n1.html

視聴率(日本テレビ系)は8・1%(関東地区、ビデオリサーチ調べ)とのこと。

うーん。いいんだか悪いんだかイマイチ分からないが、せめて10%超えとかしてくれたらなー。

ただ、長谷川見て、その後山中戦ていうのは、かなりインパクトがあったと思うので、これから徐々に上がっていけばいいなー。

日本チャンプ時代から、応援してるので、あまり有名になりすぎちゃうと、ちょっとそれはそれでって感情もあるのだが

ボクシング界にとって、これほど倒せるチャンプの知名度が上がらないのは、よろしくないので。

ボクシング 山中慎介 もう

ボクシングの試合が終わりました。

なんとも、世代交代みたいな感じで、喜んでいいのか、悲しんでいるいいのかちょっと悩むところなんですが。

結果は、

  • 長谷川穂積TKO負け
  • 山中慎介TKO勝ち

です。

前バンタム級の絶対王者と、現バンタム級の絶対王者みたいな感じで。

感想はいろいろあるけど、山中チャンピオンがインタビューの最後に言った

「もう」

ですが。

さんま御殿出た時、滑舌が悪いと、いじられて。。。

自己紹介しても、

さんまが、「は?」

みたいな感じで、

さんま「じゃー。発声練習せいや!」

みたいな感じでオフコースの、さよならの出だし、

「もう」

を言わされた。みたいなくだりだったと。んでそれをインタビューの出だしで言えばみたいな流れ。

本人公式ブログでは、顔引きつってたかも?みたいなやりとりが。

因みに、元になった曲は、これ。(すぐ消えるかも)