ブログのセキュリティ対策してますか?
WordPressはバニラ(標準)だとセキュリティが脆弱なので、ハッキングの対象になることも珍しくありません。私も先日ハッキングされそうになって、非常に焦りました。(勘違いでしたが)
そこで、今回はセキュリティを強化するプラグイン「XO Security」を紹介します。大切な資産を守るために、しっかりとセキュリティを強化しましょう。
XO Securityとは
XO SecurityはWordPressのセキュリティを強化するプラグインです。”使いやすくて高機能”なのが特徴となっています。
主な機能
サイト運営者にとって最も怖いのが、サイトの乗っ取り。XO Securityはそんなサイトの乗っ取りを防ぐ「不正ログイン防止」の機能が多く搭載されています。
- ログイン機能を強化
- ログイン失敗時の遅延やブロック
- ログインページの変更
- その他、CAPTCHAや通知機能の追加など
- スパムコメントの防止
- 外国語の入力禁止
- CAPTCHAの追加
- botの排除アクション
- ブルートフォース攻撃・DDoS攻撃のリスク低減
- XML-RPCやREST APIの無効化
- ハッキングの手助けとなる情報を隠す
- ユーザー名やWordPressのバージョン情報
…etc
- ユーザー名やWordPressのバージョン情報
見ての通り、個人でできるセキュリティ対策としては十分な機能が揃っています。
他プラグインより使いやすい
XO Securityは国産のプラグインです。もちろん言語も日本語で、日本人が使いやすい設計となっています。
セキュリティ系のプラグインといえば「All In One WP Security & Firewall」なども有名ですが、XO Securityの方が設定が分かりやすくシンプルです。最終的には好みの問題ですが、長く使うなら使いやすいXO Securityが良いかなと思います。
ちなみに、WordPressに標準装備されている「Akismet Anti-Spam」の無料版は商用利用不可です。機能としても、コメントのスパム対策だけなので、まだ入れている人は削除しちゃいましょう。
XO Securityの導入
それではXO Securityの導入方法を解説していきます。まずはプラグインの導入から。
管理画面のプラグインから「新規追加」をクリック。”XO Security”で検索して、下図のプラグインをインストール・有効化しましょう。
XO Securityの設定方法
プラグインを有効化したら、次は初期設定を行っていきましょう。設定を済ませないとXO Securityは全く仕事をしてくれません。
管理画面の 「設定」>「XO Security」をクリックして、設定ページへと進みましょう。
ここからは各項目(タブ)ごとに開設していきます。
ステータス
ステータスタブでは機能のON/OFFが確認できます。
最初は「ログインログ記録」しかチェックが入っていませんが、設定していけば他の項目もチェックが入ります。設定が終わった後にまた確認しましょう。
ログイン
「ログイン」のタブではWordPressのログイン時の設定ができます。
ログイン
試行回数制限 | ログインの試行回数(リトライ回数)の設定 自分の入力ミスも考慮して、できる範囲で強固な設定にしましょう おすすめは「12時間の間に5回」ぐらい |
---|---|
ブロック時の応答遅延 | ログインをブロックした際の応答遅延時間 最大の120秒に設定しましょう |
失敗時の応答遅延 | ログインに失敗した時の応答遅延時間、連続での入力を防ぎます 最大の10秒に設定しましょう |
ログインページの変更 | ログインページを「/wp-login.php」から変更できます ONにして自分しか知り得ないURLに設定しましょう(変更時にはURLを必ずブックマークしておくこと) |
ログインIDの種類 | ログインIDに使用するパラメーターを設定できます メールアドレスは他の人にもバレやすいため、「ユーザー名のみ」に設定しましょう |
ログインエラーメッセージ | ログインに失敗した際のエラーメッセージを変更できます デフォルトでは、ログイン失敗時に何を間違えたかが表示されてしまうので、「簡略化」に変更しましょう |
「ログインエラーメッセージ」はデフォルトではこのようになっています。メッセージからユーザー名が推測されやすくなるため、「簡略化」に設定しましょう。
ログインフォーム・ログインアラート
CAPTCHA | ログインフォームに文字入力のアクションを追加します 自分が入力しやすい「ひらがな」に設定しましょう |
---|---|
パスワードリセットリンク | パスワードを忘れた際に使用するリセットのリンクの有無 万が一に備えて「有効」のままにしておきましょう |
サイトへ移動リンク | トップページへのリンクの有無 あれば便利なのでデフォルトのままで(セキュリティ上はどちらでも構いません) |
ログインアラート | 誰がいつログインしたかをメールで通知します 万が一に備えてONにしておきましょう |
ログインについての設定は以上です。
自動保存はされないので、タブを移動する前には必ず変更を保存をクリックしましょう。
コメント
「コメント」のタブでは、スパムコメントを防ぐ機能が追加できます。コメントフォームを使用していない場合、設定の必要はありません。
CAPTCHA | コメント送信前に文字入力のアクションを追加します 追加する場合は「ひらがな」がオススメ |
---|---|
スパム保護フィルター | 外国語のコメントをブロックします 海外からのスパムコメントが多い場合に使用しましょう |
スパムコメント | スパムだと判定されたコメントの処理方法 ゴミ箱に入れておくこともできますが、残しておく意味もないので「ブロックする」に設定しましょう |
ボット保護チェックボックス | 「私はロボットではありません」の確認フォームが表示されます |
あまりガチガチに設定してもユーザが不便になるだけです。現在のスパム率を考慮に入れて設定しましょう。
XML-RPC
XML-RPCとは、xml形式のデータを利用する通信プロトコルの一種です。スマホでWordPressを扱う場合などに利用します。
XML-RPCの無効化 | スマホによる利用やリモート機能を用いたプラグインを使用していないなら、無効化するのがオススメです 無効化することで、ブルートフォース攻撃(総当たり攻撃)のリスクを減らせます |
---|---|
XML-RPC ピンバックの無効化 | ピンバック※を利用していないなら無効しましょう 無効化することで、不正なピンバックの大量送信(DDoS攻撃)を防ぐことができます |
XML-RPCを無効化するかどうかは、意見が分かれるところです。今後利用する可能性もあるので、よく分からない場合はONにしておくのも良いでしょう。
ピンバックに関しては無効化しておいても弊害はないと思います。ピンバックは、相手がトラックバックをオンにしていないと機能しないため、現在は利用者がほぼいないオワコンと化しています。
よく分からない場合は両方そのままでも大丈夫です
REST API
REST API(RESTful API)は外部との通信を行うための機能です。色々なプラグインでも利用されているので、設定は慎重に行いましょう。
REST APIの無効化 | REST APIの中から不要な機能だけを無効化できます ユーザー名を隠すために、ONにしてから以下の二つだけチェックしましょう ・/wp/v2/users ・/wp/v2/users/(?P<id>[/d])+ |
---|---|
REST API URLの変更 | REST API URLを変更できます デフォルトのままで大丈夫です |
REST APIのセキュリティ対策は優先度が比較的低めです。弄るのが怖い方はデフォルトのままでもいいと思います。
秘匿
「秘匿」のタブでは、デフォルトで公開されているWordPressの情報(ユーザー名・RSS・バージョン)を隠すように設定できます。
投稿者スラッグの編集 | プロフィール設定にスラッグの変更フォームが追加されます ONにしておきましょう |
---|---|
投稿者アーカイブの無効化 | 投稿者アーカイブを無効化することで、ユーザーIDを隠すことができます 一人でサイトを運営している場合はONにしておくと良いでしょう (私はSEO SIMPLE PACKで無効化しているのでOFFにしています) |
コメント投稿者クラスの削除 | コメントに表示されるユーザー名を削除します コメントで返信などを行う場合はONにしておきましょう |
RSS/Atom フィードの無効化 | RSSフィードを無効化します ブログランキングなどに更新が反映されなくなるため、よく分からない場合はOFFのままにしておきましょう |
バージョン情報の削除 | ソースコードからWordPressのバージョン情報を削除します ONにしましょう |
補足:投稿者スラッグを変更する
「投稿者スラッグの編集」をONにすると、プロフィール設定に「スラッグ」という項目が追加されます。
ここで設定したフレーズがそのままアーカイブページのURLなどに使用されるので、ユーザーIDとは関係のないものに変更しましょう。
ちなみに、投稿者アーカイブを無効化せず投稿者スラッグもそのままだと、ユーザーIDがまる見えです。
環境
「環境」では、ログイン時のログに関する設定が行えます。
IPアドレス取得方法 | IPアドレスの取得方法を変更できます 「自動」に設定しておけば問題ありません |
---|---|
(ログインログの)自動削除 | 削除するログインログを設定できます 1ヵ月ほど保持すれば十分なので、「30日以前」を選択しましょう |
デフォルトで表示する結果 | ログインログの画面で最初に表示される項目です 不正ログインの痕跡を確認することが最も多いので、「失敗」に変更しておきましょう |
ログインログの確認方法
ログインログは管理画面の「ユーザー」>「ログインログ」から確認できます。
最初は「デフォルトで表示する結果」で設定した項目が表示されますが、画面上のプルダウンから他の項目を選択して表示することも可能です。
設定を確認
最後に設定した項目がちゃんと機能しているかを、「ステータス」で確認しましょう。
設定は以上です!
まとめ
ブログ運営で最も疎かにされがちなのが「セキュリティ強化」です。
油断していると足元をすくわれるのがこの世の常。自分は大丈夫だからと思わずに、できる限りの対策をしていきましょう。
また、他にも”これだけは必須”なプラグインを、使いやすさ重視でまとめています。よろしければ参考にしてください。