かわたま.net

Enjoy Creative! かわたまのwebメモ

【2】WordPressをubuntu(VPS/VMware)でnginx+php5-fpmで構築してみた!

2014 March 10

Tag:

WordPressをubuntu(VPS/VMware)でnginx+php5-fpmで構築してみました!の手順まとめ。
第2回はUbuntu Serverの初期設定。

目次【1】VMware、Ubuntuのダウンロード〜VMware設定

#1:VMwareをダウンロード
#2:ubuntuのダウンロード
#3:VMwareに仮想マシンを作成
#4:ubuntuの設定
・SSHサーバインストール
・ソフトウェア(パッケージ)一覧情報の更新。
・ubuntuのIPをチェック

目次【2】Ubuntu Serverの初期設定(〜ufwの設定まで)☆いまここ!

#1:MacのターミナルからSSH接続
#2:vimをインストール
#3:ubuntuの日本語設定
・※デフォルト言語を英語に戻すとき
#4:タイムゾーンの確認、設定
#5:sshサーバの設定
・ubuntuホームディレクトリにsshディレクトリを作成
・authorized_keysの設定
・パーミッションを変更
・SSHのポート等を変更
#6:ufwでファイアウォールを設定
・ufwのインストール
・ufwのステータスを確認
・ufwの設定

目次【3】Ubuntu Serverの初期設定(nginxのインストール〜wordpressインストールまで)

#1:nginxをインストール
#2:phpの設定
・php-fpmのバックアップ、修正
・.iniの編集
・nginxを再起動
#3:mysqlの設定
・データベース、ステータスの確認
・my.cnfの設定
・データベースを作成
#4:サーバ内にサイトのディレクトリを作成
#5:nginxのバーチャルホスト設定
・シンボリックリンクをはる
#6:nginxの状況確認、モジュールのインストール
・wget、unzip、zipをインストール
#7:wordpressをダウンロード
・woerpressをコピー
#8:グループ権限、ユーザー権限の設定
・devというグループを作成
・パーミッションを変更
#9:データベースの情報を入力
#10:Hostsの設定
#11:ブラウザからアクセスしてwordpressをインストール
#12:オリジナルテーマを作成するための下準備

#1:MacのターミナルからSSH接続

まずはサーバにssh接続します。

$ ssh kawatama@IP

■kawatama=ubuntuで設定したアカウント名
■IP=ifconfigで確認したIP
を以降それぞれ代入してください。
→ifconfig非推奨のようなので
$ip a
でIP確認します。

パスワードをきかれるのでubuntuで設定したパスワードを入力。
途中で「yes/no」聞かれるので「yes」。
Welcome to Ubuntuと表示されればok!

#2:vimをインストール

$ sudo aptitude install vim

インストールできたか確認。

$ vim --version

vimrcの設定などは省略します。

#3:ubuntuの日本語設定※英語のままで良ければスキップ。

ubuntu Server のデフォルト言語を日本語に設定。
※必要に応じて設定します。英語のままで良ければスキップ。

$ sudo apt-get install language-pack-ja
$ export LANG=ja_JP.UTF-8
$ sudo update-locale LANG=ja_JP.UTF-8

▼設定できたか確認

$ echo $LANG
ja_JP.UTF-8

▼デフォルトのlocaleが日本に設定されたか確認

$ cat /etc/default/locale
※デフォルト言語を英語に戻すとき
$ sudo vim /etc/default/locale
LANG="en_US.UTF-8"
$ export LANG="en_US.UTF-8"

▼確認

$ echo $LANG
LANG="en_US.UTF-8"

#4:タイムゾーンの確認、設定

タイムゾーンが日本時間になっていない場合は変更します。

$ date

こんなかんじででます。Sun Mar 2 06:58:22 PST 2014
右から2番目がJSTと表示が出るなら日本時間です。
日本時間でない場合は以下の手順で変更。

タイムゾーンを日本時間に変更する
$ sudo dpkg-reconfigure tzdata

Asia Tokyo と、選択する。
再度、dateコマンドを使い時刻とタイムゾーンを確認します。

$ date

JSTと表示が出ればok!

#5:sshサーバの設定

▼ubuntuホームディレクトリにsshディレクトリを作成
$ cd
$ mkdir .ssh
▼authorized_keysの設定

公開鍵と秘密鍵でsshログインできるようにします。
まず予め公開鍵と秘密鍵を生成しておきます。手順は別記事にまとめました。
MacでSSH認証のための公開鍵と秘密鍵を生成する手順

ターミナルで新規タブを開いてローカルから下記コマンドを入力。
※~/.ssh/id_rsa.pubは、ファイルの保存場所によって変更してください。

$ scp -P 22 ~/.ssh/id_rsa.pub kawatama@IP:~/.ssh/authorized_keys

この設定をしない場合はsshd_configで「PasswordAuthentication yes」としてください。(下記参照)

▼パーミッションを変更
$ chmod 700 .ssh
$ chmod 600 .ssh/authorized_keys
▼SSHのポート等を変更

SSHのポート番号を変更して、簡単にアタックされないようにします。

$ sudo vim /etc/ssh/sshd_config
..
# ポート番号を 22 (デフォルト)から 12345 (他と被らない任意の数字)へ変更
#Port 22
Port 12345

# rootでのログインを不可とする(※基本的にrootは閉じる)
PermitRootLogin no

# パスワードなしでのログインを不可とする
PermitEmptyPasswords no

# パスワードでのログインを不可する(authorized_keysの設定をしない場合は「yes」)
PasswordAuthentication no

変更できたら保存して閉じる。(:wq)

sshを再起動してexit

$ sudo service ssh restart
$ exit

以降からサーバにログインする際は、

$ ssh kawatama@IP -p 12345
#※12345は上記で設定したポート番号

となります。

#6:ufwでファイアウォールを設定

公開するポートの通信を制限/許可します。

▼ufwのインストール

デフォルトで入っている場合もあるが入っていない場合はインストール。

$ sudo aptitude install ufw
▼ufwのステータスを確認
$ sudo ufw status

※非アクティブでok

▼ufwの設定
#まず最初にすべてのポートをいったん拒否
$ sudo ufw default deny

#次にsshを通す
$ sudo ufw allow 12345(sshで設定したポート番号)

#httpも許可する(ブラウザからサイトを見れるようにする)
$ sudo ufw allow 80

#ufwを有効にして再確認(※有効にした時点で設定が有効になる)
$ sudo ufw enable
$ sudo ufw status

ふぅ〜。
次はnginxのインストール