AWS リソースへのセキュアなアクセスの設計
Amazon Virtual Private Cloud(Amazon VPC)
VPCはAWS上にオンプレミスと同じようにプライベートネットワーク空間を作成できる • ネットワーク空間は論理的に分離されて構成され,お客さま専用のネットワーク空間であり、IPアドレスもお客さま自身で設定することができる。外部とのネットワークと完全に分離され、アクセスが遮断されて安全。 • •インターネット ゲートウェイという部品を接続することでVPCにインターネットと接続する出入り口を作ることができる • 専用線やインターネットVPNもVPCへの接続がサポートされているため、オンプレミスやお客さま拠点とプライベートネットワークとして接続でき • VPCで作成したネットワーク空間に、サブネットと呼ばれるネットワークセグメントを作ることもできる。またサブネットごとにインターネットと接続できるパブリックサブネット、インターネットと遮断したプライベートサブネットという形で構成できる。 • VPCで作成したプライベートネットワーク空間はリージョン内にある複数のアベイラビリティーゾーン(AZ)をまたいで構成できる ![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1801328/3a8026fe-8d94-0bb1-52fb-06caf09b5876.png)
パブリックサブネット
• パブリックインターネットへの直接アクセスをサポート • インターネットゲートウェイへのルーティングテーブルエントリで指定するプライベートサブネット
• インターネットゲートウェイへのルーティングテーブルエントリがない • NAT 経由でパブリックインターネットに間接アクセスするセキュリティグループとネットワーク
AWS VPC(仮想プライベートクラウド)
セキュリティグループ
インスタンスレベルで動作 ルールの許可のみがサポート トラフィックを許可するかどうかを決める前に、すべてのルールを評価ネットワークアクセスコントロールリスト (ACL)
インスタンスレベルで動作 ルールの許可と拒否がサポート 最も低い番号のルールから順にルールを処理セキュリティグループおよびネットワーク ACL が提供するセキュリティレイヤー
インターネットゲートウェイからのトラフィックは、ルーティングテーブルのルートを使用して適切なサブネットにルーティングされる。サブネットに対してどのトラフィックが許可されるかは、そのサブネットに関連付けられているネットワーク ACL のルールによってコントロールされる。 インスタンスに対してどのトラフィックが許可されるかは、そのインスタンスに関連付けられているセキュリティグループのルールによってコントロールされる。 ![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1801328/861768d5-fde4-a9ec-537b-e34f6d5f7c4f.png)
Amazon VPC でトラフィックをやり取りするサービス
• インターネットゲートウェイ: インターネットに接続• 仮想プライベートゲートウェイ: VPN/Direct Connect の終端ポイントに接続
• AWS Direct Connect: オンプレミスネットワークへの専用ネットワーク接続
• VPC ピア接続: 他の VPC に接続
• NAT ゲートウェイ: プライベートサブネットからインターネットへの間接アクセスを許可
プライベートサブネット、つまり、インターネットに接続できないサブネットの中に配置したシステムが、これを経由することでインターネットに安全に出れるようになります。
・NAT インスタンス:スクリプトを使用してインスタンス間のフェイルオーバーを管理します。
セキュアなアプリケーション階層の設計
AWS Identity and Access Management (IAM)
AWS サービスやリソースへのアクセスを安全に管理できる。IAM を使用すると、AWS のユーザーとグループを作成および管理し、アクセス権を使用して AWS リソースへのアクセスを許可および拒否できる。IAM ユーザーとそのアクセスの管理
IAM でユーザーを作成し、ユーザーに個別のセキュリティ認証情報 (アクセスキー、パスワード、多要素認証デバイス) を割り当てるか、一時的セキュリティ認証情報をリクエストすることによって、AWS のサービスやリソースへのアクセス権をユーザーに付与し、ユーザーにどの操作の実行を許可するかを管理者がコントロールできる。IAM ロールとそのアクセス許可の管理
IAM でロールを作成し、アクセス許可を管理することで、そのロールを担うエンティティまたは AWS サービスの実行可能なオペレーションをコントロール。ロールをどのエンティティに適用するかについても定義適切なデータセキュリティオプションの選択
転送中のデータ
1.AWS インフラストラクチャへのデータ転送、AWS インフラストラクチャからのデータ転送
1-1ウェブ経由の SSL/TLS
1-2オンプレミス接続用の IPsec
VPN
仮想プライベート・ネットワーク(VPN)接続を使用して、VCNをオンプレミス・ネットワークの拡張にできます。このために、Oracle Cloud Infrastructureでは、IPSec VPNであるVPN接続が提供されます。VPNを使用してオンプレミス・ネットワークを拡張すると、次の利点があります。
リース明細が不要な場合は、パブリック・インターネット明細を使用できます。
関与するIPアドレス・スペースはプライベートであり、外部には公開されません。
ネットワーク間の通信は暗号化されます。
サイトからサイトへのVPNを使用すると、複数のユーザーが複数の接続ではなく単一の接続を通じてクラウド・リソースにアクセスできるため、管理オーバーヘッドが低減します。
AWS Direct Connect
AWS への接続にインターネットを使用しない、代替的な方法を提供するネットワークサービス。従来はインターネット上で転送されていたデータを、お客様の設備と AWS 間のプライベートネットワーク接続を通じて配信.。プライベートネットワーク接続はコストを削減し、帯域幅を増加させ、インターネットベースの接続よりも一貫性のあるネットワークサービスを提供することができる。2 AWS API へのデータ送信
・AWS API コールでは HTTPS を使用 ・全てのAPIコールは Sigv4 で署名保管中のデータ
Amazon S3 に保存されたデータはデフォルトでプライベートで、アクセスするには AWS 認証情報が必要データの暗号化
サーバー側の暗号化
• Amazon S3 で管理するキー(SSE-S3) • AWS KMS で管理するキー(SSE-KMS) • 顧客が提供するキー (SSE-C)クライアント側の暗号化
• AWS KMS で管理するカスタマーマスターキー (CSE-KMS) • クライアント側のマスターキー (CSE-C)AWS Key Management Service (AWS KMS)
・データ暗号化に使用する暗号化キーを管理してくれるサービス・データの暗号化の鍵(データキー) と 暗号化のための鍵(マスターキー) を管理
AWS CloudTrail と統合されており、すべてのキーの使用ログを表示できるため、規制およびコンプライアンスの要求に応えるために役立つ。AWS サービスの多くは、AWS KMS を使用してデータの暗号化をサポートしている
KMSとの違い
・AWS管理のサーバを共有で利用し、そこで暗号化キーを管理。
・システム的に他の組織へのアクセス制限はされていますが、物理的には同じサーバ上に存在。
・CloudHSMに比べると安価。