初心者でも30分でできるWordPressセキュリティ対策!管理画面だけでできる見落としがちな基本4つ
W3Techsのよると、CMSのマーケットシェアが6割近くもあり、2番手と1桁差がついてTOPを独走している『Wordpress(ワードプレス)』。
6,7年前は、「Wordpress?なにそれ?MTとどこが違うの?」と言われることも多くて、書店でもWordpressの書籍が1冊しかありませんでしたが、今では、1棚すべてWordpressの解説本というのも珍しくありません。
そんなWordpressですが、人気が高い分ハッカーなどにも狙われやすいというのも事実。
WordPress本体側でのセキュリティ対応はもちろん、最近はレンタルサーバ側でWordpressのセキュリティ対策を自動的におこなったりと、かなり対策が取られています。
しかし、リニューアルや機能追加の依頼があるサイトを見てみると、パスワードが単純、Wordpressのバージョンが数年前、ユーザー名がadmin、というようなセキュリティ的に問題のあるサイトが多くあります。
個人やITに詳しくないユーザーが多いのもWordpressの良さですが、今回は、そんな初心者でも手軽にできるけど、絶対にはずせないセキュリティ対策の基本をご紹介します。
目次
WordPress本体・プラグインのアップデート
まずは、基本となる本体やプラグインのアップデート。
WordPress本体や人気のプラグインは、頻繁にバージョンUPされていて、数週間単位のアップデートも珍しくなく、ほっておくとすぐにアップデートが滞ってしまいます。
数年前は、プラグインの互換性や不具合等の課題も多かったですが、最近はかなり減ってきたため安心して更新ができると思います。
大事なセキュリティアップデートも多いため、しっかりとアップデートをするようにしましょう。
おすすめの手順
- バックアップを取る
- プラグインをアップデートする
- 不具合が無いか確認後、本体をアップデート
- 本体のバージョンがアップしたことで新たに発生したプラグインをアップデート
- 表示等に不具合が無いか確認後、テーマや翻訳をアップデート
- 最終確認
アップデートの手順について、
・本体の不具合はかなり少ないため、プラグインのアップデートから行うようにする
・Wordpress本体、プラグイン、テーマを切り離してアップデート・チェックし不具合が出た際の原因を切り分ける
といった点がポイントになります。
※自動アップデート機能前のWordpressやMYSQLのバージョンが4のサイトは、簡単にはアップデートができないため、専門のエンジニアに依頼することをおすすめします。
ユーザーアカウントの設定
ユーザーアカウントの情報が類推されやすいと、ブルートフォースアタックなどに対して弱く、サイトが乗っ取られやすくなります。
新規インストールでは、本体側で配慮されていますが、特に古いWordpressをバージョンアップして使っている場合は必ず、アカウント設定の見直しをするようにしましょう。
「admin」のアカウントを削除
最新のWordpressでは、新規インストールの際に、ユーザー名を任意で入力するようになっています。
しかし、古いWordpressでは、あらかじめ「admin」がユーザー名に入力されているため、そのまま登録をするユーザーが多くクラックされやすくなります。
設定済みのユーザー名は変更できないので新たに管理者権限のユーザーを作り、そのユーザーでログイン後、adminユーザーのアカウントを削除する という方法で対応が可能です。
「ブログ上の表示名」を必ず変えよう
プロフィール画面で「ブログ上の表示名」があるのですが、何もしない状態だと、ユーザー名と同じになります。
テーマによっては、「ブログ上の表示名」を表示するテーマもあるため、必ず変更するようにしましょう。
変更のやり方は、ニックネームの欄に別名を入力すると、「ブログ上の表示名」の選択肢が増えますので、表示名にニックネームを選択します。
パスワードを複雑にしよう
「12345」や「abcde」とまではいかないものの、単純なパスワードを使っている方も多いため、大小英字と数字を使って8桁以上のパスワードにするようにしましょう。
おすすめは自動生成のパスワードです。
最新のWordpressはパスワード生成機能が標準で実装されていますが、下記ようなサイトで生成するのもおすすめです。
http://www.graviness.com/temp/pw_creator/
javaScript(クライアント側)で生成されていて、擬似乱数生成にメルセンヌ・ツイスタを使用しています。
おすすめのセキュリティプラグイン「Acunetix WP Security」
本体側でのセキュリティの基本的が終わればあとは、プラグインで強化しましょう。
まずは、一通りのセキュリテイ対策と脆弱性チェックができるWordPressプラグイン「Acunetix WP Security」を入れましょう。
https://wordpress.org/plugins/wp-security-scan/
上記サイトからダウンロードし、インストール、有効化すると管理画面のサイドメニューにWP Securityというメニューが表示されますのでDashboardをクリックして脆弱性チェックの結果を見てみましょう。
赤い項目が、脆弱性が高い項目で、黄色が注意の項目、緑が対策されている項目になります。
ちょっと前のバージョンのWordpressでデフォルトだと5,6個は赤いマークがあるはずです。
サイドメニューのサブメニューからSettingsをクリックすると設定項目一覧になります。
一番下の「 Enable Live Traffic tool.」をONにすると、サーバに負荷がかなりかかり、サーバやテーマによっては表示が非常に遅くなることがあるため、「Enable Live Traffic tool.」以外をONにするのがおすすめです。
プラグインやWordpress本体のアップデートをしっかり行った上でSettingsを変更すれば、Dashboardに戻ると、このようにほとんどが緑か黄色になっているはずです。
上記の場合、残りの黄色は、運用の手間を考えるとサーバ側の設定でIP制限などをしたほうがいいので、初心者向けの基本のセキュリティとしてはそのままでもよいでしょう。
おすすめのセキュリティプラグイン「SiteGuard WP Plugin」
海外製のプラグインが多い中、日本製のプラグインのSiteGuard WP Pluginもおすすめです。
https://wordpress.org/plugins/siteguard/
特にブルートフォースアタックに対しての対策がかなり強化できます。
http://www.jp-secure.com/cont/products/siteguard_wp_plugin/index.html
細かい内容は、日本語の公式サイトに詳しく説明がありますが、アクセスが何十万PVではないサイトであれば、下記のような設定で十分かと思います。
- ログインページ変更→任意のURLに変更してON
- 画像認証→英数字でON
- ログイン詳細エラーメッセージの無効化をON
- ログインロックを期間5秒、回数3回、ロック時間1分でON
- ログインアラートをON
- ピンバック無効化をON
- 更新通知をON
余力があればプラスアルファでやりたいセキュリティ対策
ここまでいかがだったでしょうか?
4つの対策はいずれも管理画面からの操作のみでできるため、15分から30分程度で対応できるわりには効果的なセキュリティ対策と言えます。
さらにセキュリティを強化したい場合は、
- wp-config.phpのパーミッションを強化する
- インストール時のDBの接頭語を変更する
- ログインの際にBASIC認証等をかける
- FTPのアクセス制限
など、まだまだありますがサーバ側での設定や.htaccessファイルを編集するなど、少しハードルが上がるかと思います。
そのため、まずは4つの対策を行ったうえで、余力があれば徐々にセキュリティ対策を強化していくようにしましょう。