WordPress 公開時に必ずやること 【Linux】

Web Server

レンタルサーバーを契約して、自力で WordPress をインストールして公開するとき、セキュリティ観点でやるべきこと、注意点を挙げておきます。
最初の注意事項だと思うのですが、ネットを参照してもあまり注意喚起されていないようです。
以下の3つです。

環境: レンタルサーバー(ConoHa VPS)、Linux, Apache, MySQL, PHP

注意点1:wp-config.php は公開フォルダに置かない(ドキュメントルートの1つ上に移す)

設定ファイル “wp-config.php” の場所がどこにあるか確認し、ドキュメントルートから変更しておきましょう。

通常、WordPress をインストールすると、WordPress のファイル一式は、ドキュメントルート(Apache のデフォルトで “/var/www/html/”)か、あるいは、その下に WordPress 用のフォルダを作成して、その中に入れる(”/var/www/html/wordpress/”)等となると思います。
もし、WordPress のファイルがどこにあるかわからなくなった場合は、以下のあたりを探すと見つかると思います。
# cd /var/www/
# cd /var/www/html/
# cd /var/www/html/[wordpress]   […] は作成したフォルダ名により変わる
フォルダ自体がない場合は、Apache の設定でドキュメントルートが変更されていると思います。

ここで、Web サーバ (Apache) を起動する際に、パスワードなどを設定している WordPress のファイル wp-config.php がドキュメントルート(公開フォルダ)に入っていないことを確認しましょう。
推奨する構成としては、WordPress 本体はドキュメントルート(Apache のデフォルトで “/var/www/html”) に入れ、wp-config.php は、その1つ上のフォルダ(”/var/www/ の下)に移しておきます。

ありがちな失敗例

WordPress の zip ファイルをダウンロードして展開すると、wordpress というフォルダができます。
安直にこのフォルダを “/var/www/html/” 直下に入れて Apache を起動 (# systemctl start httpd) してしまったとします。
この状態で、ブラウザから、http(s)://(ドメイン名)/wordpress/ にアクセスすると、ファイル構成が参照できてしまいます!
パスワードを設定している wp-config.php も参照できてしまいます。

ここで、wp-config.php を1つ上の階層に移しても、WordPress 自体は起動しますが、公開フォルダ “/var/www/html/” 内に “wp-config.php” があることには変わりがありません。2つ上の階層に移してみたところ、WordPress は正常に起動しませんでした。ということは、ドキュメントルート内の深い層にフォルダを作って、WordPress を設定すると、パスワードが入った wp-config.php ファイルがどこにあるか、他人からわかってしまうことになります。
参照権限を設定する等、細かな手はありそうですが、設定ファイルをドキュメントルートに置くのはセキュリティ上、避けたほうがよさそうです。

すると、“/var/www/html/” の直下に WordPress の php ファイル一式を入れ、wp-config.php のみドキュメントルートから1段上に移すのがベスト、ということになります。

注意点2:初めてログインする際のユーザ名、パスワードは複雑なものにしておく

WordPress に初めてログインの設定をする際、管理者のユーザ名、パスワードは複雑なものにしておきましょう。
ユーザ名 admin パスワード1234 などは絶対に避けましょう。海外などから、サーバーを見つけると自動でログインをトライしてくる輩がいます。

これは、つぎの「注意点3」も関係します。管理者のユーザー名は、WordPress のデフォルトでは、記事を追加すると公開状態となってしまいます。
WordPress の設定中に、テストでサイトを公開すると、ユーザー名が知られてしまう可能性があります。時間が経つにつれ、パスワードが破られてしまう可能性が高まるからです。

注意点3:WordPress の管理画面に入ったら、速やかに、「ニックネーム」、「ブログ上の表示名」をログイン名から変更しておく。

WordPress のデフォルト設定では、ログイン時の管理者のユーザ名が、「ブログの表示名」となるよう設定されています。
記事を追加すると、ユーザ名が公開されたままの状態となります。気づかないと危険です。

(変更手順)
(1) まず、左上のWマークのあたりをクリックして「ダッシュボード」を探し、「ダッシュボード」→「ユーザー」→「プロフィール」をクリックします。
(2) 「ニックネーム(必須)」の欄に、公開されてもよい名前を入力します。
(3) 「プロフィールを更新」ボタンをクリックします。すると、「ブログ上の表示名」で(2)のニックネームを選択できるようになりますので、公開されてもよいニックネームに変更します。変更後、再度、「プロフィールを更新」ボタンをクリックし、保存します。

これに気づかないと、管理者のログイン時のユーザー名が公開された状態、ネット上でさらされた状態のままとなります。
(信じがたい仕様です。。)

まとめ

WordPress は、ホームページが簡単に作成できるのがよいところです。
しかし同時に、パスワード関連ファイルやユーザ名の設定、管理も簡単な印象です。速やかに対策しましょう!

なお、セキュリティを強化しておくための設定について、以下の関連リンクなどにまとめています。
もしも、まだやっていない事項があるようでしたら、検討してみてください。

関連リンク
・ ログイン画面へのアクセスを IP アドレスで制限する方法 【WordPress】
・ root での SSH ログインを禁止する 【Linux】

タイトルとURLをコピーしました