MaMoTaKuのセキュリティを若干気にしたWordPressインストールマニュアル

カテゴリー:WordPress

最近WordPressを使うことが増えてきたMaMoTaKuです
そんでもって、WPのインストールマニュアル的なものを
自分用に作ったのにうっかり消して、その事に
数日気づかなかったのもMaMoTaKuです、、、
今年入ってからついてないな。。。

と言いつつも、WordPressのインストールマニュアルはあれば
まぁまぁ使えると思うし、MaMoTaKuなりに若干セキュリティを気にして
インストールを工夫してみたので、忘れないようにメモします!
一応、初めてやる人でも出来るように書いていくつもりです。

まずはWordPressをダウンロード

WordPressのファイルをダウンロードしましょう。
URLはこちら

ダウンロードしたら解凍しておいてください。
※MaMoTaKuが記事を書いているときのWordPressのバージョンは4.1.1です。

サーバに接続して解凍したファイルをアップします

ファイルの準備ができたら、
 1.FTPソフトを使ってサーバに接続
 2.ルート直下に移動(ホームページが公開される場所)
 3.「__wp」ディレクトリを作成(右クリックとから新規ディレクトリ(フォルダ?)で追加できます)
 4.新しく作った「__wp」に解凍したファイルをアップロード

DBの準備をする

契約しているサーバでDBを一つ作ってください。
作ったら
・ログイン名
・パスワード
・DB名
・ホスト名
を忘れないようにメモしておいてください。

アップしたファイルを編集します

アップロードが完了したらいくつかファイルを編集する必要があります。
編集する必要があるファイルは
・index.php
・wp-config-sample.php
・readme.html
の3つです。

●index.php
ルート直下/__wp の中にあるindex.phpを開きすべてコピーします。
コピーしたら、ルート直下にindex.phpを作り、貼り付けます。
貼り付けたら、一番最後の行の
「require( dirname( __FILE__ ) . ‘/wp-blog-header.php’ );」
の部分を
「require( dirname( __FILE__ ) . ‘/__wp/wp-blog-header.php’ );」
に変更してください。
ここで行った作業が後々大事になってきます。

●wp-config-sample.php
ルート直下/__wp の中にあるwp-config-sample.phpを開いて、
・DB_NAME
・DB_USER
・DB_PASSWORD
・DB_HOST
・DB_CHARSET
・DB_COLLATE
を使用するDBに合わせてください。
恐らく編集しなければいけない項目は
・DB_NAME
・DB_USER
・DB_PASSWORD
・DB_HOST
の4つで、残の2つはMaMoTakuも編集したことありません笑
DB_HOSTもサーバによっては変更する必要はありません。

上記の編集が終わったら、下の方にある
「$table_prefix」を編集します。(エディタ上で検索すればすぐ見つかりますよ?)
初期状態だと、「wp_」になっていると思います。
MaMoTaKuが思うに、ここは触る人が少ないため、
SQLインジェクションなどによる攻撃を受けることがあります。
なので、table名の頭文字を変更することにより不正なアクセスを難しくさせましょう。
変更する場合は
例) mamotaku_
などにするといいと思います。
メリットとして、
・多少攻撃を受けにくくなる
・DB移行などの際、既存のものとバッティングしにくくなる
・この辺いじってるとなんかかっこいい気がする
です。
「$table_prefix」の編集は絶対ではないので、やらなくても問題ありません。

編集が完了したらファイルを一度閉じて、
wp-config-sample.phpのファイル名を「wp-config.php」に変更してください。
また、変更が終わったらパーミッションを「600」にすることもポイントです!

●readme.html
ルート直下/__wp の中にあるreadme.htmlは不要なファイルなので、削除してください。

WordPressをインストールします

ファイルの編集が終わったので、WordPressをインストールしたいと思います。
ドメイン/__wp/にアクセスするとインストール画面になるので、
上から入力していってください。
ここでやってはいけないことは
・ユーザ名に「admin」等、推測されやすいものは使わない
・パスワードにも推測されやすいものは使わない
また、一番下にある「検索エンジンによるサイトのインデックスを許可する。」は、
各自状況に合わせて選択してください。
※チェックを外した状態でインストールしても、後から変更することができます。

すべて入力が終わったらインストールボタンを押してください。
エラー画面が出なければインストール成功です。
できなかった場合はwp-config.phpのDB設定が間違っていると思われます。
インストールが成功したらログインしてみましょう!

次は中身の設定です

終わったと思っただろ、残念ここからもう少しやることあるんだな~笑
管理画面左上にある家のロゴをしたページを開いてみてください。
そうするとURLが「ドメイン/__wp」になっていると思います。
このままだと、「ドメイン/__wp」がトップページとして扱われてしまいます。
これは気持ち悪いですよね?
なので、「ドメイン」がトップページになるように変更したいと思います。

サイドバーの設定から一般設定を開くと、
・WordPress アドレス (URL)
・サイトアドレス (URL)
があると思います。
WordPress アドレス (URL) はWordPressがインストールされているページのURLが書かれているところなので、いじる必要はありません。
今回いじるのは「サイトアドレス (URL)」だけです。
「ドメイン/__wp」と書かれていると思いますが、そこの部分から「__wp」を削るだけです。
保存が完了したら、管理画面左上の家のロゴマークのところからサイトに遷移していてください。
トップページのURLがドメインだけになっているはずです。
※実は上にある「アップしたファイルを編集します」のところで、ルート直下にindex.phpファイルを作ってもらってると思いますが、そこでやった作業はドメインのindex.phpにアクセスがあった際に__wpの中のファイルを見に行くようにしていたんです。

これでインストール完了!
、、、と思った時期がMaMoTaKuにもありました。。。

じつはもう一つ残ってたんです。
一度でもWordPressをインストールしたことがある人はあれの設定をしていないことに気付くかもしれません。
初めての人はへぇ~だと思います。

そうです、みんな大好き「.htaccess」の設定をまだしてません。
WordPressとは切っても切り離せない存在のこの子を設定してあげましょう。

今回のラスボス「.htaccess」

では、ラスボスを退治しちゃいましょう、2分かからず倒せますから。
ベーシック認証を既にしている方は大丈夫だと思いますが、
ルート直下に「.htaccess」を作りましょう。
作り方がわからない方は、ローカルに「a.htaccess」か「htaccess.txt」を作り、ルート直下にアップしてください。
アップしたら名前の変更から「.htaccess」に変更してください。

ファイルを開いたら
中身に

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>

を追加してください。
これで完了です!

追記 2015.05.26
RewriteBase /__wp/
RewriteRule . /__wp/index.php [L]
の/__wpは必要ないですね
削りました!

はい、撃破完了!

まとめ、、、

この記事を見てインストールをした方は無事、できたでしょうか?
一応MaMoTaKuもインストールしながらこの記事を書いてますが、
初めての方だと、用語がわからないってことはあるかもしれません。
※一応わかりやすく書いたつもりで入るんですが、、、保証はできません笑
慣れてくればファイルアップする時間を除いて5分ぐらいで出来るものなので、
初めての方はたくさん失敗して慣れてください笑
MaMoTaKuも始めてやった時は半日以上かかった気がします笑

本当は、
・画像がuploadされるディレクトリの変更方法
・パーマリンクの設定
・初期インストールしておいた方がいいプラグイン
とかも紹介しようと思ったのですが、
あまり長い記事を書くのが得意ではないので、
この記事はこの辺にしときたいと思います。
またやる気が出れば追記するか、別記事で紹介したいと思います。