wordpressログインページへの不正アクセスを防ぐ

 wordpressは人気の高いCMSなのだが、それゆえに不正アクセスなど攻撃されやすいCMSでもある。

 セキュリティ対策として、「Limit Login Attempts」というwordpressのログイン試行回数を制限できるプラグインを入れていた。
「Limit Login Attempts」解説サイト

 そのプラグインのログを見ると、某弱小運営サイトで何度もアクセスを試みられていて、怖いのは、既にアカウントが割れてしまっていたのだ。もちろん、「admin」なんて一般的に使われるものは使っていない。すぐにパスワードをさらに桁数を増やしたのだが、なんだか不安だ。

 別のサイトでは、Jetpack内にある「プロテクト」を利用している。世界中ののWordPressサイトのクラウドを利用して、悪意のあるIPアドレスを識別・ブロックしてくれるという優れもの。時間が経つほど精度が上がっていくのだ。
Jetpack「プロテクト」解説サイト

 こちらも不正アクセスを試みられているのがわかった。

 「プロテクト」は悪くなさそうだけど、もうちょっとセキュリティ対策をしようか。

 そう思って、ログインページのアクセスをIPで制限することにした。
「wordpressログインページのIP制限」解説サイト

今までIP制限をしなかったのは、自分のネット環境がいつ変わるか分からなかったし、いざ変わるときはきっとバタバタしているので、この辺りを修正するのが面倒だろうと思ったからだ。でも、最近の攻撃数の多さを考えるとそんなことも言ってられなくなった。

というわけで、現在行っているセキュリティ対策は、上記の、ログインページのIP制限と、Jetpack「プロテクト」(念のため)、他にFTPアクセスのIP制限をやっている。

wordpressで新規投稿が出来なくなった!

 相当久しぶりに記事を投稿しようと思い、このサイトの管理画面にログインした。

 投稿する前に、wordpress本体や、多くのプラグインのアップデートをする。wordpressのバージョンは、4.2.2–jaに。

 最新のアップデートは、様子をみつつ、バグ報告がないことを確認してからやっていたが、最近はそれよりセキュリティが心配でさっさとアップデートしていた。面倒だったからというのと、クライアントではなく自分自身が運営しているサイトだったから。

 そして、久しぶりに長い記事を書いたら、「公開」ボタンのところがなにかいつもと違う。「レビュー待ちとして送信」となっていたのだ。 最新バージョンになって仕様が変わったのかな。でも、「下書きとして保存」ボタンは今まで通りあったので、とりあえずここで保存しておくかとクリック。
1

 すると…

 投稿内容が消えてしまった! 下書きとしても保存されていない!

 はぁ、本当に久しぶりに記事を書いたのに…

 何度試してみても投稿できない。途中まで書いて放り投げてあった以前の下書きをちょっと修正して投稿したら、これまで消えてしまった。なんなんだよ、もう。

 今回、なんの確認もせずにアップデートをかけたのは、2つのサイトなのだが、片方は問題なく投稿できて今までとなんらかわらない。なのに、余計なプラグインも入れていない、デーマも付属のものを利用しているこのサイトでバグが発生した。

 他に同様の現象が報告されていないか検索してみた。

 その結果、どうもwordpressのバージョンアップで、文字コードが複数混在してしまったようで、現時点ではまだバグフィックスされたアップデートはでていないようだ。

 いくつか見つけた質問掲示板でも、明らかな解決法はのっていない途中経過だけだった。

 もう面倒だから、バグフィックスが出るまでこのまま放置かな。

 今回の問題は、どうもデータベース内で文字コードが変わってしまったことが原因のようだ。文字コードを直すのはそんなに難しい方法ではないし、ダメだったとしても戻すのが簡単そうだったので試すことにした。ネットで探し出した方法は、php.iniとか、.htaccessとか、前のバージョンに戻すとか、なんか面倒だったのだ。明確に解決した、となっているものでもなかったし。

    【手順】

  • phpMyAdminにログインする。
  • テーブルの「照合順序」が「utf8_general_ci」「ujis_japanese_ci」と混ざっているので、全て「utf8_general_ci」にする。「操作」の左から2番目のアイコン「構造」で変更できる。
  • これだけだと、テーブル自体の照合順序が直っただけ。次に、テーブルの中身の照合順序を直す。左メニューでずらっと並んでいる各テーブルを一つ一つクリックし、フィールドを全てチェックして、「変更(鉛筆アイコン)」をクリック。
  • そこも、「照合順序」が「utf8_general_ci」「ujis_japanese_ci」と混ざっているので、全て「utf8_general_ci」にする。面倒だけど、各テーブル全部やる。

2

これで、とりあえず投稿時のバグは直ったようだ。当分、新規記事は消えてしまってもいいように、外部テキストに保存してから投稿すると思うが。

源泉徴収税額の計算方法(手取りの場合)

1 税率が10.21%の場合(手取額が897,900円以下の場合)
 手取額÷0.8979(1-10%×102.1%)=支払金額
2 二段階税率の適用がある場合(手取額が897,900円超の場合)
 (手取額-102,100)÷0.7958(1-20%×102.1%)=支払金額

●原稿料の報酬を手取契約10万円で支払う場合の支払金額等の計算
 支払金額:100,000円÷0.8979=111,370円
 源泉徴収税額:111,370円×10.21%=11,370円(1円未満の端数は切り捨て)
 手取額:111,370円-11,370円=100,000円

●エクセルの計算式
=小計/0.8979-小計 (小計を該当のセル番号に差し替え)

参考サイト:国税庁 手取契約の場合の源泉徴収税額の計算方法

CPIでのWP-DBManagerの設定

mysqldumpのパスとmysqlのパスが自動では入らないので手動で入力します。

mysqldumpのパス
/usr/local/mysql5/bin/mysqldump

mysqlのパス
/usr/local/mysql5/bin/mysql

XREAなどと違い以上で使えるようになります。

追記:2013.3.21
最近、CPIの新しい共用サーバに変えたら、パスが変わったようです。
自動で入力されるものでいいようです。
mysqldumpのパス
/usr/local/bin/mysqldump

mysqlのパス
/usr/local/bin/mysql

人気ブログランキングに登録してみた


長らくこのブログは知人にすら教えずに運営してきた。理由は、アクセス解析を正確にしたかったから。それに、知人に教えたところで読んで面白い内容ではなかったし。そういうわけで、このサイトにアクセスして下さる方は、ほぼ100%検索エンジン経由だ。後は、検索エンジン経由で来ていただいた方がリンクを張って下さることがあり、そのリンクから訪問して下さる方も少しづつ増えている。とはいえ、更新する頻度もかなり少ないので、全体的なアクセス数はあまりない。
そこで試しに「人気ブログランキング」に登録してみた。なぜここに登録したかというと、かつてよく読んでブログがここに登録しているところが多かったから。他にも同じようなサービスがあるかもしれないが、とりあえずここで登録してみて様子を見てみることにする。登録するからには、投稿を増やしていかないとなあ。