1
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

AWSでインターネットとサーバー構築

Posted at

#初めに
この記事は私がAWSでインターネットとサーバーを構築するまでを簡単にまとめたものとなっています。
メモとして書いていますので詳細な説明が少ないことはご留意ください。

また、この記事はAWS基礎からの基礎からのネットワーク&サーバー構築という本をもとに進めていきますのでより深く細かいところまで知りたいという方は是非読んでみてください。

#アーキテクチャ
本記事はこのようなアーキテクチャになるよう構築していきます。

pra-arc.png

#手順
・インターネットを構築する
・サーバーを構築する
・Webサーバーソフトのインストール

##インターネットの構築
AWSのVPCを用いて作成。今回は10.0.0.0/16の範囲で作成しました。
この作成したVPCを二つのサブネットに分割します。
(1)サブネットの作成
1.「サブネット」メニューから「サブネットの作成」をクリック
2.「名前タグ」にサブネット名、「IPv4 CIDRブロック」に割り当てるCIDRブロックを入力(ここでは「10.0.1.0/24」と入力)

###インターネットに接続するための回線を引き込む。
このままではサブネットをインターネットに接続することができないので「インターネットゲートウェイ」を用いて可能にします。

インターネットへの接続
1.「インターネットゲートウェイ」からインターネットゲートウェイを作成し先ほど作ったVPC領域をアクションからアタッチする。
2.「ルートテーブル」を作成し、「サブネット」から作成したルートテーブルをパブリックサブネットに割り当てる。
3.「サブネット」のルートテーブルを開き、送信先が「0.0.0.0/0」、ターゲットが「インターネットゲートウェイ」のルートを追加する。

これによってもともと破棄されるよう設定されていた「10.0.0.0/16」以外の宛先のパケットが破棄されなくなり、インターネットにつなげることができます。

##サーバーを構築する
仮想サーバーはAmazon EC2を用いて制作します。

インスタンスの作成
1.リージョンが「東京」であることを確認してインスタンスを作成する。(今回使用したAMIとインスタンスタイプはどちらも無料利用枠を使用しました。)
2.インスタンスの詳細情報を設定する。ここでは以下の三つを操作します。
(a)先ほど作成したVPCとパブリックサブネットを選択します。
(b)自動割当パブリックIPを有効にします。
(c)「ネットワークインターフェース」の「プライマリIP」を「10.0.1.10」とする(今回パブリックサブネットを10.0.1.0/24としているため10.0.1.0~10.0.1.255のいずれでもよい)
3.その他はデフォルトで作成する。
4.インスタンスを起動し、キーペアを作成、ダウンロードを行う。

##Webサーバーのインストール
ここではApacheをインストールしていきます。
AWSのサーバー上で下記コマンドを実行します。

$sudo yum -y install httpd
$sudo systemctl start httpd.service
$sudo systemctl enable httpd.service

これでApacheのインストール、自動的な起動する設定が完了しました。

しかし、先ほど作成したインスタンスの「セキュリティグループ」のデフォルト設定でポート22番しか開いておらずApacheの待ち受けている80番がブロックされて通信できないため設定を変えていきます。

ポートの開放
1.セキュリティグループを開き「インバウンド」からポートの編集を行う。
2.タイプに「カスタムTCPルール」、ポート番号に「80」、ソースに「0.0.0.0/0」を入力し保存する。

ここまででWebブラウザにパブリックIPアドレスを入力することでWebサイトにアクセスできるようになりました。

#最後に

これで最初に説明したアーキテクチャが完成しました。
この後にIPアドレスではなくパブリックDNSを作りそれでWebにアクセスできるようにしたりDBサーバーを作成したりを紹介した本で行っているので気になる方は是非読んでみてください。

また、この後に自分で開発したアプリを公開したい場合はこちらの記事を参考にいていただければできると思います。

自分でアプリを作りAWSでデプロイしたいが何もわからなかった自分として今回のAWSでデプロイする試みはインフラの基礎的な知識(ネットワークとは、サーバーとはなど)から学ぶことができたためとてもためになったと感じています。
しかし、時間が経つと忘れやすいのでちゃんと定着させることが今後の課題です!

1
3
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?