13.Web用LinuxサーバをEC2に構築

前へ 目次 次へ

DynamoDB、S3に保管した Raspberry Pi からのデータを公開するWebサーバをEC2に立ち上げます。

EC2(仮想サーバ)に Amazon Linux サーバ環境を構築します。
といっても至って簡単。

コンソール画面からEC2を選びます。

管理コンソール EC2

Lunchi Instance で新しい仮想サーバを構築します。

EC2

Amazon Linux を選びます。

EC2

無償でお試しできる t2.micro を選びます。

EC2

EC2

Webサーバですので、http の 80 番ポートにアクセスできるよう設定します。

EC2 Security

EC2 Security

EC2の仮想サーバにはデータを保管しないので、Disk は最低の5GBで設定します。

EC2 HD Size

サーバの管理コンソールで表示される名前を設定します。

EC2 Name

ssh(暗号化リモート接続し、コマンドライン処理のためのソフト)用の鍵を作成します。
鍵は必ず保管します。(保管し忘れるとアクセスできなくなります。)

EC2 ssh access key

以上のように構築すると良いでしょう。

EC2

EC2

固定グルーバルIPアドレスを取得します。(必要な場合)

EC2 Global Address

EC2 Grobal Address

EC2 Grobal Address

その他は、以下のリンクを参照すると良いでしょう。

AWSのEC2でのウェブサーバーを簡単に構築する方法(株式会社LIG さん)
http://liginc.co.jp/web/programming/server/110507

【AWS】入門 EC2で10分でサーバ作成&ログイン(shade さん)
http://fanblogs.jp/kagayakibito/archive/126/0
EC2でWebサーバの用の環境を設定します。

$ sudo yum update
$ sudo yum upgrade

スワップの設定(推奨)

$ free
             total       used       free     shared    buffers     cached
Mem:       1020044     314672     705372          0      13520     234808
-/+ buffers/cache:      66344     953700
Swap:            0          0          0

$ sudo nano /root/swap.sh
#!/bin/sh
SWAPFILENAME=/swap.img
SIZE=1200000k
fallocate -l $SIZE $SWAPFILENAME && mkswap $SWAPFILENAME && swapon $SWAPFILENAME

$ sudo chown root.root /root/swap.sh
$ sudo chmod 755 /root/swap.sh
$ sudo /root/swap.sh
$ sudo nano /etc/rc.local
/root/swap.sh

$ free
             total       used       free     shared    buffers     cached
Mem:       1020044     355220     664824          0      31984      91440
-/+ buffers/cache:     231796     788248
Swap:      1199996          0    1199996

WebサーバとPHP環境の構築

$ sudo yum install httpd php php-mcrypt

$ sudo nano /etc/php.ini
(変更部分のみ記載)
default_charset = “UTF-8”
date.timezone = Asia/Tokyo

[mbstring]
mbstring.language = Japanese
mbstring.internal_encoding = UTF-8
mbstring.http_input = auto
mbstring.http_output = UTF-8
mbstring.encoding_translation = Off
mbstring.detect_order = UTF-8,SJIS,EUC-JP,JIS,ASCII
mbstring.substitute_character = none

$ sudo service httpd start
$ sudo chkconfig httpd on

FTPでコンテンツを転送する環境を整備(必要な場合のみ)

$ sudo yum install vsftpd ftp

$ sudo cp /etc/vsftpd/vsftpd.conf /etc/vsftpd/vsftpd.conf.back
$ sudo nano /etc/vsftpd/vsftpd.conf
(変更部分のみ記載)
anonymous_enable=NO

ascii_upload_enable=YES
ascii_download_enable=YES

tcp_wrappers=NO

pasv_enable=YES
pasv_addr_resolve=YES
pasv_min_port=60001
pasv_max_port=60099
pasv_address=<グルーバルIP>
use_localtime=YES
force_dot_files=YES

$ sudo adduser <FTPアカウント>
$ sudo passwd <FTPアカウント>

$ sudo service vsftpd start
$ sudo chkconfig vsftpd on
$ ftp localhost
Connected to localhost (127.0.0.1).
220 (vsFTPd 2.2.2)
Name (localhost:ec2-user): <FTPアカウント>
331 Please specify the password.
Password:
230 Login successful.
Remote system type is UNIX.
Using binary mode to transfer files.
ftp> by
221 Goodbye.

上記FTP環境に接続できるよう、EC2のセキュリティ設定に以下を追加します。

EC2 Security

EC2 Security

以上で、Webサーバの基本的な設定が完了します。

さらに細かな設定が必要な場合は、Apache、vsftp などのキーワードで検索すると良いでしょう。

前へ 目次 次へ

広告

About Yukihito Kataoka
@ykataoka

現在コメントは受け付けていません。

%d人のブロガーが「いいね」をつけました。