お知らせ

2014年1月26日日曜日

Step4 FTPにデータを移動させよう。(550 Failed to change directory.)

いよいよFFFTPを使ってデータを移動させよう。




Step7 WordPressに必要なものをインストールしよう。 で少し触れているが、
/var/www/html/
フォルダ以下にデータを保存すると、EC2で割り当てたアドレスでHTMLが表示ができるぞ。


さっそく、WORDPRESSのZIPファイルを/var/www/html/に保存しよう。


あれ?
ん?


フォルダに移動できない。。。。
550 Failed to change directory.


というエラー付きである。
どうやら、権限がないらしい。


以下の手順で権限を追加してあげよう。
まず、TeraTermでログインし、FTPユーザーのためのディレクトリを作ってあげよう。


# cd /var/www/html
# mkdir public_html
# chown dbUser public_html
# chgrp dbUser public_html
青字の所は各自のFTPユーザー名に合わせよう。




それだけではダメだ。
デフォルトはchroot許可ユーザーリストであるchroot_listにユーザー名を記載しなくては行けない。


#vi /etc/vsftpd/chroot_list


で中に一行、dbUserと書いて保存だ。


さて、もう一度、FTPでチャレンジ。


つながったぁ(^ ^)


この設定ミスでかなりハマりました。











2014年1月25日土曜日

Step3 EC2でFTPデータを受け付けられる状態にしよう。その2

①EC2画面からセキュリティ情報を確認しよう。


 
懐かしのEC2画面だ。
今のセキュリティグループ名を確認しよう。
左メニューからセキュリティ情報を 更新できるぞ。

 

②セキュリティ情報を更新しよう。



先ほど、確認したセキュリティグループ名を選択し、Inboundタグでセキュリティルールを追加しよう。
Custom TCP rule で21番と、60000 - 60010番を追加すればOKだ。

最後にApplyRuleChangesを押すのを忘れずに。

 

③FTP転送ソフトの設定をしよう。

FFFTP がFTPソフトとして有名だ。
ダウンロードしておこう。
※FFFTPを音読するとエフ!エフ!エフ・ティー・ピー!
チアガールの応援にありそうとか思ってみたり。

初期起動画面はこんな感じ。(ホスト一覧は空欄です。)


新規ホストでホストを追加しよう。


設定画面は以下の通り設定する。

ホストの設定名:何でも良い。
ホスト名(アドレス):EC2でIPアドレスを確認する。
ユーザー名・パスワード:前回作成したFTP用のユーザー名・パスワード
ローカルの初期フォルダ:WordPress.zipを解凍した所

続いて拡張タグに移り、「PASVモードで使う」からチェックを外そう。

これで設定はOKだ。
戻って「接続」ボタンで接続しよう。

ダラララとなって、以下の画面が出たら成功!!

ばんざーい!!!





2014年1月24日金曜日

Step2 EC2でFTPデータを受け付けられる状態にしよう。

いよいよ準備は整った。
FTPでダウンロードしたデータをEC2にアップしよう。

しかし、EC2側はまだFTPでデータを受け付けられる状態になっていない。
仕方ない、設定だ。

①vsftpdをインストールしよう。

vsftpdとは何ぞ?と思うが、FTPを使うためのソフトと思って欲しい。
よく見るとFTPの文字が隠れている。

まず、TeraTermでEc2にアクセスする。
ec2-userユーザーではインストールなど重要な処理はできないので、
以下のコマンドで管理者権限に移動しよう。

$sudo su -
 
以下のコマンドでvsftpdをインストールできる。
#yum -y install vsftpd
 ダララとインストールが始まるので確認しよう。
 
 

②設定ファイル(vsftpd.conf)を修正しよう。

/etc/vsftpd/以下にvsftpd.confが作成されるので、修正する。
その前に万が一に備えて、以下のコマンドでバックアップを取っておこう。
 
#cp /etc/vsftpd/vsftpd.conf /etc/vsftpd/vsftpd.conf.copy
 
いよいよ修正だ。
以下のコマンドで修正しよう。
#vi /etc/vsftpd/vsftpd.conf
 

修正事項は以下の通りだ。
43行目周辺



#connect_from_port_20=YES
connect_from_port_20=NO
に変更
 
98行目周辺
#chroot_local_user=YES
#chroot_list_enable=YES
chroot_local_user=YES
chroot_list_enable=YES
に変更。
---
100行目周辺
#chroot_list_file=/etc/vsftpd/chroot_list
chroot_list_file=/etc/vsftpd/chroot_list
に変更
---
121行目周辺
tcp_wrappers=YES
tcp_wrappers=NO
に変更
---
一番最後に以下を追記
use_localtime=YES
force_dot_files=YES
pasv_min_port=60000
pasv_max_port=60010
---

viのコマンドは面倒だが覚えるしかなさそうだ。
/(スラッシュ)文字列で文字列検索ができるので、それを使うと該当の場所に移動しやすいぞ。

③chroot_listをつくろう。

先ほどのvsftpd.confの修正でchroot_listで除外対象ユーザーを管理することに決まったらしい。
しかし、そんなファイルは無いので、以下のコマンドでつくろう。
#vi /etc/vsftpd/chroot_list
中身は空でいいので、作りっぱなしでOKだ。

④FTPのためのユーザーをつくろう。

以下のコマンドでFTPでアクセスするためのユーザーをつくり、パスワードを設定しよう。
#adduser 好きなユーザー名
#passwd 好きなユーザー名
passwdコマンドの後に2回パスワード入力する必要がある。


⑤vsftpdサービスを開始しよう。

以下のコマンドでvsftpdサービスを開始しよう。
ついでに毎回起動した時に自動的にサービス開始状態になるよう2つめのコマンドも実行しよう。
#service vsftpd start
#chkconfig vsftpd on


お疲れ様!!
次はEC2側の設定だ。



2014年1月23日木曜日

Step1 WordPressをダウンロードしよう。

①WordPress公式HPからzipファイルをダウンロードし、保存しよう。

公式HP


 

②ZIPファイルを解凍し、作業フォルダに保存しよう。

 

③【重要】wp-config.phpをつくろう。

解凍されたwordpressフォルダ以下にあるwp-config-sample.phpをコピーして、wp-config.phpを作成しよう。
wp-config.phpが正式な設定ファイルになり、wp-config-sample.phpは万が一の為のバックアップとなる。


④【超重要】wp-config.phpを編集しよう。

変更箇所その1 DB情報

ファイルの28行目辺りにある以下の4点を編集する。
/** WordPress のためのデータベース名 */
/** MySQL データベースのユーザー名 */
/** MySQL データベースのパスワード */
/** MySQL のホスト名 */

ドットインストールの通りに行えば以下の様になるが、各自、設定した通りに編集しよう。
また、MySQLのホスト名はAWSのRDSで詳細画面に表示されるEndPointだ。

define('DB_NAME', 'dotinstall');
/** MySQL データベースのユーザー名 */
define('DB_USER', 'dbUser');
/** MySQL データベースのパスワード */
define('DB_PASSWORD', '内緒!!');
/** MySQL のホスト名 */
define('DB_HOST', 'mydbinstance.camo1wdiqt4n.ap-northeast-1.rds.amazonaws.com');



 

⑤AUTH_KEY以下を編集しよう。

セキュリティ強化のため60行目辺りからあるAUTH_KEY以下8つのキーを設定しよう。
今後、このキーは覚えなくて良い+絶対にばれない文字列にする必要があるので、オンラインジェネレーターで自動生成してもらい、それをそのままコピーしよう。

 

 
 
ビフォー
 

 

アフター



保存すれば完了だ!!


夫々の作業の詳細や作業の意味についてはWordPressのWikiを見ると詳しく書かれている。
コレが読めたら、PCルーキーではないが。。。

2014年1月22日水曜日

Step9 Ec2からデータベースに接続しよう。

ここから先の内容はドットインストール#11 スペック変更とEC2からの接続 に該当する。
合わせて確認しよう。

①DBが立ち上がっている事を確認しよう。

以下の設定が正しくなされているか確認しよう。
Status がavailable(動いてますよという意味)
Strage が5GB
AvailabilityZone がap-northeast-1a
Instance Class が db.t1.micro

下3つは、設定を間違うと課金されます。

また、EndPointと書かれている箇所は後々EC2からアクセスする上で必要な情報なので、メモっておこう。

②SecurityGroupの値を変更しよう。

画面右下のSecurityGroupから設定を変更できる。

以下の2点をAddRuleで追加しよう。
・SSH
・MySQL

③EC2から実際にアクセスしてみよう。

EC2の画面に戻ろう。

懐かしの画面
右上のConnectボタンで接続するための情報が記載されている。
【重要】IPアドレスは再起動するたびに変更されるので前回と違う可能性がある。注意しよう。



TeraTermでEC2サーバーに接続しよう。
接続の仕方は以前の記事を参考にされたし。

④TeraTermでDBに接続しよう。

以下のコマンドで接続できる

 sudo mysql -h mydbinstance.camo1wdiqt4n.ap-northeast-1.rds.amazonaws.com -u dbUser -p

赤字の部分はRDSで確認したEndPintです。

【注意】
・RDSのEndPointoには ホニャホニャ.com:3306 と書かれているが:3306は消します。
・SSHで入っているユーザーがec2-userなので、前にsudoを付けてroot権限での実行にします。
・ユーザー名は大文字小文字を判別します。(私はそれで10分ほど迷いました)



⑤データベースが作成されているかを確認しよう。

以下のコマンドでデータベースが作成されているかを確認できます。
show databases;


出力された一覧に先ほど作成したデータベース名があればOKだ。





2014年1月21日火曜日

Step8 データベースを立ち上げよう。

ここから先の内容はドットインストール#10 データベースを立ち上げてみよう に該当する。
合わせて確認しよう。
また、#7~#9については、軽く見ておこう。
本格的にサイトを構築するには必要な知識だが、今はまだ必要ないし、課金される可能性がある。

①RDSを立ち上げよう。

AWSの一覧画面から選択することができる。



②regionを確認し、DBを立ち上げよう


右上にregionがあるのでTokyoになっている事を確認しよう。
左下のLaunchDB ボタンからDBを立ち上げる事ができる。

③ MySQLを選択してDB Instanceの詳細を確定しよう。


次にどのDBにするか選択画面がでるので、一番上のMYSQLを選択しよう。
(画面をキャプチャし忘れました。すまん)

続いて、DBの詳細画面が出るので以下を設定しよう。
【重要】
・DB Instance Classでdb.t1.microを選択しよう
・Multi-AZ DeploymentでNoを選択しよう
・AllocatedStrage はミニマムの5GBで設定しよう。

いずれも間違うと、もれなく課金される。
気をつけよう。

DB Instance Identifier以下は好きなDBインスタンス名、ユーザー名、パスワードだ。
何でもいいが、忘れない様に、どこかにメモししておこう。




④DB名その他を入力しよう。


DB名は何でも良いが、忘れない様に、どこかにメモししておこう。
AvailabilityZoneはap-northeast-1aを選択しよう。


⑤バックアップのタイミングを設定しよう。

この画面はいつバックアップを取りますか?という画面だ。
とりあえず、デフォルトのママで構わない。(デフォルトのままだと1日の適当な時間にバックアップを取ってくれるという設定になる。)




⑥設定を確認しよう。


今まで設定してきた一覧が表示される。
内容に問題が無いかを確認して、いよいよDBの立ち上げだ。

下記の様な画面が出たら、OKだ。
DBの立ち上げには暫く時間がかかるので、お茶でも飲もう。

2014年1月20日月曜日

Step7 WordPressに必要なものをインストールしよう。

ここから先の内容はドットインストール#06 仮想サーバーを設定しよう に該当する。

①WordPressに必要なものをインストールしよう。

WordPressでホームページを公開するにあたって必要なもの(アプリ?)は以下の3点だ。
一.httpd (←これが無いとWebブラウザで見られない?)
二.php (←プログラミング?)
三.mysql (←データベース!!)

それぞれが何かはPCルーキーの私に聞かず、他で勉強して欲しい。



【重要】以下のコマンドでhttpd php mysqlがインストールできる。
TeraTermで実行してみよう。
sudo yum -y install httpd php mysql




コマンドの意味などはリナックスコマンド集で勉強しよう。
※ドットインストールでもちょっと説明してくれているぞ。

②httpdを起動しよう。

以下のコマンドでhttpdを起動し、今後、再起動しても自動で起動状態にしてくれる。



sudo service httpd start

sudo chkconfig httpd on

今までみたいに、コマンドを打った後にダラララッと出ないのが悲しいが、起動はキチンとされているので安心しよう。

③ためしにHTMLを作ってみよう。

ドットインストールでは以下のコマンドでindex.htmlを作るとある。
vimというのはlinuxのテキストエディタでコマンドが面倒臭く、PCルーキーの敵なのだが避けては通れないらしい。
細かい所は後々勉強するとして、以下の手順でindex.htmlを作って欲しい。

一.
TeraTermで以下のコマンドを入力
sudo vim /var/www/html/index.html

二.
画面が下一行を残して真っ黒になるので、a ボタンを押す。
すると、下に黄色でinsertと記載される。



三.
以下をコピペ。
<html>
hello
</html>

直接、入力しても良いし、コピペもできる。

四.
ESC キーを押す。 insertの文字が消えるのを確認する。

 

 

 
:wq と入力する。

大丈夫だったろうか?

後々、Vimは勉強しなくてはいけないので、もし時間があったら、色々コマンドの意味を確認して進んで欲しい。

 

④Webページを確認しよう。

EC2に戻り、PublicDNSを確認しよう。
ec2ホニャホニャと書かれているのが与えられたURLだ。
それをコピーして、新しいタブでアクセスしてみよう。
 


helloと出たら成功だ!!!

他にもphpがちゃんとインストールされたかなどを確認する方法もあるのでドットインストールの動画を確認しておこう。