セキュリティ対策一覧 3ページ目
全ての対策を行うのが理想ですが、サイトの運用上、難しい場合には、優先度が高く、難易度が低いものから行うのがオススメです。
一覧 | 対策内容 | 重要度 | 難易度 | ページ |
---|---|---|---|---|
対策1 | パスワードの徹底管理 | ★★★ | ★☆☆ | 1 |
対策2 | 更新の徹底 | ★★★ | ★☆☆ | – |
対策3 | IDを守る | ★★☆ | ★☆☆ | – |
対策4 | ログインURLを守る | ★★★ | ★☆☆ | – |
対策5 | ログインを守る | ★★★ | ★☆☆ | 2 |
対策6 | バーション番号の非表示 | ★☆☆ | ★☆☆ | – |
対策7 | 設定ファイルを守る | ★★★ | ★★☆ | – |
対策8 | 通信データを守るSSL | ★★★ | ★★☆ | – |
対策9 | サイトのデータを守る | ★★★ | ★☆☆ | 3 |
対策10 | ログイン履歴 | ★★☆ | ★☆☆ | – |
対策11 | データベーステーブル接頭辞 | ★★☆ | ★★☆ | – |
対策12 | 利用しないプラグイン・機能の無効化 | ★☆☆ | ★★☆ | – |
【対策9】 サイトのデータを守る WAF
Web Application Firewallの略で、パソコンやネットワークに設定するファイヤーウォールを、Webアプリケーションにも設置するものです。ファイヤーウォールとは、望まない通信を防ぐ防御壁のようなもので、同じような仕組みをWebアプリケーション版に作ったものがWAFです。
WAFの設定手順
1. ConoHa WINGでのWAF設定
2. WordPressアドレス、サイトアクセスの変更
1. 無料プラグイン「Wordfence Security」▶︎ 有効化
2. WordPress管理画面の「Wordfence」 ▶︎「Firewall」をクリック
3. WAFの設定状況を確認 ▶︎ 「Wordfence Firewall Activated」と表示されれば完了
本記事では、レンタルサーバーを用いてWAF設定を行なった場合を紹介します。代表的なレンタルサーバー各社もWAFを導入しているサービスが増えてきました。
私が現在契約しているレンタルサーバー「ConoH WING」は、管理画面でON/OFFを切り替えるだけで有効にすることができます。
WordPressと紐付け後、「サイトセキュリティ」▶︎「WAF 利用設定」をONにするだけ!
【対策10】 ログイン履歴
セキュリティ対策をしていても、していなくても、身に覚えのないログインがないかをチェックすることは必要です。ID・パスワードを入力するWebサービスでは、いつ、どのIDでログインしたか履歴を確認することで不正にログインされていないかを確認できます。
WordPressの初期設定では、ログイン履歴を確認する機能が搭載されていません。そこで、プラグインを利用することで確認できるようになります。本記事では、後者のプラグインを利用した確認方法を紹介します。
1. User Login History:ログイン履歴に機能を絞ったプラグイン
2. SiteGuard WP Plugin:複数機能があるセキュリティプラグイン
プラグインをインストール後 ▶︎ 有効化 ▶︎WordPress管理画面 ▶︎SiteGuard ▶︎ログイン履歴
インストールが完了すると、WordPressの管理画面サイドに「SiteGurad」の設定画面が表示されます。そこから、ログイン履歴をクリックします。下記画像を参照。
ログイン履歴クリックすると、ログインした日時、ログインが成功したか否か、ID、IPアドレス、どのページからログインしたか、という項目が確認できます。
通常、同じ場所で作業をしていると、同じIPアドレスからしかログインされていないはずです。もしも、違うIPアドレスからログインがあった場合には、外出先からログインしたかどうか、外部の業者などがログインしたかどうかなど、時間帯と照らし合わせて確認しましょう。
【対策11】 データベーステーブル接頭辞
WordPressは、投稿データや設定情報をデータベースに保存し、データベースから情報を引き出してサイトを表示する仕組みになっています。データベースを格納する場所を区別するのが接頭辞というもので、wp-config.phpに記載されています。
初期設定の場合「wp_」になり、同じデータベースに複数のWordPressが収容されている場合「wp2_」など、簡単に推測できる接頭辞になっています。
最新バージョンのWordPressではデータベースを攻撃するSQLインジェクションの対策が施されていますが、古いバージョンのWordPressの場合は狙われる脆弱性がありました。また、プラグインいよってもSQLジャンクションが行われる可能性があるため、初期設定ではなく変更しておくのがオススメです。
変更方法
1. phpMyAdminでデータを書き換えwp-config.phpを修正する方法
2. プラグインを使う方法
▶︎ Change Table Prefix:接頭辞を変更する単体プラグイン
▶︎ All In One WP Security & Firewall:多機能なセキュリティプラグイン
本記事では、他の項目でも紹介しているAll In One WP Security & Firewallでの変更方法を紹介します。正直、このプラグインを利用したらほとんどのセキュリティを担ってくれます。
プラグインをインストール後 ▶︎ 有効化 ▶︎ WordPress管理画面 ▶︎ WPセキュリティ
インストールが完了すると、WordPressの管理画面サイドに「WPセキュリティ」の設定画面が表示されます。そこから、「データベースセキュリティ」をクリックします。下記画像を参照。
データセキュリティをクリック後、2つのタブが表示されます。
1つ目は、データベースの接頭辞
2つ目は、データベースのバックアップ
データベースのバックアップは、メッセージの「データベースのバックアップ」もしくは、上部のタブ「データベースのバックアップ」をクリックします。
クリック後、「手動バックアップ」か「自動スケジュールバックアップ」を選択します。
自動スケジュールバックアップは、定期的にバックアップを取る場合なので、今回は触らなくても大丈夫です。
保存先を選択することで、バックアップを行います。
完了すると、ログメッセージに表示されます。
FTPソフトなどでサーバーにアクセスし、ダウンロードすることが可能になります。
データセキュリティをクリック後、上部タブ「データベースの接頭辞」をクリックします。
クリック後、接頭辞変更の画面が表示されます。
ランダムな接頭辞に変更する場合は、下画像の赤枠内の「チェックボックス」にチェックを入れて、「データベース接頭辞を変更」ボタンをクリックします。
任意の希望する接頭辞にする場合は、下画像の赤枠内の「テキストエリア」に希望の接頭辞を入力し、「データベース接頭辞を変更」ボタンをクリックします。
すると、ボタンの下に、進捗状況が表示され、「The database prefix change tasks have been completed.」と表示されれば、変更は完了です。
再度、データベースセキュリティに戻ると、接頭辞が変更されているのが確認できます。
初期設定の「_wp」が変更されているのが分かります。
変更が完了したら、サイトの表示に不具合がないかどうか、確認してみましょう。
不具合が生じていたら、バックアップしたデータベース情報をサーバーに戻せば復旧が可能です。All In One WP Security & Firewallで作成したバックアップファイルを復元する方法は、以下のページの「Restoring the Database from the Backup File」に記載されています。
https://www.tipsandtricks-hq.com/how-to-take-a-database-backup-using-the-all-in-one-wp-security-plugin-6072
復旧方法:英語版のため、日本語訳してます。
1. Webサーバーの管理画面にログイン
2. データベースの項目を探し、phpMyAdminをクリックします。
3. 左側から復元したいデータベースを探します。
4.「構造」タブが表示されていることを確認し、ページの下部までスクロールします。
5.「すべてチェックする」にチェックを入れ、すべてのテーブルを選択された状態にします。(テーブルの色が変わります)
6.「チェックしたものを」と書かれているドロップダウンボックスから「空にする」を選択します。
7. 以下のクエリを本当に実行しますか?と聞かれるので、「はい」をクリックします。
8.「インポート」タブをクリックします。
9.「ファイルを選択」ボタンをクリックします。
10. PCの中に保存した、バックアップファイルをダブルクリックします。
11.「実行」ボタンをクリックします。
【対策12】 利用しないプラグイン・機能の無効化
WordPressはいくつものテンプレートをインストールすることができます。初期設定でも5つ程度の公式テンプレートが既にインストールされています。
使っていないテンプレートも不具合が発見されると更新の通知が届くため、きちんと更新していれば問題は起きません。しかし、脆弱性のあるテンプレートを更新せず放置したまま利用してしまう可能性もあるので、なるべく使わないテンプレートは削除しておきましょう。
テーマの削除方法
テーマにカーソルを当てると「テーマの詳細」ボタンが表示されます。クリックすると、下の画像のように詳細が表示されます。右下に「削除」ボタンがあるのでクリックして完了です。
プラグインも同様に、利用していないものは削除しましょう。更新していない古いバージョンのプラグインを使ってしまうと、脆弱性のある可能性があるだけでなく、サイト全体に不具合を発生させる可能性もあります。
プラグインの削除方法
1. WordPressの管理画面の左メニュー「プラグイン」をクリックします。
2. 利用していないプラグインには、「有効化」と「削除」が表示されます。
3.「削除」をクリックすると自動的に削除されます。
おすすめサーバー
私自身が実際に利用しているサーバーとして、ConoHa WING(コノハウィング)を紹介します。
◆独自ドメインが<最大2個>永久無料になる「WINGパック」
・国内最安値水準の月額880円からご利用できる長期利用割引プラン登場!
・「WINGパック」の契約中は「.com」や「.net」などの独自ドメインが最大2個永久無料で利用可能!
・お申し込み後のプラン変更も自由自在!
圧倒的な速さと安定性を実現
セキュリティ対策も万全
選べる料金タイプ
超お得な特典:独自ドメインが取得可能
▶︎比較した指標
- コストパフォーマンス: SSD容量300GB以上。通信の高速化により業界トップを実現。
- 初期費用と月額費用: 初期費用無料。月額1000円でハイスペックサーバーを実現。
- 機能の有無: WordPressに対応。独自SSLによりセキュリティ強化。