
AWS入門:全体像と、安全な始め方
リージョンとAZ、主要サービス、典型的なWeb構成、責任共有モデル。最初に決めておく安全設定と、料金の落とし穴までを整理する。
AWSは、サーバーやデータベースを必要な分だけ借りる仕組みです。使い始める前に、rootユーザーの保護、日常用のアクセス、料金の通知の3つを決めると、事故を大きく減らせます。
AWSとは
AWS(Amazon Web Services)は、サーバー、ストレージ、データベース、ネットワークなどを、インターネット経由で必要な分だけ借りられるクラウドサービスです。自分でサーバーを買って置く代わりに、使った分だけ支払います。数分でサーバーを起動でき、使い終わったら止められます。
借りられるものは非常に多く、サービスの数も増え続けています。最初から全部を覚える必要はありません。この記事では、まず全体の構造と、最初に覚える主要なサービス、安全な始め方に絞ります。
サービスの名前、画面、料金、無料枠は変わります。無料枠の制度は、2026年10月に公式の発表で確認しました。ほかの内容は一般的な解説なので、実際に使うときは、最新の公式ドキュメントと料金のページで確認してください。
全体の構造:リージョンとアベイラビリティゾーン
AWSは、世界中に分かれた拠点でできています。
- リージョン:地理的に分かれた地域(東京、大阪、バージニアなど)。リージョンごとに、サービスもデータも独立している
- アベイラビリティゾーン(AZ):1つのリージョンの中にある、物理的に分かれたデータセンターの集まり。電源やネットワークも分かれていて、1つのAZで障害が起きても、他のAZは動き続けるように作られている
- エッジ拠点:利用者の近くでコンテンツを配信するための拠点(CloudFrontなどで使う)
選ぶときの考え方は次のとおりです。
- リージョンは、利用者に近い場所と、法令やデータの置き場所の要件で決める。サービスや料金がリージョンで違うこともある
- 止まりにくくしたいときは、1つのリージョンの中で、複数のAZに分けて置く
- データは、別のリージョンへ明示的にコピーしない限り、そのリージョンの外に出ない
最初に覚える主要サービス
| サービス | 役割 | たとえると |
|---|---|---|
| EC2 | 仮想サーバーを借りる | 好きなOSを入れられるPC |
| S3 | ファイルを保存する(オブジェクトストレージ) | 容量が事実上無制限のファイル置き場 |
| VPC | 自分専用の仮想ネットワーク | 社内ネットワーク |
| IAM | 誰が何をしてよいかを決める | 入退室の管理 |
| RDS | 管理を任せられるデータベース | バックアップや更新を代行してくれるDB |
| Lambda | コードだけを置いて、呼ばれたときに動かす | サーバーのない関数 |
| CloudFront | 世界中に近い場所から配信する(CDN) | 各地の配送拠点 |
| Route 53 | ドメイン名とIPアドレスを結ぶ(DNS) | 電話帳 |
| CloudWatch | ログ、指標、アラーム | 監視室 |
ほかにも多くのサービスがあります。上の表は、最初の入口にすぎません。
典型的なWebアプリの構成
小さなWebアプリの典型的な構成を見ると、サービスどうしのつながりが分かります。
- 利用者のリクエストは、CloudFrontで受け、静的なファイルは近くから返す
- 動的な処理は、ロードバランサー(ALB)が、複数のAZにあるサーバー(EC2)へ振り分ける
- データベース(RDS)は、外から直接つなげない非公開のサブネットに置く
- 画像やバックアップは、S3に置く。ログと指標は、CloudWatchに集める
責任共有モデル
クラウドでは、AWSと利用者で、守る範囲を分けています。
| 範囲 | 担当 | 例 |
|---|---|---|
| クラウドのセキュリティ | AWS | データセンターの建物、ハードウェア、仮想化の基盤 |
| クラウドの中のセキュリティ | 利用者 | アクセス権の設定、OSの更新、データの暗号化、ネットワークの公開範囲 |
「AWSを使っているから安全」ではありません。たとえば、S3のバケットを誤って公開したり、強い権限のアクセスキーを漏らしたりするのは、利用者側の設定の問題です。サービスによって、利用者の担当する範囲は変わります(EC2はOSの更新まで自分で、Lambdaはコードと権限が中心)。
最初にやる安全設定
アカウントを作ったら、サービスを使う前に、次の3つを決めます。
- rootユーザーを守る:最初に作ったメールアドレスのアカウントがrootユーザーで、すべての権限と請求の情報を持ちます。強いパスワードにして、必ず多要素認証(MFA)を設定します。日常の作業には使いません。
- 日常用のアクセスを別に作る:公式は、人が使うアクセスには、長く使える認証情報(アクセスキー)ではなく、一時的な認証情報を使うことを勧めています。複数アカウントや複数人で使うなら、IAM Identity Centerでの管理が推奨されています。権限は、必要なものだけに絞ります。
- 料金の通知を設定する:予算(AWS Budgets)で、上限の金額と通知先を決めておくと、使いすぎにすぐ気づけます。
IAM Identity Centerを設定した後は、コマンドラインのAWS CLIも、ブラウザでのサインインで使えます。
# IAM Identity Centerでの接続を設定する(画面の案内に従って入力する)
aws configure sso
# 設定した接続でサインインする(<プロファイル名>は、自分で付けた名前)
aws sso login --profile <プロファイル名>
# いま、どのアカウントの誰として操作しているかを確かめる
aws sts get-caller-identity --profile <プロファイル名>アクセスキーとシークレットは、ソースコードやGitに入れてはいけません。漏れると、第三者に使われて高額な請求につながることがあります。キーを作る必要があるときは、権限を絞り、使わなくなったら削除します。
料金の考え方
AWSは使った分だけ課金されます。新しいアカウントには無料で試せる仕組みがあります。公式の発表によると、新規のお客様は、サインアップ時に最大200ドル分のクレジット(100ドルを付与、残りは対象サービスの利用で獲得)を使えます。無料アカウントプランは、サインアップから6か月後か、クレジットを使い切ったときの早い方で終了し、有料プランに移らない限り、課金されません。制度の細部は変わるので、公式のページで確認してください。
よくある予想外の課金の原因は次のとおりです。
- 起動したままのサーバー:EC2は、動かしている時間に応じて課金される。使い終わったら止めるか、削除する
- データの転送:AWSの外へ出るデータには、転送料金がかかることがある
- ネットワークの部品:NATゲートウェイのように、置いているだけで時間課金され、通したデータ量でも課金されるものがある
- 忘れたリソース:ストレージ、ロードバランサー、固定IPなどが、使っていなくても残っていると課金が続く
練習で作ったものは、終わったらまとめて削除します。リソースにタグを付けておくと、何を消せばよいかが分かりやすくなります。
学習の進め方
- 無料のプランで、アカウントを作り、上の3つの安全設定をする
- S3にファイルを置き、公開しない設定のまま、自分だけが読めることを確かめる
- EC2でサーバーを1台起動して、つないで、終わったら削除する
- 小さなWebアプリを、前の構成図の形で作ってみる
- Lambdaなど、サーバーを持たない形も試す
確認リスト
- rootユーザーに、強いパスワードとMFAを設定したか
- 日常の作業で、rootユーザーを使っていないか
- 人が使うアクセスは、一時的な認証情報にしたか。アクセスキーを使うなら、権限を絞ったか
- アクセスキーが、コードやGitに入っていないか
- 予算と通知を設定したか
- 使う場所のリージョンを決めたか。意図しないリージョンで作っていないか
- 練習で作ったリソースを、終わったら削除したか