JavaScript・PHPのサンプルやWordPressのテーマ・無料フォント、アフィリエイトやブログの運営方法等の紹介

WordPressでサイトの改ざんをされない為のセキュリティ対策とFTPアクセス制限


WordPressでサイトの改ざんをされない為のセキュリティ対策とFTPアクセス制限

ある日、Outlook.comにメールが届かなくなってしまいました。
管理しているサイトの一つのドメインなのですが、「failure notice」というタイトルで「MAILER-DAEMON」から「550 OU-001 (BLU004-MC1F35) Unfortunately, messages from [IPアドレス] weren’t sent.」というエラーのメールが返ってきます。

調べてみると、どうやら送信しているメールアドレスのドメインが、迷惑メールとして定義されてしまっているようで、Outlook.comから弾かれてしまっているようです。

迷惑メールの解除は、こちらのサイトで紹介されています。
http://exclam.ti-da.net/e4867608.html

該当のドメインのWEBサイトの改ざんが原因

そもそも、なぜ迷惑メールとして扱われてしまっているのでしょうか。
調べてみると、どうやら該当のドメインのWEBサイトが改ざんされてしまっていたのです。サイトへアクセスすると、ウィルスに感染するようなページへリダイレクトされるようになっていました。その為、このサイト(ドメイン)は危険ということで、迷惑メールとして定義されてしまっているようです。

改ざんされた理由としては、WordPressの古いバージョンが原因ですね。。。
ということで、アップされているファイルを見てみると、改ざんされたらしきファイルがたくさんありました。「wp_redirecter.php」や「〇〇〇_suspect」などという名称のファイルがアップされていたり、既存のファイルが変更されていたり。。。至る所に改ざんされたファイルがあるので、キリがありません。ということで、ファイルを全て削除し、再度、ローカルに保存してあるファイルをアップすることにしました。

全ファイルを削除してバックアップファイルと入れ替え

ローカルにバックアップファイルがない場合には、WordPressの管理画面から、エクスポートも可能です。その際には、「/wp-contents/upload/」にアップされている画像ファイルなどを全てダウンロードしましょう。こちらのディレクトリにも、改ざんされたファイルが仕込まれている可能性がありますので、十分に注意しましょう。

全てのファイルの削除が完了したら、最新のWordPressをアップして設定します。
そして、バックアップファイルをFTPでアップまたはインポートして、入れ替え完了です。また、念のためFTPやデータベースのIDやパスワードは変更しましょう。

WordPressのプラグインでセキュリティ対策

そして、WordPressのセキュリティを高める為に、プラグインなどをインストールします。

SiteGuard WP Pluginでセキュリティの向上

「SiteGuard WP Plugin」は色々なサイトで推奨されている、WordPressのプラグインです。インストールすることで、「自動的にログインページのURLを変更」「ログイン時に画像認証」「ブルートフォース攻撃・リスト攻撃対策」「ログインされた際にお知らせメール」「ピンバック無効化」「更新通知」「WAFのチューニングサポート」など、一通りのセキュリティを向上させることができます。

画像認証がついたログイン画面

また、管理ページにログインを試みた履歴も表示されるので、不正にログインされているかどうかも知ることができるようになっています。

ただ、機能のうちの一つ「管理ページアクセス制限」を有効にしてログインしようとすると、ログインできなくなってしまうことがあります。正常なIDとパスワードを入力しても、またログイン画面に戻ってしまうという現象です。その場合、ログインできなくなってしまったと焦らずに、落ち着きましょう。

解決策は、「管理ページアクセス制限」を使うのをやめ、無効にすることです。
まずは、FTPで「/wp-content/plugins」の中の「siteguard」のディレクトリ名を一時的に「_siteguard」等と変更します。

これで通常のWordPressのログイン画面からログイン出来るようになるので、正常にログイン処理が完了したら、再びFTPで、先ほど変更した「_siteguard」のディレクトリ名を「siteguard」に戻します。そして、更新ボタンを押すと「SiteGuard」の設定メニューが復活するので、設定メニューから「管理ページアクセス制限」を無効にします。これで完了です。

「SiteGuard」を設置すると分かりますが、思っている以上に頻繁に誰かがログインを試みようとしています。もちろん失敗していますが。。。ユーザー名には「admin」やドメイン名等を入力してくるパターンが多いようです。それをふまえると、次に紹介する「Edit Author Slug」で、ユーザー名を隠すことは重要になってきます。

Edit Author Slugでアカウント名を隠す

WordPressを普通に使っていると、投稿者アーカイブにアカウント名(ユーザー名)が使われてしまいます。その場合、あとはパスワードさえ分かればログイン出来てしまう為、セキュリティ上好ましくありません。

そこで「Edit Author Slug」を使うことで、アカウント名(ユーザー名)を表示しないように変更できます。インストールした後、ユーザー設定に移動すると、下の方に「Author Slug」という項目が追加されています。こちらで「Custom」の欄に、表示させたい名称(スラッグ名)を入力して、プロフィールを更新することで、本来のユーザー名を隠すことができます。

.ftpaccessでFTPのアクセス制限

特定のIPアドレスやドメイン名からのみアクセスできるように制限することができます。テキストエディタ等で以下のように記述して、「.ftpaccess.txt」というファイル名で保存します。

<Limit ALL>
Order Allow,Deny
Allow from ***.***.***.***
Deny from all
</Limit>

「***.***.***.***」には、アクセスを許可するIPアドレスが入ります。
自分のIPアドレスは以下のサイトで確認することができます。
https://www.cman.jp/network/support/go_access.cgi

また、ホスト名を指定することも可能なようなのですが、その都度ホスト名の逆引きをすることになる為、サーバーに負荷がかかってしまい、推奨されないようです。基本的にはIPアドレスで指定しましょう。
https://www.rapidsite.jp/support/guide_migration/reference/ftp/e_11320.html

ちなみにWebArenaでは、IPアドレスまたはホスト名で指定ができるようになっています。
http://faq.nttpc.co.jp/faq/show/8571?site_domain=suitex

通常の大手プロバイダを利用している場合、IPアドレスは動的に変更されるので、IPアドレスを「***.***.***.***」のように指定していると、変更されて接続できなくなってしまう可能性があります。その為、「***.***.***.」のように、最後の一つを空欄にすることで、動的に変更されるIPアドレスでも対応することが可能です。最後の「.(ドット)」を忘れないようにしましょう。

<Limit ALL>
Order Allow,Deny
Allow from ***.***.***.
Deny from all
</Limit>

複数ある場合には、以下のように複数行書けば大丈夫です。

<Limit ALL>
Order Allow,Deny
Allow from ***.***.***.
Allow from aaa.bbb.ccc.ddd
Allow from 012.345.678.901
Deny from all
</Limit>

保存したら、「.ftpaccess.txt」をFTPでディレクトリ直下にアップします。
そしてファイル名を「.ftpaccess」のように変更すれば完了です。

レンタルサーバーによっては、管理画面から簡単に「.ftpaccess」を設定できます。
ロリポップの場合、「WEBツール」の「FTPアクセス制限」から簡単に設定することができます。その場合、自分で設定したIPアドレスだけでなく、ロリポップ!で利用されるIPアドレスも自動で追加されています。

WordPressを使う場合には、常に最新版にするようにし、wp-config.phpのパーミッションを400に変更したり、プラグインでセキュリティ対策を施したり、FTPのアクセス制限をして、セキュリティを強化するようにしましょう!

関連記事


コメントする

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

CAPTCHA


Follow us on Twitter Subscribe RSS Follow us in feedly
NATURAL PRESS

このサイトについて

JavaScript・PHPのサンプルや参考リンク、WEBサイト(ホームページ)で使えるアイコンや写真等の素材をダウンロード出来ます。

他にも、無料で使えるブロガーやアフィリエイター向けの、WordPressマガジンテーマ「NATURAL PRESS」を公開しています。ダウンロードや更新情報は、こちらのサイトで公開しています。

また、「WEB上手」は全ページリンクフリーですのでご自由にリンクしていただけます。リンクしていただけますと嬉しいです。

WordPress Theme NATURAL PRESS by WEB-JOZU.com