読者です 読者をやめる 読者になる 読者になる

うさがにっき

読書感想文とプログラムのこと書いてきます

awsにwebサーバをインストールする

概要

前回の記事から続き

aws上に仮想サーバを立ててみる - うさがにっき

awsにwebサーバをインストールする

詳細

apacheのインストール

インスタンスssh接続する

$ ssh -i my-key.pem ec2-user@54.92.23.155
Last login: Wed Feb 25 06:28:18 2015 from kd106132109130.au-net.ne.jp

       __|  __|_  )
       _|  (     /   Amazon Linux AMI
      ___|\___|___|

https://aws.amazon.com/amazon-linux-ami/2014.09-release-notes/
9 package(s) needed for security, out of 12 available
Run "sudo yum update" to apply all updates.

yumを使ってapacheをinstall

$ sudo yum -y httpd
読み込んだプラグイン:priorities, update-motd, upgrade-helper
コマンド「httpd」が見つかりません。「/usr/bin/yum --help」を実行してください。
[ec2-user@ip-10-0-1-10 ~]$ sudo yum -y install httpd
読み込んだプラグイン:priorities, update-motd, upgrade-helper
amzn-main/latest                                         | 2.1 kB     00:00     
amzn-updates/latest                                      | 2.3 kB     00:00     
依存性の解決をしています
--> トランザクションの確認を実行しています。

…

依存性関連をインストールしました:
  apr.x86_64 0:1.5.0-2.11.amzn1           apr-util.x86_64 0:1.4.1-4.14.amzn1   
  apr-util-ldap.x86_64 0:1.4.1-4.14.amzn1 httpd-tools.x86_64 0:2.2.29-1.4.amzn1
  mailcap.noarch 0:2.1.31-2.7.amzn1      

完了しました!

apacheをスタート

$ sudo service httpd start
Starting httpd: httpd: apr_sockaddr_info_get() failed for ip-10-0-1-10
httpd: Could not reliably determine the server's fully qualified domain name, using 127.0.0.1 for ServerName
                                                           [  OK  ]

apache自動起動するようにする

$ sudo chkconfig httpd on
$ sudo chkconfig --list httpd
httpd          	0:off	1:off	2:on	3:on	4:on	5:on	6:off

多くのlinux系では3がonになっていれば自動起動が有効になっている

apacheのプロセス確認

$ ps ax | grep httpd
24392 ?        Ss     0:00 /usr/sbin/httpd
24394 ?        S      0:00 /usr/sbin/httpd
24395 ?        S      0:00 /usr/sbin/httpd
24396 ?        S      0:00 /usr/sbin/httpd
24397 ?        S      0:00 /usr/sbin/httpd
24398 ?        S      0:00 /usr/sbin/httpd
24399 ?        S      0:00 /usr/sbin/httpd
24400 ?        S      0:00 /usr/sbin/httpd
24401 ?        S      0:00 /usr/sbin/httpd

なんかいっぱい立ち上がってるけど…?

ネットワークの待ち受け状態を確認する
apacheが80PORTを開けて待ち受け状態になっているか確認する

$ sudo lsof -i -n -P
COMMAND    PID     USER   FD   TYPE DEVICE SIZE/OFF NODE NAME
dhclient  1874     root    5u  IPv4   8554      0t0  UDP *:68 
sshd      2104     root    3u  IPv4   9237      0t0  TCP *:22 (LISTEN)
sshd      2104     root    4u  IPv6   9239      0t0  TCP *:22 (LISTEN)
ntpd      2121      ntp   16u  IPv4   9298      0t0  UDP *:123 
ntpd      2121      ntp   17u  IPv4   9302      0t0  UDP 127.0.0.1:123 
ntpd      2121      ntp   18u  IPv4   9303      0t0  UDP 10.0.1.10:123 
sendmail  2136     root    4u  IPv4   9368      0t0  TCP 127.0.0.1:25 (LISTEN)
sshd     24299     root    3u  IPv4  38464      0t0  TCP 10.0.1.10:22->106.132.108.95:54348 (ESTABLISHED)
sshd     24301 ec2-user    3u  IPv4  38464      0t0  TCP 10.0.1.10:22->106.132.108.95:54348 (ESTABLISHED)
httpd    24392     root    4u  IPv6  38777      0t0  TCP *:80 (LISTEN)
httpd    24394   apache    4u  IPv6  38777      0t0  TCP *:80 (LISTEN)
httpd    24395   apache    4u  IPv6  38777      0t0  TCP *:80 (LISTEN)
httpd    24396   apache    4u  IPv6  38777      0t0  TCP *:80 (LISTEN)
httpd    24397   apache    4u  IPv6  38777      0t0  TCP *:80 (LISTEN)
httpd    24398   apache    4u  IPv6  38777      0t0  TCP *:80 (LISTEN)
httpd    24399   apache    4u  IPv6  38777      0t0  TCP *:80 (LISTEN)
httpd    24400   apache    4u  IPv6  38777      0t0  TCP *:80 (LISTEN)
httpd    24401   apache    4u  IPv6  38777      0t0  TCP *:80 (LISTEN)

IPv6と記載されているが、IPv4も待ち受けてくれるので大丈夫

ファイアウォールの設定

現状ではsshdの22しか受け付けていない
EC2メニュー > Security GroupsのWEB-SGを選択
Inboudタブを選択
f:id:tiro105:20150226194648p:plain

ポート80を開ける
f:id:tiro105:20150226195129p:plain

apacheを確認
f:id:tiro105:20150226195151p:plain

ドメイン名の設定

VPC>Your VPCs>ActionからDNSの設定をONにする
f:id:tiro105:20150226200927p:plain
EC2>InstanceからDNSを確認する
f:id:tiro105:20150226200954p:plain
名前でアクセスできるようになった
f:id:tiro105:20150226201047p:plain

参考

Amazon Web Services 基礎からのネットワーク&サーバー構築

Amazon Web Services 基礎からのネットワーク&サーバー構築

VPC での DNS の使用 - Amazon Virtual Private Cloud