Open4

AWS Skill Builder

kakkkykakkky

Introduction to Amazon Virtual Private Cloud

https://lab.builder-labs.skillbuilder.aws/sa/lab/arn%3Aaws%3Alearningcontent%3Aus-east-1%3A470679935125%3Ablueprintversion%2Fspl-84%3A2.0.18-6fae6247/ja-JP

  • VPC ウィザードを使用して Amazon VPC を作成する

  • VPCざっくり

    • 自分で定義する仮想ネットワーク
      • このうえでAWSリソースを起動する
    • その仮想ネットワーク環境を制御できる
      • IP Addr 範囲
      • サブネット
      • ルートテーブル
      • ネットワークゲートウェイ
  • 今回使うVPC ウィザードって何(VPC用意するための)

    • 機能の1つであり、
    • VPCはパブリックサブネット(Internet Facing)とパブリックサブネット(Internal Network)からなるが、これを自動的に作成してくれるらしい
    • ぽちぽち選択しながら一気にVPCを作成していくことがウィザードを使用するということらしい

VPCについて

インターネットゲートウェイ

  • インターネットゲートウェイによって、VPCはインターネットに接続される
    • インターネットゲートウェイはVPCのコンポーネントである
    • 別コンポーネントなので、それ自体を水平スケーリングできるため可用性あり

サブネット

  • VPCに属する

  • 単一AZに属する

  • CIDR範囲がある

  • subnet-publicmを見ると

    • IPv4のCIDRが10.0.0.0/20
      • これは、
      • サブネットマスク /20 = 255.255.240.0
        • アドレス範囲:
          • 最小アドレス: 10.0.0.0
          • 最大アドレス: 10.0.15.255
    • 使用可能なのは 4096だが、実際は4090であり、これはかくサブネットに予約アドレスが複数あり、うち一つがNATゲートウェイによって使用されるため
      • これは、以下の6つが引かれている
        • ネットワークアドレス
          • サブネットの識別アドレス
          • 実際にこれで通信しない(ルーティングテーブルとかには乗る感じ。でかい住所みたいなもんだし)
        • ブロードキャストアドレス
          • LANでは使うけどAWSでは使われん
        • VPCルーター
          • サブネット内のデフォルトゲートウェイ(ルータ)
          • サブネットから外に出るための最初の出口
        • 将来利用のため予約済み
        • Amazon 用 DNS
          • VPC内の名前解決
        • NATゲートウェイ
          • パブリックサブネットにつく
          • プライベートサブネット内のインスタンスがインターネットへ出るための出口

ルートテーブル

  • 各サブネットは、ルートテーブルに関連付けられる

  • publicサブネットのルートテーブルをみると、

    • 0.0.0.0/0 : igw-xxxxx
      • VPC外に出る時はIGW(Internet GateWay)に転送される
      • このルートがあるサブネットをパブリックサブネットとする
      • 一般的にはこれデフォルトルートってやつ
        • すべての IPv4 アドレス(=自分のルーティング表にない宛先は全部ここへ)
        • VPC内のルートテーブルにないアドレスが指定されたら、デフォルトルートに行って、インターネットゲートウェイに繋がる感じ
    • 10.0.0.0/16. : local
      • VPC内部の通信
  • privateサブネットの方見ると、

    • 0.0.0.0/0 : nat-xxxx
      • 宛先がなかったら、NATを介してIGWに出る。
      • Internet ->IGW -> NAT ->
        • NATはあくまで出口であって入口ではない(アウトバウンド専用)
        • Network Address Translationだもんなあ。privateなアドレスをグローバルに変換するのが役目だしなあ
        • リソースをprivateに保ち、セキュアにするためのしゅだん
    • 10.0.0.0/16 : local
  • privateサブネットはInternet Facingではないため、セキュリティと独立性強化になる

  • 宛先IPがVPC範囲内ならVPC内で送信され、そうでなければインターネットに送信される

ネットワークAccess List

  • インバウンド / アウトバウンドのトラフィック制御
  • 以下はデフォルトで入っている
    • Inbound: 100 = ALLOW ALL
      -Outbound: 100 = ALLOW ALL
  • 小さい数字のルールが優先されるらしい

セキュリティグループ

  • サブネットレベルではなく、インスタスレベルで動作する。
  • インスタンスの仮想ファイアウォール
  • インバウンドルール
    • デフォルト:同じグループに紐づくEC2(仮想サーバー)同士なら相互通信可能
  • アウトバウンドルール
    • 全て許可
kakkkykakkky

Introduction to Amazon EC2

https://skillbuilder.aws/learn/9VNGAHHAUU/introduction-to-amazon-ec2-/F9UDRU24SQ?parentId=6UA62AC372

  • マシンイメージ(AMI)

    • docker imageのサーバー版的な感じかな
  • インスタンスタイプ

    • CPU、メモリ、ストレージ、ネットワーク容量のさまざまな組み合わせによって構成される
  • インスタンスを起動する時に1つ以上のセキュリティグループをつける

  • EC2では、Elastic Block Store と呼ばれる、ネットワークに接続された仮想ディスクにデータが保存される

  • インスタンスは終了後リソースが解放され、再起動できない。

    • 「停止」はまた再起動できる(EBSボリュームも残る)
  • インスタンスには、インターネットからのアクセスに必要なパブリック IPv4 DNS 名が付与される

例:
パブリックIP: 54.123.45.67
パブリックDNS: ec2-54-123-45-67.ap-northeast-1.compute.amazonaws.com

インスタンスのモニタリング

インスタンスのシステムログを見れる

ログ
[2J[01;01H[=3h[2J[01;01H[2J[01;01H[=3h[2J[01;01H[2J[01;01H[=3h[2J[01;01H[0m[35m[40m[2J[01;01H[=3h[2J[01;01H[0m[37m[40m  Booting `Amazon Linux (6.1.147-172.266.amzn2023.x86_64) 2023'


[    0.035377] RETBleed: WARNING: Spectre v2 mitigation leaves CPU vulnerable to RETBleed attacks, data leaks possible!
[    4.933544] systemd-journald[828]: Received client request to flush runtime journal.
[    5.103571] kauditd_printk_skb: 102 callbacks suppressed
[    5.103574] audit: type=1130 audit(1757099007.450:111): pid=1 uid=0 auid=4294967295 ses=4294967295 subj=system_u:system_r:init_t:s0 msg='unit=systemd-tmpfiles-setup-dev comm="systemd" exe="/usr/lib/systemd/systemd" hostname=? addr=? terminal=? res=success'
[    5.148149] audit: type=1334 audit(1757099007.490:112): prog-id=34 op=LOAD
[    5.149075] audit: type=1334 audit(1757099007.490:113): prog-id=35 op=LOAD
[    5.150088] audit: type=1334 audit(1757099007.490:114): prog-id=6 op=UNLOAD
[    5.151870] audit: type=1334 audit(1757099007.490:115): prog-id=7 op=UNLOAD
[    5.203736] audit: type=1130 audit(1757099007.550:116): pid=1 uid=0 auid=4294967295 ses=4294967295 subj=system_u:system_r:init_t:s0 msg='unit=systemd-machine-id-commit comm="systemd" exe="/usr/lib/systemd/systemd" hostname=? addr=? terminal=? res=success'
[    5.255187] audit: type=1130 audit(1757099007.600:117): pid=1 uid=0 auid=4294967295 ses=4294967295 subj=system_u:system_r:init_t:s0 msg='unit=systemd-tmpfiles-setup comm="systemd" exe="/usr/lib/systemd/systemd" hostname=? addr=? terminal=? res=success'
[    5.315855] audit: type=1334 audit(1757099007.660:118): prog-id=36 op=LOAD
[    5.319696] audit: type=1130 audit(1757099007.660:119): pid=1 uid=0 auid=4294967295 ses=4294967295 subj=system_u:system_r:init_t:s0 msg='unit=systemd-udevd comm="systemd" exe="/usr/lib/systemd/systemd" hostname=? addr=? terminal=? res=success'
[    5.381824] RPC: Registered named UNIX socket transport module.
[    5.382352] RPC: Registered udp transport module.
[    5.382769] RPC: Registered tcp transport module.
[    5.383201] RPC: Registered tcp NFSv4.1 backchannel transport module.
[    5.384569] audit: type=1130 audit(1757099007.730:120): pid=1 uid=0 auid=4294967295 ses=4294967295 subj=system_u:system_r:init_t:s0 msg='unit=systemd-journal-catalog-update comm="systemd" exe="/usr/lib/systemd/systemd" hostname=? addr=? terminal=? res=success'
[    5.401629] input: Power Button as /devices/LNXSYSTM:00/LNXPWRBN:00/input/input0
[    5.414485] ena 0000:00:05.0: Elastic Network Adapter (ENA) v2.14.1g
[    5.423324] ena 0000:00:05.0: ENA device version: 0.10
[    5.423808] ena 0000:00:05.0: ENA controller version: 0.0.1 implementation version 1
[    5.435971] i8042: PNP: PS/2 Controller [PNP0303:KBD,PNP0f13:MOU] at 0x60,0x64 irq 1,12
[    5.436985] i8042: Warning: Keylock active
[    5.438698] serio: i8042 KBD port at 0x60,0x64 irq 1
[    5.439135] serio: i8042 AUX port at 0x60,0x64 irq 12
[    5.443893] ACPI: button: Power Button [PWRF]
[    5.444376] input: Sleep Button as /devices/LNXSYSTM:00/LNXSLPBN:00/input/input1
[    5.445351] ACPI: button: Sleep Button [SLPF]
[    5.503218] ena 0000:00:05.0: LLQ is not supported Fallback to host mode policy.
[    5.519140] ena 0000:00:05.0: Elastic Network Adapter (ENA) found at mem 80400000, mac addr 02:38:68:f4:11:0f
[    5.633225] ena 0000:00:05.0 ens5: renamed from eth0
[    5.894865] zram_generator::config[1375]: zram0: system has too much memory (904MB), limit is 800MB, ignoring.
[    6.633043] ena 0000:00:05.0 ens5: Local page cache is disabled for less than 16 channels
[    8.518004] cloud-init[1533]: Cloud-init v. 22.2.2 running 'init' at Fri, 05 Sep 2025 19:03:30 +0000. Up 8.49 seconds.
[    8.594141] cloud-init[1533]: ci-info: ++++++++++++++++++++++++++++++++++++++Net device info++++++++++++++++++++++++++++++++++++++
[    8.596587] cloud-init[1533]: ci-info: +--------+------+----------------------------+---------------+--------+-------------------+
[    8.598630] cloud-init[1533]: ci-info: | Device |  Up  |          Address           |      Mask     | Scope  |     Hw-Address    |
[    8.600686] cloud-init[1533]: ci-info: +--------+------+----------------------------+---------------+--------+-------------------+
[    8.602682] cloud-init[1533]: ci-info: |  ens5  | True |        10.10.1.173         | 255.255.255.0 | global | 02:38:68:f4:11:0f |
[    8.604724] cloud-init[1533]: ci-info: |  ens5  | True | fe80::38:68ff:fef4:110f/64 |       .       |  link  | 02:38:68:f4:11:0f |
[    8.606763] cloud-init[1533]: ci-info: |   lo   | True |         127.0.0.1          |   255.0.0.0   |  host  |         .         |
[    8.608829] cloud-init[1533]: ci-info: |   lo   | True |          ::1/128           |       .       |  host  |         .         |
[    8.610866] cloud-init[1533]: ci-info: +--------+------+----------------------------+---------------+--------+-------------------+
[    8.612920] cloud-init[1533]: ci-info: +++++++++++++++++++++++++++++Route IPv4 info+++++++++++++++++++++++++++++
[    8.614699] cloud-init[1533]: ci-info: +-------+-------------+-----------+-----------------+-----------+-------+
[    8.616655] cloud-init[1533]: ci-info: | Route | Destination |  Gateway  |     Genmask     | Interface | Flags |
[    8.618496] cloud-init[1533]: ci-info: +-------+-------------+-----------+-----------------+-----------+-------+
[    8.620318] cloud-init[1533]: ci-info: |   0   |   0.0.0.0   | 10.10.1.1 |     0.0.0.0     |    ens5   |   UG  |
[    8.622095] cloud-init[1533]: ci-info: |   1   |  10.10.0.2  | 10.10.1.1 | 255.255.255.255 |    ens5   |  UGH  |
[    8.623970] cloud-init[1533]: ci-info: |   2   |  10.10.1.0  |  0.0.0.0  |  255.255.255.0  |    ens5   |   U   |
[    8.626237] cloud-init[1533]: ci-info: |   3   |  10.10.1.1  |  0.0.0.0  | 255.255.255.255 |    ens5   |   UH  |
[    8.627957] cloud-init[1533]: ci-info: +-------+-------------+-----------+-----------------+-----------+-------+
[    8.629626] cloud-init[1533]: ci-info: +++++++++++++++++++Route IPv6 info+++++++++++++++++++
[    8.631038] cloud-init[1533]: ci-info: +-------+-------------+---------+-----------+-------+
[    8.632501] cloud-init[1533]: ci-info: | Route | Destination | Gateway | Interface | Flags |
[    8.633922] cloud-init[1533]: ci-info: +-------+-------------+---------+-----------+-------+
[    8.635401] cloud-init[1533]: ci-info: |   0   |  fe80::/64  |    ::   |    ens5   |   U   |
[    8.636951] cloud-init[1533]: ci-info: |   2   |    local    |    ::   |    ens5   |   U   |
[    8.638419] cloud-init[1533]: ci-info: |   3   |  multicast  |    ::   |    ens5   |   U   |
[    8.639932] cloud-init[1533]: ci-info: +-------+-------------+---------+-----------+-------+
[    9.608663] cloud-init[1533]: Generating public/private ed25519 key pair.
[    9.609921] cloud-init[1533]: Your identification has been saved in /etc/ssh/ssh_host_ed25519_key
[    9.611363] cloud-init[1533]: Your public key has been saved in /etc/ssh/ssh_host_ed25519_key.pub
[    9.612847] cloud-init[1533]: The key fingerprint is:
[    9.613746] cloud-init[1533]: SHA256:iUCbMESTpvynZXWwDuU0ZEquFic+sH9p6a0YwpWRCzI root@ip-10-10-1-173.us-west-2.compute.internal
[    9.615549] cloud-init[1533]: The key's randomart image is:
[    9.616635] cloud-init[1533]: +--[ED25519 256]--+
[    9.617472] cloud-init[1533]: | o*....o         |
[    9.618306] cloud-init[1533]: |  o=+oo=         |
[    9.619586] cloud-init[1533]: |E= =+++ +        |
[    9.620441] cloud-init[1533]: |oo= Oo = o       |
[    9.621258] cloud-init[1533]: | ..O  = S        |
[    9.622273] cloud-init[1533]: |. +..+o.         |
[    9.623075] cloud-init[1533]: | o o==           |
[    9.623994] cloud-init[1533]: |  ..* .          |
[    9.624806] cloud-init[1533]: |   . o..         |
[    9.625613] cloud-init[1533]: +----[SHA256]-----+
[    9.626426] cloud-init[1533]: Generating public/private ecdsa key pair.
[    9.627792] cloud-init[1533]: Your identification has been saved in /etc/ssh/ssh_host_ecdsa_key
[    9.629253] cloud-init[1533]: Your public key has been saved in /etc/ssh/ssh_host_ecdsa_key.pub
[    9.630724] cloud-init[1533]: The key fingerprint is:
[    9.631598] cloud-init[1533]: SHA256:Up8Eye38tgKK49FzVE1JepYMRoLXXFbfmdEDUr1kz0g root@ip-10-10-1-173.us-west-2.compute.internal
[    9.633480] cloud-init[1533]: The key's randomart image is:
[    9.634422] cloud-init[1533]: +---[ECDSA 256]---+
[    9.635238] cloud-init[1533]: |       oo*++*=+..|
[    9.636223] cloud-init[1533]: |      . +++Bo.E**|
[    9.637046] cloud-init[1533]: |       ..o+ *.o=*|
[    9.637845] cloud-init[1533]: |       . +o+  ..o|
[    9.638652] cloud-init[1533]: |      . S o.     |
[    9.639446] cloud-init[1533]: |     . o.   o    |
[    9.640343] cloud-init[1533]: |    ..o... . .   |
[    9.641171] cloud-init[1533]: |    o..o  . .    |
[    9.641987] cloud-init[1533]: |   ...     .     |
[    9.642787] cloud-init[1533]: +----[SHA256]-----+
[   10.266344] cloud-init[1618]: Cloud-init v. 22.2.2 running 'modules:config' at Fri, 05 Sep 2025 19:03:32 +0000. Up 10.17 seconds.
[   10.842330] cloud-init[1632]: Cloud-init v. 22.2.2 running 'modules:final' at Fri, 05 Sep 2025 19:03:33 +0000. Up 10.79 seconds.
[   12.784927] cloud-init[1632]: Amazon Linux 2023 repository                     65 MB/s |  44 MB     00:00


Amazon Linux 2023.8.20250818
Kernel 6.1.147-172.266.amzn2023.x86_64 on an x86_64 (-)

ip-10-10-1-173 login: [   22.679069] cloud-init[1632]: Amazon Linux 2023 Kernel Livepatch repository   154 kB/s |  19 kB     00:00
[   23.674928] cloud-init[1632]: Dependencies resolved.
[   23.708841] cloud-init[1632]: ================================================================================
[   23.710399] cloud-init[1632]:  Package               Arch     Version                     Repository     Size
[   23.711922] cloud-init[1632]: ================================================================================
[   23.713408] cloud-init[1632]: Installing:
[   23.713459] cloud-init[1632]:  httpd                 x86_64   2.4.64-1.amzn2023.0.1       amazonlinux    47 k
[   23.715515] cloud-init[1632]: Installing dependencies:
[   23.716313] cloud-init[1632]:  apr                   x86_64   1.7.5-1.amzn2023.0.4        amazonlinux   129 k
[   23.717761] cloud-init[1632]:  apr-util              x86_64   1.6.3-1.amzn2023.0.1        amazonlinux    98 k
[   23.719213] cloud-init[1632]:  generic-logos-httpd   noarch   18.0.0-12.amzn2023.0.3      amazonlinux    19 k
[   23.720683] cloud-init[1632]:  httpd-core            x86_64   2.4.64-1.amzn2023.0.1       amazonlinux   1.4 M
[   23.722128] cloud-init[1632]:  httpd-filesystem      noarch   2.4.64-1.amzn2023.0.1       amazonlinux    13 k
[   23.722175] cloud-init[1632]:  httpd-tools           x86_64   2.4.64-1.amzn2023.0.1       amazonlinux    81 k
[   23.725122] cloud-init[1632]:  libbrotli             x86_64   1.0.9-4.amzn2023.0.2        amazonlinux   315 k
[   23.726577] cloud-init[1632]:  mailcap               noarch   2.1.49-3.amzn2023.0.3       amazonlinux    33 k
[   23.728034] cloud-init[1632]: Installing weak dependencies:
[   23.728884] cloud-init[1632]:  apr-util-openssl      x86_64   1.6.3-1.amzn2023.0.1        amazonlinux    17 k
[   23.730331] cloud-init[1632]:  mod_http2             x86_64   2.0.27-1.amzn2023.0.3       amazonlinux   166 k
[   23.731767] cloud-init[1632]:  mod_lua               x86_64   2.4.64-1.amzn2023.0.1       amazonlinux    60 k
[   23.733197] cloud-init[1632]: Transaction Summary
[   23.733912] cloud-init[1632]: ================================================================================
[   23.735351] cloud-init[1632]: Install  12 Packages
[   23.736164] cloud-init[1632]: Total download size: 2.3 M
[   23.736963] cloud-init[1632]: Installed size: 6.9 M
[   23.737693] cloud-init[1632]: Downloading Packages:
[   23.781277] cloud-init[1632]: (1/12): apr-util-openssl-1.6.3-1.amzn2023.0.1.x 438 kB/s |  17 kB     00:00
[   23.788459] cloud-init[1632]: (2/12): apr-util-1.6.3-1.amzn2023.0.1.x86_64.rp 2.1 MB/s |  98 kB     00:00
[   23.791066] cloud-init[1632]: (3/12): apr-1.7.5-1.amzn2023.0.4.x86_64.rpm     2.6 MB/s | 129 kB     00:00
[   23.803274] cloud-init[1632]: (4/12): generic-logos-httpd-18.0.0-12.amzn2023. 873 kB/s |  19 kB     00:00
[   23.809732] cloud-init[1632]: (5/12): httpd-2.4.64-1.amzn2023.0.1.x86_64.rpm  2.2 MB/s |  47 kB     00:00
[   23.826269] cloud-init[1632]: (6/12): httpd-core-2.4.64-1.amzn2023.0.1.x86_64  40 MB/s | 1.4 MB     00:00
[   23.828204] cloud-init[1632]: (7/12): httpd-filesystem-2.4.64-1.amzn2023.0.1. 544 kB/s |  13 kB     00:00
[   23.835216] cloud-init[1632]: (8/12): httpd-tools-2.4.64-1.amzn2023.0.1.x86_6 3.2 MB/s |  81 kB     00:00
[   23.850066] cloud-init[1632]: (9/12): mailcap-2.1.49-3.amzn2023.0.3.noarch.rp 1.5 MB/s |  33 kB     00:00
[   23.853937] cloud-init[1632]: (10/12): libbrotli-1.0.9-4.amzn2023.0.2.x86_64.  11 MB/s | 315 kB     00:00
[   23.865415] cloud-init[1632]: (11/12): mod_http2-2.0.27-1.amzn2023.0.3.x86_64 5.5 MB/s | 166 kB     00:00
[   23.869384] cloud-init[1632]: (12/12): mod_lua-2.4.64-1.amzn2023.0.1.x86_64.r 3.1 MB/s |  60 kB     00:00
[   23.872439] cloud-init[1632]: --------------------------------------------------------------------------------
[   23.874658] cloud-init[1632]: Total                                            14 MB/s | 2.3 MB     00:00
[   24.057651] cloud-init[1632]: Running transaction check
[   24.085500] cloud-init[1632]: Transaction check succeeded.
[   24.086557] cloud-init[1632]: Running transaction test
[   24.255681] cloud-init[1632]: Transaction test succeeded.
[   24.257084] cloud-init[1632]: Running transaction
[   24.439293] cloud-init[1632]:   Preparing        :                                                        1/1
[   24.454484] cloud-init[1632]:   Installing       : apr-1.7.5-1.amzn2023.0.4.x86_64                       1/12
[   24.466929] cloud-init[1632]:   Installing       : apr-util-openssl-1.6.3-1.amzn2023.0.1.x86_64          2/12
[   24.480288] cloud-init[1632]:   Installing       : apr-util-1.6.3-1.amzn2023.0.1.x86_64                  3/12
[   24.501252] cloud-init[1632]:   Installing       : mailcap-2.1.49-3.amzn2023.0.3.noarch                  4/12
[   24.521170] cloud-init[1632]:   Installing       : httpd-tools-2.4.64-1.amzn2023.0.1.x86_64              5/12
[   24.528611] cloud-init[1632]:   Installing       : libbrotli-1.0.9-4.amzn2023.0.2.x86_64                 6/12
[   24.652062] cloud-init[1632]:   Running scriptlet: httpd-filesystem-2.4.64-1.amzn2023.0.1.noarch         7/12
[   24.934388] cloud-init[1632]:   Installing       : httpd-filesystem-2.4.64-1.amzn2023.0.1.noarch         7/12
[   24.962484] cloud-init[1632]:   Installing       : httpd-core-2.4.64-1.amzn2023.0.1.x86_64               8/12
[   24.972498] cloud-init[1632]:   Installing       : mod_http2-2.0.27-1.amzn2023.0.3.x86_64                9/12
[   24.979518] cloud-init[1632]:   Installing       : mod_lua-2.4.64-1.amzn2023.0.1.x86_64                 10/12
[   24.994782] cloud-init[1632]:   Installing       : generic-logos-httpd-18.0.0-12.amzn2023.0.3.noarch    11/12
[   25.001549] cloud-init[1632]:   Installing       : httpd-2.4.64-1.amzn2023.0.1.x86_64                   12/12
[   25.552396] zram_generator::config[1737]: zram0: system has too much memory (904MB), limit is 800MB, ignoring.
[   25.984160] cloud-init[1632]:   Running scriptlet: httpd-2.4.64-1.amzn2023.0.1.x86_64                   12/12
[   25.987262] cloud-init[1632]:   Verifying        : apr-1.7.5-1.amzn2023.0.4.x86_64                       1/12
[   25.989164] cloud-init[1632]:   Verifying        : apr-util-1.6.3-1.amzn2023.0.1.x86_64                  2/12
[   25.991199] cloud-init[1632]:   Verifying        : apr-util-openssl-1.6.3-1.amzn2023.0.1.x86_64          3/12
[   25.993264] cloud-init[1632]:   Verifying        : generic-logos-httpd-18.0.0-12.amzn2023.0.3.noarch     4/12
[   25.993483] cloud-init[1632]:   Verifying        : httpd-2.4.64-1.amzn2023.0.1.x86_64                    5/12
[   25.993660] cloud-init[1632]:   Verifying        : httpd-core-2.4.64-1.amzn2023.0.1.x86_64               6/12
[   25.993849] cloud-init[1632]:   Verifying        : httpd-filesystem-2.4.64-1.amzn2023.0.1.noarch         7/12
[   25.994044] cloud-init[1632]:   Verifying        : httpd-tools-2.4.64-1.amzn2023.0.1.x86_64              8/12
[   25.994241] cloud-init[1632]:   Verifying        : libbrotli-1.0.9-4.amzn2023.0.2.x86_64                 9/12
[   25.994653] cloud-init[1632]:   Verifying        : mailcap-2.1.49-3.amzn2023.0.3.noarch                 10/12
[   25.994834] cloud-init[1632]:   Verifying        : mod_http2-2.0.27-1.amzn2023.0.3.x86_64               11/12
[   26.295256] cloud-init[1632]:   Verifying        : mod_lua-2.4.64-1.amzn2023.0.1.x86_64                 12/12
[   26.295447] cloud-init[1632]: Installed:
[   26.295635] cloud-init[1632]:   apr-1.7.5-1.amzn2023.0.4.x86_64
[   26.295905] cloud-init[1632]:   apr-util-1.6.3-1.amzn2023.0.1.x86_64
[   26.296099] cloud-init[1632]:   apr-util-openssl-1.6.3-1.amzn2023.0.1.x86_64
[   26.296300] cloud-init[1632]:   generic-logos-httpd-18.0.0-12.amzn2023.0.3.noarch
[   26.296503] cloud-init[1632]:   httpd-2.4.64-1.amzn2023.0.1.x86_64
[   26.296702] cloud-init[1632]:   httpd-core-2.4.64-1.amzn2023.0.1.x86_64
[   26.296900] cloud-init[1632]:   httpd-filesystem-2.4.64-1.amzn2023.0.1.noarch
[   26.297105] cloud-init[1632]:   httpd-tools-2.4.64-1.amzn2023.0.1.x86_64
[   26.297301] cloud-init[1632]:   libbrotli-1.0.9-4.amzn2023.0.2.x86_64
[   26.297522] cloud-init[1632]:   mailcap-2.1.49-3.amzn2023.0.3.noarch
[   26.297712] cloud-init[1632]:   mod_http2-2.0.27-1.amzn2023.0.3.x86_64
[   26.297910] cloud-init[1632]:   mod_lua-2.4.64-1.amzn2023.0.1.x86_64
[   26.298108] cloud-init[1632]: Complete!
[   26.446664] cloud-init[1632]: Created symlink /etc/systemd/system/multi-user.target.wants/httpd.service → /usr/lib/systemd/system/httpd.service.
[   26.614859] zram_generator::config[3202]: zram0: system has too much memory (904MB), limit is 800MB, ignoring.
ci-info: no authorized SSH keys fingerprints found for user ec2-user.
<14>Sep  5 19:03:50 cloud-init: #############################################################
<14>Sep  5 19:03:50 cloud-init: -----BEGIN SSH HOST KEY FINGERPRINTS-----
<14>Sep  5 19:03:50 cloud-init: 256 SHA256:Up8Eye38tgKK49FzVE1JepYMRoLXXFbfmdEDUr1kz0g root@ip-10-10-1-173.us-west-2.compute.internal (ECDSA)
<14>Sep  5 19:03:50 cloud-init: 256 SHA256:iUCbMESTpvynZXWwDuU0ZEquFic+sH9p6a0YwpWRCzI root@ip-10-10-1-173.us-west-2.compute.internal (ED25519)
<14>Sep  5 19:03:50 cloud-init: -----END SSH HOST KEY FINGERPRINTS-----
<14>Sep  5 19:03:50 cloud-init: 
  • セキュリティグループのインバウンドルールを設定し、HTTPトラフィックを許可すると、http://http://34.217.82.213/にアクセスできた

  • 「終了保護」を有効化していると、インタスタンスを終了できない(エラーになる

kakkkykakkky

Introduction to Amazon Simple Storage Service (S3)

http://lab.builder-labs.skillbuilder.aws/sa/lab/arn%3Aaws%3Alearningcontent%3Aus-east-1%3A470679935125%3Ablueprintversion%2FSPL-TF-100-STESS3-2%3A2.4.16-ddb4ea00/ja-JP

  • オブジェクトストレージサービス

    • 大量の非構造化データ(画像、動画、ログ、バックアップデータなど)をスケーラブルかつ低コストで保存するのに適している
  • 適切なリージョンを選択することにより、レイテンシーの最適化、コストの最小化、規制要件への対応などが実現できる

  • Amazon S3 ではセキュリティが優先されるらしい

  • オブジェクトURLにアクセスすると

    • https://reportbucket-687250239070.s3.us-east-1.amazonaws.com/new-report.png
    • AccessDeniedに。
    • これはデフォルトでプライベートになっているから
    • Block Public AccessがONになっているので、パブリックアクセスができなくなっている
      • バケットの設定は各オブジェクトの設定を上書きするので、これをオフにしないといけない
      • オフにして、オブジェクトをACL公開したら見れた
  • AWS Session ManagerでEC2に接続

    • VPCセキュリティグループで特定のポートを開かなくても踏み台ホストのインスタンスに接続できる
    • ポート22 は SSH用の入り口番号
    • SSH は サーバーにリモートログインするための暗号化通信方式
    • ただし Session Managerを使えば22番ポートを開けなくても安全に接続できる
sh-4.2$ aws s3 ls
2020-10-08 05:10:12 awslabs-resources-krxqqla59sui8d-us-east-1-687250239070
2023-10-19 19:05:17 awslabs-resources-r5b3y6ojjszcap-us-east-1-687250239070
2025-09-06 01:39:13 reportbucket-687250239070
sh-4.2$ aws s3 ls s3://reportbucket-687250239070
2025-09-06 01:41:09      86065 new-report.png
sh-4.2$
  • バケットポリシーを設定して、EC2からのアクセスを可能にする
    • IAM - role
      • EC2InstanceProfileRole:S3に接続するためにEC2インスタンスが使用するロール
      • arn:aws:iam::687250239070:role/EC2InstanceProfileRole

これをreport-bucketのポリシーに設定したらEC2からs3バケットにファイルをアップロードできた

{
 "Version": "2012-10-17",
 "Statement": [
   {
     "Sid": "Statement1",
     "Effect": "Allow",
     "Principal": {
       "AWS": "arn:aws:iam::687250239070:role/EC2InstanceProfileRole"
     },
     "Action": [
       "s3:PutObject",
       "s3:GetObject"
     ],
     "Resource": "arn:aws:s3:::reportbucket-687250239070/*"
   }
 ]
}
  • バージョニング
    • オブジェクトの複数のバリエーションを同じバケットに保持する機能
    • Amazon S3 バケットに保存されたすべてのオブジェクトについて全バージョンを保存、取得、復元可能
    • これはバケット全体で設定するもの

Principal
→ ポリシーが適用される対象(誰に適用するか) を指定する要素。
AWS アカウント、IAM ユーザー、IAM ロール、サービスプリンシパルなどを書けます。

kakkkykakkky

Introduction to AWS Identity and Access Management (IAM)

  • AWS でユーザーとユーザーのアクセス許可を管理できるウェブサービス

以下のようなマネージドポリシーがユーザーグループにアタッチされているので、そのユーザーグループに属するなら、以下の権限が付与される。

  • AmazonEC2ReadOnlyAccess
{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Effect": "Allow", # 許可するかしないか
            "Action": [      # AWSサービスに対して実行できるAPIコール
                "ec2:Describe*",
                "ec2:GetSecurityGroupsForVpc"
            ],
            "Resource": "*" # ポリシールールの対象となるエンティティの範囲
        },
        {
            "Effect": "Allow",
            "Action": "elasticloadbalancing:Describe*",
            "Resource": "*"
        },
        {
            "Effect": "Allow",
            "Action": [
                "cloudwatch:ListMetrics",
                "cloudwatch:GetMetricStatistics",
                "cloudwatch:Describe*"
            ],
            "Resource": "*"
        },
        {
            "Effect": "Allow",
            "Action": "autoscaling:Describe*",
            "Resource": "*"
        }
    ]
}
  • AmazonS3ReadOnlyAccess
{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "s3:Get*",
                "s3:List*",
                "s3:Describe*",
                "s3-object-lambda:Get*",
                "s3-object-lambda:List*"
            ],
            "Resource": "*"
        }
    ]
}
特徴 マネージドポリシー インラインポリシー
所有 AWS or カスタマーが管理 特定のユーザー/グループ/ロールに埋め込み
再利用 ✅ 複数にアタッチ可能 ❌ できない(そのエンティティ専用)
更新 一括反映可能 1つずつ編集
削除 ポリシーだけ削除可能 エンティティ削除と同時に削除
主な用途 標準的なアクセス権の付与 特例・例外的なケース
  • インラインポリシーは、例外的・個別的な権限付与に使うので、結果的に「一度きりの特例対応」で使われやすい。