ワードプレス(WordPress)のセキュリティ対策プラグイン Solid Securityの設定方法と使い方を解説します。
- Solid Security の使い方と詳細な設定方法がわかります
Solid Securityで実現できること
Solid Security(旧 iThemes Security)は無料版と有料版があります。
有料版は様々なサイバー攻撃を防ぐWAF機能の自動処理、reCAPTCHAを使ったスパム防止機能などが利用できます。
無料版でもWordpressのログイン画面に2段階認証(2要素認証)を設けて不正ログインを防いだり、ログインURLを任意の文字列に変更することができます。
他にも、セキュリティスキャンでWebサイト(ブログ)で使用しているプラグインなどの脆弱性やマルウェア感染を確認できたり、改竄された可能性のあるファイルを検出することもできます。
アメリカにあるLiquid WebというWebホスティング会社が手掛けているSolidWP (旧名 iThemes)ブランドのプラグインなので、設定画面に英語表記が多く、機能の詳細がやや難解な点があります。
iThemes SecurityからSolid Securityに名称変更
以前はiThemes Securityという名称のプラグインでしたが、現在はSolid Securityという名称に変更されています。
Solid Securityの主な機能
Solid Security 無料版の主な機能は次の通りです。
- ログインURL変更:ログインURLの末尾をランダムな数値または任意の文字列に変更
- 2段階認証:ログイン時にメールアドレス宛にワンタイムパスワードを送信
- XMLRPC 無効:スマホから記事の編集などができる機能を停止し、DDoS攻撃を防止
- REST API 無効:ログインユーザー名の流出を防止
これらの機能の詳細と設定方法は後述しています。
アメリカのレンタルサーバー会社が手掛けている、セキュリティ対策用プラグインなので機能が多く、Webの知識が必要です。
プラグインから送信される通知メールの本文は英語表記なので敷居が高いです。
個人ブログにはややオーバースペックで、使い難い面があります。
Webセキュリティの知識がないと導入難易度の高いプラグインです。
Solid Securityの推奨機能とオンラインマニュアル
Solid Securityの公式サイトに推奨機能と高度な機能の説明が載っています。
英語ですが日本語に翻訳すれば理解できる内容です。
Solid Securityの各機能の説明とQ&Aサイトのリンクです↓
https://help.solidwp.com/hc/en-us/categories/200147050-iThemes-Security
推奨機能のリンクはこちらです↓
強固なセキュリティの推奨機能
Solid Securityのインストール方法
Solid Security プラグインをWordPressにインストールする方法を解説します。
- WordPressのダッシュボード(管理者画面)の「プラグイン」をクリックします
- 「新規プラグインを追加」をクリックします
- 検索ボックスに”Solid Security ”と入力すると下に検索結果が表示されます
- ”Solid Security~”の「今すぐインストール」ボタンをクリックします
↑Solid Security のインストールが完了すると有効化ボタンが表示されるのでクリックします。
これでSolid Security のインストールと有効化は完了です。
Solid Securityの設定
Solid Securityプラグインを有効化するとダッシュボード(管理画面)の設定の中に「セキュリティ」が表示されます↓
Solid Securityプラグインの設定画面はダッシュボード(管理画面)の設定の中の「セキュリティ」をクリックします。
初期設定
↑最初に初期設定画面が表示されるので、画面の案内に沿って進めていきます。この初期設定のトップ画面だけ英語表記だったので日本語に翻訳した画像を載せています。
Webサイトの用途を選択します。
個人ブログの場合はブログを選択します。
↑セキュリティチェックプロを有効にするか否かを選択します。プロ版は有料なので、次をクリックします。
↑私自身のウェブサイトをクリックします。
↑このパスワードポリシー適用をONにしても既存のWordPressアカウントには適用されません。一人で編集することの多い個人ブログの場合は効果が薄いので、ON(適用)せずに、そのままの状態で次をクリックします。
↑許可するIPアドレスリスト(ホワイトリスト)を入力します。
固定IPや会社の場合は入力しても良いのですが、個人(家)の場合はプロバイダから割り当てられるIPアドレスは変わるので、何も入力しないで次をクリックします。
↑WordPressへのログイン時に2段階認証を設定できます。
ON/OFFどちらかを選択して次をクリックします。
↑ファイアウォールの各機能のオンとオフを選択できます。
デフォルトですべて有効になっているので、そのままの状態で次をクリックします。
↑サイトのセキュリティチェックを自動でするか否かを選択できます。
ページスピードにも影響する可能性があるので無効がおすすめです。
デフォルトで無効になっているので、そのままの状態で次をクリックします。
↑プロは有料版なので、デフォルトの状態で次をクリックします。
↑ユーザーグループ毎で異なるセキュリティ設定をすることができる機能です。
デフォルトのユーザーグループをクリックします。
↑個人ブログかつ、1人でWordPressを編集する場合は管理者ユーザーしか利用しないので、この管理者の機能だけ設定すればOKです。
当設定は既存のユーザーには適用されないので、デフォルトのままで次をクリックします。
↑機能タブの隣をクリックすると表示される、グループ編集画面です。
デフォルトのままで次をクリックします。
↑WordPressに既に設定しているメールアドレス宛に通知を送りたい場合は、デフォルトの空欄のままセットアップを完了するをクリックします。
Solid Securityの詳細設定
Solid Securityには下記の9項目あります。
- ダッシュボード:
Webサイトのセキュリティ状況を一覧表示 - Site Scans:
Webサイトのセキュリティスキャン実施と結果を表示 - Firewall:
ファイアウォール機能でのブロック状況とログを表示 - Vulnerabilites(脆弱性):
脆弱性スキャンを実施 - User Security:
WordPressユーザーのセキュリティ設定と状況を表示 - 設定:
∟全体設定:ログイン失敗時のロックアウト時間、メッセージなどを設定
∟機能:2段階認証、ファイアウォール、サイトチェックなどの設定
∟ユーザーグループ:WordPressユーザーグループ毎の設定
∟通知:Solid Securityから送信される電子メール通知の宛先や送信内容を設定
∟高度な設定: - ツール:
レンタルサーバー側のIPアドレス、WordPressユーザーのID変更、
データベーステーブルの接頭辞の変更、ファイルのアクセス権を確認等 - ログ:
WordPressへのログイン状況を表示 - セキュリティ強化:
有料版案内
タイトルは日本語ですが、詳細説明は英語になっているページが多いです。
なので、以降はすべて日本語に翻訳した画像を載せています。
ダッシュボード
↑Webサイト(ブログ)の状況が表示されます。確認のみで操作はできません。
Site Scans
↑この画面からサイトスキャンを実施できます。
WordPressのプラグイン、テーマ、2段階認証、パスワードなどをスキャンして、セキュリティに問題がないかチェックしてくれます。
Firewall
↑ファイアウォール機能の設定や適用ルール、自動化(有料版のみ)をすることができます。かなり細かなルールを設定できます。
- ログ:ファイアウォール機能のブロック状況とログを表示
- ルール:ファイアウォールのルール(拒否や許可、アクション)を設定
- 知的財産管理:許可と拒否のIPアドレスリストを管理
- 設定:全体設定、禁止ユーザー、ファイアウォールエンジン、ローカルブルートフォース保護、ネットワークブルートフォース保護
- 自動化:ファイアウォールの自動処理※有料版の機能
Vulnerabilites(脆弱性)
↑Webサイト(ブログ)の脆弱性をスキャンして見つけてくれます。
User Security
↑WordPressユーザーのセキュリティ状況が表示されます。
設定
設定は下記の5つの項目に分かれています。
初期設定で実施したのと同じ設定項目です。
- 全体設定
- 機能
- ユーザーグループ
- 通知
- 高度な設定
全体設定
↑画像をクリックすると拡大できます。
ログイン失敗時のロックアウト時間、メッセージ内容、許可IPアドレスなどを設定します。
機能
↑画像をクリックすると拡大できます。
ログインセキュリテでは、2段階認証の設定ができます。
↑画像をクリックすると拡大できます。
ファイアウォールの機能毎のONとOFFが設定できます。
↑画像をクリックすると拡大できます。
ファイル変更監視と1日2回の自動サイトスキャンのONとOFFが設定できます。
↑画像をクリックすると拡大できます。
WordPressのデータベースバックアップの方法(メール、ローカル保存)テーブル指定や除外設定ができます。
ユーザーグループ
↑画像をクリックすると拡大できます。
WordPressユーザーの役割毎のセキュリティ設定ができます。
通知
通知の配下には更に下記8項目に分かれています。
- セキュリティダイジェスト
- サイトのロックアウト
- データベースバックアップ
- バックエンドを非表示-新しいログインURL
- サイトスキャン結果
- 2要素メール
- 2要素メール確認
- 2要素リマインダー通知
2要素は2段階認証のことです。
高度な設定
↑WordPressのシステムファイルの保護やディレクトリ参照無効、PHPの実行無効を設定できます。デフォルトですべて有効になっています。
↑XML-RPCとREST APIの無効化を設定できます。デフォルトだとXML-RPCは有効化されているので、無効化することをおすすします。
REST APIもデフォルトでは制限が掛かっていない状態なので、”アクセス制限”に変更することをおすすめします。
WordPressのログインURLを任意の文字列に変更できます。
推測や特定され難い文字列に変更することをおすすめします。
↑ボットを使った総当たりのパスワードアタックに効果を発揮する機能です。
期間と回数は組み合わせて考える必要があります。
例えばデフォルト(初期設定)だと「期間:5秒、回数:3回、ロック時間:1分」となっています。
これは、「5秒間で3回ログインに失敗した場合1分間ログインできない状態にする」という意味です。
とくに、期間の値が重要で、設定した範囲に収まらない場合はロックが発動しません。
なので、30秒以上の遅い攻撃に対しては効果がありません。
それと、同じIPアドレスからというのが発動条件なので、異なるIPアドレスを複数使った攻撃は防ぐことができません。
ツール
↑画像をクリックすると拡大できます。
レンタルサーバーのIPアドレスや、データベースのテーブル名の先頭文字を変更してSQLで検索されないようにできる便利なツールが使えます。
ログ
↑ログイン履歴が確認できます。
画像ではスキャンエラーが出ています。
これは、レンタルサーバーのエックスサーバ側のWAF機能「REST API アクセス制限」を有効にしているのが原因です。
このGoogle Safe Browsing APIを使った定期的なサイトスキャナの度に「Scheduled site scan resulted in an error」というタイトルで「site_verification_failed.connection_error」という内容のエラー通知メールが送られてきます。
レンタルサーバー側のWAFを無効にしたくない場合、Solid Securityの設定→機能→サイトチェック→サイトスキャンのスケジュール設定(Site Scan Scheduling)をオフにすればエラー通知メールを止めることができます。
おすすめの設定
Solid Securityは出来ることが多いのですが、必須の設定はそれほど多くありません。
おすすめ設定は次のとおりです。
- 2段階認証(2要素認証)
- XML-RPCとREST API無効
- ログインURL変更
XML-RPCとREST API無効とログインURL変更は他のセキュリティ対策用プラグインでも搭載されている一般的な機能ですが、2段階認証は本来ならば別途Two-Factorなどの専用プラグインを入れないと導入できない、当プラグインの目玉機能です。
2段階認証の設定方法
WordPress管理画面の “セキュリティ ” → “設定 ” → “機能” → “ログインセキュリティ” の下記項目を変更します。
- “二要素”をONにする
画面右下の保存ボタンをクリック。
2段階認証設定時のWordPressログインの様子
↑2段階認証設定後にWordPressにログインすると、一番最初にこの導入案内画面が表示されますが、以降は表示されません。
実際はすべて英文ですが日本語に翻訳しています。
↑最初は”Eメール”にだけ有効化のリンクボタンが表示されているので、それを押す先に進めます。続くをクリックします。
↑ワンタイムパスワード(ログイン認証コード)の入力画面になるので、ログインユーザーに紐づけされているメールアドレス宛に届いたパスワードを入力します。
↑メールで届いたワンタイムパスワードをコピーしてログイン画面に貼り付けて確認するボタンをクリックします。
↑この画面が表示され完了ボタンをクリックするとWordPressの管理画面に入ることができます。
ログインする度に2段階認証が必要です。
XML-RPCとREST API無効の設定方法
WordPress管理画面の “セキュリティ ” → “設定 ” → “高度な設定” → “WordPressの微調整 ” の下記項目を変更します。
- API アクセスを”XML-RPCを無効化”に変更
- REST APIを”アクセス制限”に変更
画面右下の保存ボタンをクリック。
この2つは初期設定では制限されていないので変更必須です。
ログインURL変更設定
WordPress管理画面の “セキュリティ ” → “設定 ” → “高度な設定” → “バックエンドの非表示” の下記項目を変更します。
URLsのログインのスラッグのテキストボックスに任意の文字列を入力
画面右下の保存ボタンをクリック。
これでhttps://ドメイン名/任意の文字列にアクセスするとWordPressの管理画面にログインできるようになります。
2段階認証を有効にしている場合はワンタイムパスワードの入力も必要になります。
実際にSolid Securityを使った感想とメリットデメリット
実際にSolid Securityを使ってみた感じたメリットとデメリットです。
Solid Securityのメリット
無料版でも必要十分な機能が備わっており、2段階認証も使えるので、別途専用のプラグイン、Two-Factorを使わないで済むことが大きなメリットです。
それと、WordPressの公式プラグイン保管場所からインストールできることや、アメリカのレンタルサーバー会社のセキュリティ対策用プラグインなので安心感があります。
Solid Securityのデメリット
プラグインの設定画面内の大見出しは日本語ですが、説明文は英語なので、ブラウザで自動翻訳すると可笑しな日本語に変換され、意味理解が難解な箇所がある点と、すべての機能の意味を理解するためには公式サイトの英文マニュアルを読む必要があることがデメリットです。
まとめ
Solid Securityは簡単に二段階認証が導入できることが魅力のセキュリティ対策用プラグです。
いっぽう、説明文が英語かつ、Webセキュリティの知識がない場合は導入時の敷居が高くなることがデメリットです。
ある程度のセキュリティ知識がないと混乱が生じ、不安になる可能性が高いため、完全に玄人向けのプラグインです。
他のセキュリティプラグインよりも使いこなすには労力が数倍必要なので、本来であれば個人ブログに導入するプラグインではありません。
Solid Securityはどちらかというと会社のWebサイト向けです。
あまり時間を掛けたくない場合は、もっと短時間で楽に使えるセキュリティプラグインは数多くあるので、そちらを使うことをおすすめします。
もし、二段階認証を導入したくて、どうしてもという場合は当記事に載っている必要最低限の設定項目だけ変更すればOKです。