【AWS】セキュリティ周りのはじめの設定、VPCを作成してみる。

#概要
AWSアカウント作ったので、サーバ1台立ち上げたいため、セキュリティ周りの初期設定と、ネットワーク周りの設定を行っていきます。

#最終的に以下のような構成を目指します。
サーバーにテストサイトを作って、外部から接続できるようにします。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/508533/2d4dbdd9-c9f0-7f67-0e2b-3473edf2bb99.png)

#注意事項
検証用途のため、テストサイトのアクセスであるので、細かな手順やパラメータの説明は省略します。
本番環境での運用では、他のドキュメントなども参照し、セキュリティなども考慮した構成で、構築をご検討ください。

#今回実施すること
東京リージョンにVPCを作成します。

#VPCとは
https://docs.aws.amazon.com/ja_jp/vpc/latest/userguide/how-it-works.html
>Virtual Private Cloud (VPC) は、AWS アカウント専用の仮想ネットワークです。VPC は、AWS クラウドの他の仮想ネットワークから論理的に切り離されており、VPC 内には、Amazon EC2 リソースなどの AWS リソースを起動できます。VPC の IP アドレス範囲を指定して、サブネットを追加し、セキュリティグループを関連付けて、ルートテーブルを設定できます。

・東京の一角に、家を作るイメージ
・パブリックサブネット・プライベートサブネットを使い分けることができる。
・サブネット単位で内部〜外部、外部〜内部間でアクセス制御することができる。

#構成図
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/508533/d1e402e9-f3bb-47b7-056d-4e9c14c5603e.png)


#動作環境
GoogleChrome

##初期設定でおこなったこと

###・IAMグループの作成
IAMユーザーを作成する前に、IAMグループを作成する。
グループを作成することで、権限管理を行いやすくする。
マネージドポリシーは、「AdministratorAccess」を選択した。
※今回はテストサイトの作成用途だが、本番運用では、最低限の権限を付与する
###・IAMで管理用アカウントを作成
ルートアカウント（クレジットカード情報を登録した開設時のアカウント）以外に、
ログインできるアカウントを作成する。
###・ルートアカウント、管理者アカウントにMFA（２段階認証）を設定
もしメールアドレスとパスワードが第三者に把握されても、ログインできないようにするため、多要素認証を有効化する
####TIPS：MFA認証が有効にされたかを確認する方法
実際にログインする以外で、IAMのコンソールから確認方法
・「アクセス管理」＞「ユーザー」から一覧画面より確認
・「アクセスレポート」＞「認証情報レポート」から、CSVファイルをダウンロード
###・予想請求額をモニタリングする請求アラームの設定
AWSの予想請求額が閾値を超えた場合、メールで通知をしてくれるサービス。
予想請求額のモニタリングを有効化した後、CloudWatchを使用して請求アラームを作成することで実装が可能。

####※ここから先は料金が発生します。
###・CloudTrailの有効化
CloudTrailは操作ログを取得するサービスです。
有効化しておくことで、いつ、どのアカウントが、どのような操作を行ったかを確認することができる。
操作ログをS3に保管することができる。
###・GuardDutyの有効化
AWSアカウント、リソースに対する不審アクティビティを検知するために使用する。

#実践

##東京リージョンにVPCを作成する
###・AWSにログインします。
初回ログインの場合は、右上のドロップダウンメニューから東京リージョンを変更する
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/508533/daf64bb7-5523-36b9-e556-056817b0c2da.png)

###・現在の状況
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/508533/9f143900-c76f-7102-08ac-b3e846c4d840.png)


###・左上のメニューに「VPC」と入力し、「VPC」に移動します。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/508533/2236b998-7281-ec3a-08c8-b4e06f67df91.png)

###・一覧で「VPC」をクリックし、「VPCの作成」をクリックします。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/508533/f6f5cf92-6c2f-2787-1581-d334d9274795.png)

###・VPCを作成画面に値を入力します。

|項目  |入力内容 |
|---|---|
|名前タグ  |test-website-vpc |
| IPv4 CIDR ブロック  |10.0.0.0/16|

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/508533/235a84e0-3905-a4ab-8362-75791704e13b.png)

IPv4 CIDR ブロック
・/16〜/28のCIDRの範囲で入力
・割り当てられるプライベートIPアドレスの範囲で入力

|プライベートIPアドレスの範囲|
|---|
|10.0.0.0 - 10.255.255.255 (10/8 プレフィックス)|
|172.16.0.0 - 172.31.255.255 (172.16/12 プレフィックス)|
|192.168.0.0 - 192.168.255.255 (192.168/16 プレフィックス)|

※CIDRの範囲は、今回はテストサイトでの利用のため何でも構いませんが、
 本番環境では、他の業務システムに割り当てた、IPの範囲とは重複しないようにすることをおすすめします。

###・「VPCを作成」を押して、保存します。

###・現在の状況
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/508533/84704417-065d-a1c9-03c4-535ea861cb55.png)

以上でVPC作成は完了です。

#参照URL
[・AWS初学者を導く体系的な動画学習 AWS CloudTech - 株式会社Kurokawa Web Services](https://aws-cloud-tech.com/) 
[・AWSアカウントを作成したら最初にやるべきこと -セキュリティ編- - Qiita](https://qiita.com/yanyansk/items/3a989b70d2d3d49eff16)
[・AWS アカウントのルートユーザー - AWS公式サイト](https://docs.aws.amazon.com/ja_jp/IAM/latest/UserGuide/id_root-user.html)
[・IAM でのセキュリティのベストプラクティス　- AWS公式サイト](https://docs.aws.amazon.com/ja_jp/IAM/latest/UserGuide/best-practices.html)
[・AWS の予想請求額をモニタリングする請求アラームの作成　- AWS公式サイト](https://docs.aws.amazon.com/ja_jp/AmazonCloudWatch/latest/monitoring/monitor_estimated_charges_with_cloudwatch.html)
[・IAMユーザーのMFA（多要素認証）は有効になっていますか？現状を確認→是正→適切な状態を維持するまでの流れを整理してみた - クラスメソッド株式会社](https://dev.classmethod.jp/articles/mfa-for-iam-user-management/#toc-1)
[・[初心者向け]VPC作成からEC2インスタンス起動までを構成図見ながらやってみる（その1） - クラスメソッド株式会社](https://dev.classmethod.jp/articles/creation_vpc_ec2_for_beginner_1/#toc-11)