WordPressの運用

納品後のWordPressのセキュリティは どこまで見据えておくべき?!

2018.01.14

危険

WordPressのセキュリティ対策は制作時に制作側である程度行います。しかしセキュアな環境を維持するためには納品後の運営で留意しなければならない点があります。クライアントのリテラシーは一様に高いわけではありませんので、運営時を見据えて制作側がある程度、気を揉んであげる必要があります。

WordPressのセキュリティ対策の考え方

WordPressのセキュリティ対策の基本は悪意ある第三者にログインさせないことと、脆弱性をつかれた攻撃を防ぐために最新をキープすることです。

悪意ある第三者への最大の対策は意識

悪意ある第三者への最大の対策は、運営・制作に関わる人の意識です。例えばブルートフォースアタックと呼ばれる攻撃はパスワードの桁数を増やすことやパスワードをマメに変更することで、かなり防げます。安全な桁数はテクノロジーの進歩に比例しますので、現在安全な桁数だからと言ってこの先もずっと安全とは限りません。

権限による対策

納品後のWordPressのセキュリティ対策で、最も効率的かつスタンダードな施策はユーザーによって権限を変更することです。管理権限を持つユーザーはサイトの全ての操作が可能になります。もし管理権限をもつユーザーがアカウントハッキングに合えば・・・・と思うだけでぞっとします。複数人でサイトを運営する場合、リテラシーや責任に応じて権限を付与するのが妥当でしょう。

権限とできること

各権限でできることをサクッと分けると以下の通り。

管理者 全ての操作が可能
編集者 投稿や固定ページなどコンテンツに関する全ての操作が可能
投稿者 自分の投稿の公開や編集が可能
寄稿者 自分の投稿の下書きと編集が可能
購読者 閲覧のみ可能

自由度と危険度は比例する

WordPressはプラグインを利用することにより、手軽に様々な便利機能を実装することができます。しかし、プラグインの中には直接データベースを編集することが可能なものもあり、取り扱いには十分な注意が必要です。

メニューを非表示にする

WordPressの設定は間違えると管理画面へアクセスすることができなくなる項目があります。前述の通り、取り扱いに注意が必要なプラグインもありますので、なるべくそういった項目にアクセスしてほしくないのが本音です。そのような場面を想定しプラグインや設定など、取り扱いに注意が必要なメニューを非表示にすることにある程度の事故を防ぐことができますが、非表示にするだけでURLを直接入力することによりアクセスすることは可能です。

functions.phpで行う

function remove_menus(){

  remove_menu_page( 'index.php' );                  // ダッシュボード
  remove_menu_page( 'edit.php' );                   // 投稿
  remove_menu_page( 'upload.php' );                 // メディア
  remove_menu_page( 'edit.php?post_type=page' );    // 固定ページ
  remove_menu_page( 'edit-comments.php' );          // コメント
  remove_menu_page( 'themes.php' );                 // 外観
  remove_menu_page( 'plugins.php' );                // プラグイン
  remove_menu_page( 'users.php' );                  // ユーザー
  remove_menu_page( 'tools.php' );                  // ツール
  remove_menu_page( 'options-general.php' );        // 設定

}
add_action( 'admin_menu', 'remove_menus' );

プラグインで実装する

ユーザー毎に表示するメニューを設定できる「User Admin Simplifier」を使えば簡単にメニューの表示・非表示を設定できます。

ツール>User Admin Simplifierで設定ページにアクセスし、ユーザを選択して非表示にするメニュー項目にチェックを入れるだけです。

システムによる対策

BASIC認証

ログインページにBASIC認証をかけることも有効な手段です。

プラグインによる対策

Limit Login Attemptsなどのログイン試行回数を制限することも、有効な手段です。Limit Login Attemptsはユーザー単位でなくIPアドレス単位でロックされますので、正規ユーザーへの影響はありません。

最新のシステムを維持する

WordPressやプラグインのバージョンを常に最新にしておきます。これによりWordpressやプラグインの脆弱性を狙った攻撃を防ぐことができます。

完全に安全なシステムは存在しないが・・・

完全に安全なシステムなんてものは存在しません。かといって何の対策も行わないのは論外です。しかし技術者無しで、できる対策には限界があります。これを言ってしまうと元も子もありませんが、なるべくなら保守契約を行っていただくことが納品後一番の施策だと思います。

WEBSITE DESIGN REQUEST

ホームページ制作依頼について

W・D・Sでホームページ制作をご希望の方はお気軽にご相談ください。
制作内容、ご予算、納期をお知らせいただくとスムーズです。

ホームページ制作を相談する