WordPressでブログ立ち上げたけど、初心者でもできる最低限のセキュリティ対策はしておきたい。
今日なこんな悩みを解消したいと思います。
WordPressを使っている人は多いと思いますが、意外とセキュリティの対策は甘かったりします。
例えば、誰でも管理画面のログイン画面にアクセスできたり…セキュリティがガバガバですよね。
何も起こらないからいい、ではなく何か起こってからでは遅い、といった気持ちが大事で、セキュリティ対策は必ずしておくべきです。
この記事を読んでしっかりセキュリティ対策を行い、WordPressライフを楽しみましょう。
【4つでOK】最低限やっておきたいWordPressのセキュリティ対策
最低限やっておきたいWordPressのセキュリティ対策は、
- ログインパスワードは強固なものにする
- 管理画面にアクセス制限をかける(Basic認証)
- WordPressバージョンは常に最新状態にしておく
- テーマおよびプラグインは常に最新状態にしておく
この4つです。
4つだけ?と思うかもしれませんが、これだけでも十分な対策となります。
この4つ以外の対策についても、この記事の『番外編』に記載しておりますので、是非参考にしてみてください。
では、1つずつ見ていきましょう。
その①:ログインパスワードは強固なものにする
まず、管理画面にログインするアカウントのパスワードを強固なものにしましょう。
使用する文字の種類 | 4文字の場合 | 6文字の場合 | 8文字の場合 | 10文字の場合 |
---|---|---|---|---|
英字(大文字、小文字区別しない) | 約3秒 | 約37分 | 約17日 | 約32年 |
英字(大文字、小文字区別)+数字 | 約2分 | 約5日 | 約50年 | 約20万年 |
英字(大文字、小文字区別有)+数字+記号 | 約9分 | 約54日 | 約1千年 | 約1千万年 |
こちらは、すこし古い(2008年)データですが、英字6文字のパスワードの場合、37分で解読されてしまうというデータがあります。
英字6文字だと37分で解読されてしまいますが、10文字にするだけで解読時間が32年となります。
さらに数字や記号を加える事で、より解読時間が長くなりますので、これだけでもセキュリティが高まります。
そのため、
- 定期的にパスワードを変更する
- 辞書にある単語をそのまま使わない
- パスワードの文字数は8文字以上にする
- 「@」や「%」などの記号を混在させる
- 同じパスワードを複数のサービスで使わない
- アルファベットは小文字と大文字の両方を入れる
- 「1234」や「abcd」などの単純な羅列は使わない
これらを意識してパスワードを設定するように心がけましょう。
その②:管理画面にアクセス制限をかける(Basic認証)
WordPressの管理画面に『Basic認証』をかけるのも大事です。
『Basic認証』とは、Webサイトに対して、最も簡易的にアクセス制限をかける事ができる認証の事をいいます。
認証をかけるのって難しいのでは?と思われるかもしれませんが、数行の記述で誰でも簡単にアクセス制限をかける事が可能です。
どのような手順で制限をかけるのか、説明致します。
ステップ①:IDとPasswordの文字列作成
まず、認証するためのIDとPasswordの文字列を作成します。
作成方法はいくつかありますが、たとえばこのサイトから文字列を作成します。
試しにIDを『test』、Passwordも『test』にすると、以下のような文字列が生成されます。
test:08DJIqk5ZmDVI
ステップ②:.htpasswdファイルの設置
ステップ①で作成された文字列を記載した『.htpasswd』というファイルを設置します。
FTPでWordPressのサーバーに接続し、『wp-config.php』ファイルがある階層に『.htpasswd』というファイルを新しく作り、中身をステップ①で生成された文字列にします。
ステップ③:.htaccessファイルの編集
実際に認証をかけるため、『.htaccess』ファイルを編集します。
『wp-config.php』のファイルがある階層に『.htaccess』というファイルがあり、以下の記述をファイル末尾に追記します。
<Files wp-login.php>
AuthUserFile [.htpasswdが設置してあるディレクトリ]/.htpasswd
AuthGroupFile /dev/nul
AuthName "Admin Access"
AuthType Basic
Require valid-user
</Files>
".htpasswdが設置してあるディレクトリ"については、『.htpasswd』を設置したディレクトリに、
<?php
echo __DIR__;
?>
このような記述をしたファイルを追加します。(例えばtest.phpとします。)
このファイルにアクセスすると、".htpasswdが設置してあるディレクトリ"が確認できます。
ステップ④:アクセス確認
ステップ①〜③で正常に『Basic認証』が設定されているか、実際に管理画面にアクセスして確認してみましょう。
もし、管理画面に『Basic認証』がかかっていない or 管理画面以外にも『Basic認証』がかかっている、場合は『.htaccess』の記述を元に戻して原因を調査しましょう。
その③:WordPressバージョンは常に最新状態にしておく
WordPressの本体バージョンも常に最新状態にしておく事が大事です。
新しい機能が追加になる事はもちろんですが、ほとんどは不具合(バグ)や脆弱性の改善のため、WordPress本体がアップデートされます。
そのため、WordPress本体のアップデートがある場合は、できるだけ早めに更新を行った方がいいでしょう。
ただしメジャーアップデートには注意が必要
WordPressのアップデートにはいくつか種類があります。
マイナーアップデートは特に設定していなければ自動で更新されますが、メジャーアップデートは管理画面から手動での更新となります。
ここで注意が必要なのが、メジャーアップデートの更新は少し様子みた方がいいといった点です。
最初に、できるだけ早めに更新を行った方がいいとお伝えしましたが、メジャーアップデートは基本的にWordPress自体に大きな変更が行われます。
この大きな変更によって、不具合(例えば利用しているプラグインが使えなくなったり、その影響でWordPressサイトが表示できなくなる)や脆弱性のリスクも少なからずあるためです。
そのため、メジャーアップデートの更新については、その後にあるマイナーアップデートがあるまで待った方がいいとされています。
その④:テーマおよびプラグインは常に最新状態にしておく
テーマやプラグインも常に最新状態にしておく事が大事です。
WordPressの本体バージョンと同様に、できるだけ早めに更新を行った方がいいでしょう。
【番外編】さらにやっておくといいセキュリティ対策
最低限やっておきたいセキュリティ対策を紹介しましたが、番外編でさらにやっておくいいセキュリティ対策を紹介します。
- HTTPS環境にする(SSL導入)
- 管理画面にIPアドレス制限を入れる
- プラグインでセキュリティ対策を入れる
その①:HTTPS環境にする(SSL導入)
WordPressサイトにSSLを入れる事ができれば、極力入れておいた方がいいでしょう。
レンタルサーバー側でSSLを提供しているところもありますので、詳しくはWordPressを設置しているレンタルサーバーへお問い合わせください。
その②:管理画面にIPアドレス制限を入れる
固定IPアドレスを持っている人は、管理画面にIPアドレス制限を入れるのもいいでしょう。
設定は簡単で、『.htaccess』の末尾に、
<Files wp-login.php>
Require ip [固定IPアドレス]
</Files>
このように追加するだけで、管理画面に対しIPアドレス制限がかけられます。
パスワードをより強固にする事も大事ですが、IP制限をかける事によって、さらに管理画面に関してのセキュリティ対策はより強力になります。
その③:プラグインでセキュリティ対策を入れる
僕はあまりプラグインには頼りたくはないのですが、便利なプラグインはたくさんあります。
その中でも、
- 二段認証(『Two-Factor』や『Two Factor Authentication』など)
- 管理画面全般のセキュリティ対策(『SiteGuard WP Plugin』など)
この辺りのセキュリティ対策のプラグインは入れておいてもいいかもしれません。
まとめ
最低限やっておきたいWordPressのセキュリティ対策を紹介させて頂きました。
どの内容も簡単ですぐに行える対策ですが、わりと大きめなWordPressのサイトでもセキュリティ対策があまいところが多々あります。
何かあってからでは遅いので、最低限でもこの記事にある対策は行うようにしましょう。
最後まで読んでいただきありがとうございました!