3/20 被リンクサービスリスト更新 新たに1サイトを追加

セキュリティプラグイン「XO Security」の導入と設定方法

セキュリティプラグイン「XO Security」の導入と設定方法

ブログのセキュリティ対策してますか?

WordPressはバニラ(標準)だとセキュリティが脆弱なので、ハッキングの対象になることも珍しくありません。私も先日ハッキングされそうになって、非常に焦りました。(勘違いでしたが)

そこで、今回はセキュリティを強化するプラグイン「XO Security」を紹介します。大切な資産サイトを守るために、しっかりとセキュリティを強化しましょう。

目次

XO Securityとは

XO SecurityはWordPressのセキュリティを強化するプラグインです。”使いやすくて高機能”なのが特徴となっています。

主な機能

サイト運営者にとって最も怖いのが、サイトの乗っ取り。XO Securityはそんなサイトの乗っ取りを防ぐ「不正ログイン防止」の機能が多く搭載されています。

  • ログイン機能を強化
    • ログイン失敗時の遅延・ブロック
    • ログインページの変更
    • その他、CAPTCHAや通知機能の追加など
  • スパムコメントの防止
    • 外国語の入力禁止
    • CAPTCHAの追加
    • botの排除アクション
  • ブルートフォース攻撃・DDoS攻撃のリスク低減
    • XML-RPCやREST APIの無効化
  • ハッキングの手助けとなる情報を隠す
    • ユーザー名の変更
    • RSSの廃止
    • WordPressのバージョン情報の隠匿
  • ログイン履歴の保存
    • 任意の期間失敗・成功したログインログを保存
    • ハッキングされたと勘違いした時にも非常に便利です

見ての通り、個人でできるセキュリティ対策としては十分な機能が揃っています。各機能をON/OFFで簡単に切り替えられるのも魅力ですね。

他プラグインより使いやすい

XO Securityは石鷹さん( @xakuro_com) が開発した国産のプラグインです。もちろん言語も日本語で、日本人が使いやすい設計となっています。

セキュリティ系のプラグインといえば「All In One WP Security & Firewall」なども有名ですが、XO Securityの方が設定が分かりやすくシンプル。また、何度か脆弱性が見つかったりしているのも気になります。
※参考:All In One WP Security 4.4.10で脆弱性が発見される

ちなみに、WordPressに標準装備されている「Akismet Anti-Spam」の無料版は商用利用不可です。機能としても、コメントのスパム対策だけなので、まだ入れている人は削除しちゃいましょう。


XO Securityの導入方法

それではXO Securityの導入方法を解説していきます。まずはプラグインの導入から。

管理画面のプラグインから「新規追加」をクリック。”XO Security”で検索して、下図のプラグインをインストール・有効化しましょう。

XO Securityのインストール
暗赤色の盾が目印

見つからない方はWordPress公式ページからzip形式のファイルを入手して、手動でアップロードしましょう。


XO Securityの設定方法

プラグインを有効化したら、次は初期設定を行っていきましょう。設定を済ませないとXO Securityは全く仕事をしてくれません。

管理画面の 「設定」>「XO Security」をクリックして、設定ページへと進みましょう。

XO Securityの設定ページへのリンク

ここからは各項目(タブ)ごとに解説していきます。

ステータス

ステータスタブでは機能のON/OFFが確認できます。

XO Securityの設定のステータス

最初は「ログインログ記録」しかチェックが入っていませんが、設定していけば他の項目もチェックが入ります。設定が終わった後にまた確認しましょう。

ログイン

「ログイン」のタブではWordPressのログイン時の設定ができます。

ログイン

XO Securityのログイン設定
試行回数制限ログインの試行回数(リトライ回数)の設定
自分が入力ミスすることも考慮して、できる範囲で強固な設定にしましょう
おすすめは「12時間の間に5回」ぐらい
ブロック時の応答遅延ログインをブロックした際の応答遅延時間
最大の120秒に設定しましょう
失敗時の応答遅延ログインに失敗した時の応答遅延時間
長く設定することで連続での入力が防げます
最大の10秒に設定しましょう
ログインページの変更ログインページを「/wp-login.php」から変更できます
ONにして自分しか知り得ないURLに設定しましょう(変更時には表示されたURLを必ずブックマークしておくこと)
基本的にはランダムな文字列を混ぜるのがおすすめです
ログインIDの種類ログインIDに使用するパラメーターを設定できます
メールアドレスはお問い合わせなどから露呈しやすいので「ユーザー名のみ」に設定しましょう
ログインエラーメッセージログインに失敗した際のエラーメッセージを変更できます
デフォルトではログイン失敗時に何を間違えたか表示されてしまうので、「簡略化」に変更しましょう

「ログインエラーメッセージ」はデフォルトでは以下のようになっています。

WordPressのログイン時のエラーメッセージ
ユーザー名の入力ミスだとバレてしまう

メッセージからユーザー名が推測されやすくなるため、「簡略化」に設定しましょう。

ログインフォーム・ログインアラート

XO Securityのログインフォームの設定
CAPTCHAログインフォームに文字入力のアクションを追加します
日本人しか分からず、入力しやすい「ひらがな」がおすすめです
パスワードリセットリンクパスワードを忘れた際に使用するリセットのリンクの有無
万が一に備えて「有効」のままにしておきましょう
サイトへ移動リンクトップページへのリンクの有無
あれば便利なのでデフォルトのままで(セキュリティ上はどちらでも構いません)
ログインアラート誰がいつログインしたかをメールで通知します
普段からログインしたままにする人はONにしておきましょう(毎回律義にログインする人はメールが鬱陶しいのでOFF)

ログインについての設定は以上です。
自動保存はされないので、タブを移動する前には必ず変更を保存をクリックしましょう。

コメント

「コメント」のタブでは、スパムコメントを防ぐ機能が追加できます。コメントフォームを使用していない場合、設定の必要はありません。

XO Securityのコメントの設定
CAPTCHAコメント送信前に文字入力のアクションを追加します
追加する場合は「ひらがな」がオススメ
スパム保護フィルター外国語だけのコメントをブロックします
海外からのスパムコメントが多い場合はONにしましょう
スパムコメントスパム判定されたコメントの処理方法
ゴミ箱に入れておくこともできますが、残しておく意味もないので「ブロックする」で問題ありません
ボット保護チェックボックス「私はロボットではありません」の確認フォームが表示されます
botによるスパムを多少は軽減できるので、ONにしておくといいでしょう

あまりガチガチに設定してもユーザが不便になるので、現在のスパム率を考慮に入れて設定しましょう。

XML-RPC

XML-RPCとは、xml形式のデータを利用する通信プロトコルの一種です。スマホでWordPressを扱う場合などに利用します。

XO SecurityのXML-RPCの設定
XML-RPCの無効化スマホによるアプリの利用やリモート機能を用いたプラグインを使用していないなら、無効化するのがオススメです
無効化することで、ブルートフォース攻撃(総当たり攻撃)のリスクを減らせます
XML-RPC ピンバックの無効化ピンバックを利用していないなら無効しましょう
無効化することで、不正なピンバックの大量送信(DDoS攻撃)を防ぐことができます
※ピンバック:自分のURLが貼られた際に通知するWordPressの機能

XML-RPCを無効化するかどうかは、意見が分かれるところです。今後利用する可能性もあるので、よく分からない場合は無効化しないでおくのが良いでしょう。

ピンバックに関しては無効化しておいても弊害はないと思います。ピンバックは、相手がトラックバックをオンにしていないと機能しないため、現在は利用者がほぼいないオワコン機能と化しています。

よく分からない場合は両方そのままでも大丈夫です

REST API

REST APIは外部との通信を行うための機能です。
REST APIを使用するプラグインもあるので、設定は慎重に行いましょう。(飛ばしてもヨシ)

REST APIを無効化するとプラグイン「Redirection」でエラーが発生するのを確認しています。REST APIのセキュリティ対策は優先度が低めなので、弄るのが怖い方はデフォルトのままにしておきましょう。

XO SecurityのREST APIの設定
REST APIの無効化REST APIの中から不要な機能を選択して無効化できます
ユーザー名を隠すことにも利用できますが、ONにして実際に問題が起きたので、そのまま(OFF)でいいでしょう
REST API URLの変更REST API URLを変更できます( “https://ドメイン/wp-json/wp/posts?_embed” でアクセスできなくする )
デフォルトのままで大丈夫です

秘匿

「秘匿」のタブでは、デフォルトで公開されているWordPressの情報(ユーザー名・RSS・バージョン)を隠すように設定できます。

XO Securityの秘匿設定
投稿者スラッグの編集管理画面のプロフィール設定にスラッグの変更フォームが追加されます
ONにしておきましょう
※スラッグ:アーカイブのURLに使用される名前
投稿者アーカイブの無効化投稿者アーカイブ自体を無効化(削除)することができます
1人でサイトを運営している場合はONにしても良いでしょう
(私はSEO SIMPLE PACKで無効化しているのでOFFにしています)
コメント投稿者クラスの削除コメントに表示されるユーザー名を削除します
コメントで返信などを行う場合はONにしておきましょう
RSS/Atom フィードの無効化RSSフィードを無効化します
ONにすることでコピペ対策などにもなりますが、ブログランキングなどに更新が反映されなくなります
RSSを利用しているか分からない場合は、デフォルトのままにしておきましょう
バージョン情報の削除ソースコードからWordPressのバージョン情報を削除します
バージョンを表示するメリットもあまり考えられないのでONにしましょう

投稿者スラッグを変更する

「投稿者スラッグの編集」をONにすると、プロフィール設定に「スラッグ」という項目が追加されます。

ここで設定したフレーズがそのままアーカイブページのURLなどに使用されるので、ユーザーIDとは関係のないものに変更しましょう。

ユーザーIDを隠す方法でも解説していますが、投稿者アーカイブを無効化せず投稿者スラッグもそのままだと、ユーザーIDがまる見えなので注意しましょう。

投稿者ページのURLに移動する
投稿者アーカイブに移動すると
投稿者スラッグが表示されたURL
ユーザーIDが末尾に表示される

環境

「環境」では、ログイン時のログ(記録)に関する設定が行えます。

XO Securityの環境設定
IPアドレス取得方法IPアドレスの取得方法を変更できます
「自動」に設定しておけば問題ありません
(ログインログの)自動削除設定した期日より前のログインログを削除します
好みにもよりますが、「30日以前」ぐらいで大丈夫でしょう
デフォルトで表示する結果ログインログの画面で最初に表示される項目です
よく確認するのは不正ログインの痕跡なので、「失敗」に変更しておくのがおすすめです

ログインログの確認方法

ログインログは管理画面の「ユーザー」>「ログインログ」から確認できます。

XO Securityのログインログへのリンク

最初は「デフォルトで表示する結果」で設定した項目が表示されますが、画面上のプルダウンから他の項目を選択して表示することも可能です。「ハッキングされたかも?」と思ったら、まずここを見ましょう。

XO Securityのログインログ

設定を確認

最後に設定した項目がちゃんと機能しているかを、「ステータス」で確認しましょう。

XO Securityの設定後のステータス画面
チェックが入っている項目は正しく機能しています

設定は以上です!

設定したのにチェックが入ってない時は

設定を変更後は必ず変更を保存をクリックする必要があります。ボタンをクリックせずにタブを移動すると変更が破棄されてしまいます。

割とよくやりがちなミスなので変更後は「ステータス」タブでの再確認をお忘れなく。


トラブルシューティング

XO Securityを使用して発生することがある問題と対処法を、簡単に解説します。

ログインできなくなった時の対処法

管理画面にログインできなくなった時は、XO Securityを手動で無効化してみましょう。

サーバーのファイルマネージャーかFTPソフトを使って、プラグインのフォルダ名を変更します。これで一時的にプラグインを無効化された状態になります。

ちなみに、プラグインのフォルダはwp-contentの中にあります。WordPressのインストール先によって異なりますが、基本的には以下のような階層にあるはずです。

例: /ドメイン/public_html/wp-content/plugins/xo-security

XO Securityの手動で無効化する

XO Securityを無効化できたら、ログインページに入れるようになっているはずです。(ログインページのURLは無効化前と同じ)

XO Securityを無効化した後のWordPressのログイン画面

ログインに成功したら、XO Securityの名前を元に戻して有効化しなおしましょう。


まとめ

ブログ運営で最も疎かにされがちなのが「セキュリティ強化」です。
油断していると足元をすくわれるのがこの世の常。自分は大丈夫だからと思わずに、できる限りの対策をしていきましょう。

また、他にも”これだけは必須”なプラグインを、使いやすさ重視でまとめています。よろしければ参考にしてください。

目次
目次
閉じる