目次


IBM クラウド内で WordPress ブログをホストする

Comments

この記事では、自分が使用している IBM SoftLayer 仮想サーバー上にベーシックな WordPress ブログをセットアップできるようにします。一連の関連記事は、IBM マーケットプレースのさまざまなサービスを利用して WordPress インストール済み環境を機能強化してセキュアにするのに役立ちます。ブログのセットアップ・プロセスには、以下の 4 つの作業が含まれます。

  • SoftLayer 仮想サーバーの準備
  • MySQL サーバーのインストール
  • Apache および PHP のインストール
  • WordPress のインストールおよび構成

使用するサービス

この記事で使用する IBM Cloud マーケットプレースのサービスは、以下のとおりです。

IBM SoftLayer
仮想サーバー

SoftLayer のロゴ、IBM クラウド内で WordPress ブログをホストする

概要

以下の図に、SoftLayer クラウド・コンピューティング・インスタンス (CCI) にインストールする WordPress コポーネントの概要を示します。

SoftLayer 上の WordPress の概要、IBM クラウド内で WordPress ブログをホストする
SoftLayer 上の WordPress の概要、IBM クラウド内で WordPress ブログをホストする

SoftLayer クラウド・コンピューティング・インスタンス上の WordPress コンポーネント

動画

以下の動画で、IBM クラウド内で仮想サーバーをセットアップする方法、すべての前提条件ソフトウェアをインストールする方法、そして最後に WordPress をインストールする方法を紹介しています。

ステップ・バイ・ステップの手順

SoftLayer 仮想サーバーの準備

仮想サーバー・インスタンスをプロビジョニングする

SoftLayer ポータルにログインして、新規 CCI を作成します。この記事での CCI は、以下に示す構成に設定しますが、独自の構成を選択しても構いません。ここではオペレーティング・システムとして「CentOS 6.x – Minimal Install (64 bit)」を選択していることに注意してください。記事では一貫して、基本 OS として CentOS 6.x を使用します。

SoftLayer インスタンス 1、IBM クラウド内で WordPress ブログをホストする
SoftLayer インスタンス 1、IBM クラウド内で WordPress ブログをホストする

SoftLayer クラウド・コンピューティング・インスタンス (1) の構成を選択する

SoftLayer インスタンス 2、IBM クラウド内で WordPress ブログをホストする
SoftLayer インスタンス 2、IBM クラウド内で WordPress ブログをホストする

SoftLayer クラウド・コンピューティング・インスタンス (2) の構成を選択する

SoftLayer インスタンス 3、IBM クラウド内で WordPress ブログをホストする
SoftLayer インスタンス 3、IBM クラウド内で WordPress ブログをホストする

SoftLayer クラウド・コンピューティング・インスタンス (3) の構成を選択する

ユーザーを構成する

仮想サーバーがインターネット上で稼働状態になりました。root としてログインして実験するのは賢明ではないので、WordPress をインストールする際に使用する admin という別のユーザーを追加し、root ログインを無効にしましょう (仮想サーバーをセキュアにする方法についての背景知識としては、記事「Secure your Virtual Server」を参照してください)。

  • ユーザーを追加してパスワードを設定します。
# useradd -m admin
# passwd admin
Changing password for user admin. 
New password: (enter the admin password)
Retype new password: (enter the admin password again)
passwd: all authentication tokens updated successfully.
  • ユーザー admin の鍵ペアを生成します。
#  su admin
#  cd /home/admin
#  mkdir .ssh
#  cd .ssh
#  ssh-keygen -t rsa
Generating public/private rsa key pair.
Enter file in which to save the key (/home/admin/.ssh/id_rsa):
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /home/admin/.ssh/id_rsa.
Your public key has been saved in /home/admin/.ssh/id_rsa.pub.
The key fingerprint is:
...
  • 公開鍵を配置します。適切なパーミッションが設定されている適切なディレクトリーに公開鍵を配置する前に、秘密鍵 /home/admin/.ssh/id_rsa をローカル・マシンにコピーする必要があります。サーバーにログインする際には、この秘密鍵を秘密鍵ファイルとして使用します。ログインした後は、以下のように秘密鍵を削除します。
#  rm –f /home/admin/.ssh/id_rsa
#  mv /home/admin/.ssh/id_rsa.pub authorized_keys
#  chmod 700 /home/admin/.ssh/
#  chmod 600 /home/admin/.ssh/ authorized_keys
  • admin を sudoers グループに追加します。/etc/sudoers ファイルの末尾に、以下の行を追加します。
admin ALL=(ALL) NOPASSWD: ALL
  • セキュア・シェル (ssh) 構成ファイルを編集し、パスワード・ベースのログインと root ログインを無効にして、rsa 鍵ベースのログインが有効になるようにします。この構成ファイルは、/etc/ssh/sshd_config ディレクトリーに置かれています。編集後のファイルは、以下のような内容になります。
RSAAuthentication yes
PubkeyAuthentication yes
PasswordAuthentication no
ChallengeResponseAuthentication no
AllowUsers admin
  • 最後のステップとして、ssh サービスを再起動します。
#  /etc/init.d/sshd restart

MySQL をインストールして構成する

WordPress には、データを保管するためのデータベース・サーバーが必要です。この記事では、MySQL を使用します。

  • MySQL をインストールします。
#  sudo yum install mysql-server mysql
#  sudo /sbin/service mysqld start
  • 新しい MySQL にセキュリティーを適用します。
#  sudo /usr/bin/mysql_secure_installation

このコマンドにより、root パスワードの設定、匿名ユーザーの削除、リモート root ログインの無効化、インストーラーによって組み込まれたテスト・データベースの削除、そして特権のリロードといった操作を順に実行することができます。これによって、変更が適用されます。

  • MySQL を起動して、ブート時に MySQL が起動されるようにセットアップします。
#  sudo /sbin/service mysqld start
#  sudo chkconfig mysqld on
  • MySQL シェルを起動し、データベースと WordPress 用データベース・ユーザーを作成します。
#  /usr/bin/mysql -u root -p
Enter password:
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 596
Server version: 5.1.73 Source distribution
Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved.
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
mysql> # CREATE DATABASE databasename;
Query OK, 1 row affected (0.00 sec)
 
mysql> # INSERT INTO mysql.user (User,Host,Password) VALUES('username','localhost',PASSWORD('password'));
Query OK, 0 rows affected (0.00 sec)

mysql> # GRANT ALL PRIVILEGES ON databasename.* to username@localhost;
Query OK, 0 rows affected (0.00 sec)

mysql> # FLUSH PRIVILEGES;
Query OK, 0 rows affected (0.01 sec)

mysql> # EXIT
Bye
$

Apache と PHP5 をインストールする

WordPress には、Web サーバーと、PHP ランタイムが必要です。この記事では、Apache と、Apache の PHP5 モジュールを使用します。

  • Apache をインストールします。
#  sudo yum install httpd mod_ssl
#  sudo service httpd start
  • Apache の中でホスト名を構成します。有効なドメイン名がない場合は、このステップをスキップし、パブリック IP を使用して WordPress にアクセスしてください。さもなければ、Apache 構成ファイル /etc/httpd/conf/httpd.conf を構成します。このファイルに、ServerName で始まるセクションがあり、例として #ServerName www.example.com:80 と設定されています。ここに、独自の完全修飾ドメイン名を入力する必要があります。
#ServerName www.example.com:80
ServerName www.x64.me
  • Apache のデフォルト index ファイルを構成します。Apache のデフォルト index ファイルは index.html となっているので、これを WordPress の index ファイル index.php に変更する必要があります。Apache 構成ファイル /etc/httpd/conf/httpd.conf を編集し、以下のようにデフォルト構成をコメントアウトして、新しい構成を入力します。
#DirectoryIndex index.html index.html.var
DirectoryIndex index.php
  • Apache のデフォルト・リスニング・ポートを構成します。デフォルトの HTTP ポート 80 が攻撃されることはよくあります。したがって、Apache がリッスンするポートは、変更するのが賢明です。ポートを変更するには、Apache 構成ファイル /etc/httpd/conf/httpd.conf を編集し、以下のようにデフォルトの構成をコメントアウトして、新しい構成を入力します。
#Listen 80
Listen 8088

さらに、新しいポートに合わせてファイアウォールを構成しなければならない場合もあります。例えば、ポート 8080 を介してインバウンド HTTP トラフィックを許可するには、以下のコマンドを実行する必要があります。

# sudo iptables -A INPUT -p tcp --dport 8088 -j ACCEPT

ファイアウォールを強化する方法についての詳細は、記事「Secure your Virtual Server」を参照してください。WordPress に、新しいポートで URL を構成する必要もあります。これについては、次のセクションで説明します。

  • Apache サーバーをリロードして、ブート時に起動するようにセットアップします。
#  sudo /sbin/chkconfig httpd on
  • PHP5 をインストールします。
#  sudo yum -y install php-mysql php-devel php-gd php-pecl-memcache php-pspell php-snmp php-xmlrpc php-xmlsudo
#  sudo service httpd restart

WordPress をインストールする

  • WordPress パッケージをダウンロードして解凍します (このパッケージは、ダウンロード先ディレクトリーの中にある wordpress という名前のフォルダーに解凍されます)。
#  cd /home/admin/
#  sudo wget http://wordpress.org/latest.tar.gz
#  sudo tar -xzvf latest.tar.gz
  • 構成ファイル wp-config.php を構成します。カレント・ディレクトリーを、WordPress パッケージを解凍したディレクトリーに変更し、wp-config-sample.php ファイルを wp-config.php ファイルにコピーした後、テキスト・エディターで wp-config.php ファイルを開きます。// ** MySQL settings というラベルが付いたセクションに、データベース情報を設定します。
DB_NAME 
    The name of the database that you created in MySQL. 
DB_USER 
    The username that you created for the WordPress database in MySQL. 
DB_PASSWORD 
    The password of the user name in MySQL. 
DB_HOST 
    The host name that you determined in MySQL (usually localhost). 
DB_CHARSET 
    The database character set is normally not changed. 
DB_COLLATE 
The database collation is normally left blank.

* Authentication Unique Keys というラベルが付いたセクションに、秘密鍵の値を入力します。これらの秘密鍵は、WordPress サーバーおよびユーザーのクッキーに保管される情報を暗号化するために使用されます。鍵の値を覚えておく必要はないので、ランダムで長くて複雑な鍵が生成されるようにしてください。https://api.wordpress.org/secret-key/1.1/salt/ にアクセスすると、このセクションに入力する必要がある内容を生成することができます。必ずこのセクションの内容をすべてコメントアウトしてから、生成された内容を入力してください。以下に、このセクションの例を示します。

define('AUTH_KEY',         '?V2P:}|*6IsfZ/J_F3I7tSrFBtd9ay|9Jlg~|');
define('SECURE_AUTH_KEY',  'FUhv:V}kz`pUt8#*t3U@9MEU:3%P~?^fxDzds');
define('LOGGED_IN_KEY',    'Eh}1!=+JJ)_ k?igTJNG-PZ-3k+cp`F][!]ef');
define('NONCE_KEY',        'FueDg|]+p<TX7,>E&Ysw(]y w(JUy[JU~uY/Y');
define('AUTH_SALT',        '9Eg$Xzjy@T8GvOoOQiC&:`+$u)V@d!/Imsf^E');
define('SECURE_AUTH_SALT', '2z5u=!`S[+d4v}3g1$&ids=3EcGn#Q=C;d#IV');
define('LOGGED_IN_SALT',   '%jy?MP~ro}[Ta`Mzl^jCAIRmY-|5C}wf$6-2q');
define('NONCE_SALT',       'wt)YLo+TvI`wwckb+%Co|@:s8_]y:iI~V)n=+');

Apache でデフォルトのリスニング・ポートを変更した場合は、wp-config.php ファイルに以下の行を追加する必要もあります。

define('WP_HOME','http://$your-domain:your-port');
define('WP_SITEURL','http://$your-domain:your-port');
  • WordPress パッケージを Apache Web ルート・ディレクトリーにアップロードします。
#  sudo mv /home/admin/wordpress/* /var/www/html/
  • インストール・スクリプトを実行します。

Web ブラウザーを開いてインストール・スクリプトをトリガーします。ブラウザーを使用して、http://$server-hostname/wp-admin/install.php にアクセスします。すると、以下のインストール・ページが開きます。このページで、サイトのタイトル、必要なユーザー名、自分で決めたパスワード (2 回入力)、e-メール・アドレスなどを入力することができます。これらの情報はすべて、後から管理パネルで変更することができます。おめでとうございます! WordPress が SoftLayer 上で稼働状態になりました。

WordPress のインストール、IBM クラウド内で WordPress ブログをホストする
WordPress のインストール、IBM クラウド内で WordPress ブログをホストする

WordPress のセットアップ


ダウンロード可能なリソース


コメント

コメントを登録するにはサインインあるいは登録してください。

static.content.url=http://www.ibm.com/developerworks/js/artrating/
SITE_ID=60
Zone=Cloud computing, Web development
ArticleID=1007371
ArticleTitle=IBM クラウド内で WordPress ブログをホストする
publish-date=06112015