• 検索結果がありません。

そこが知りたい!AWSクラウドのセキュリティ

N/A
N/A
Protected

Academic year: 2021

シェア "そこが知りたい!AWSクラウドのセキュリティ"

Copied!
37
0
0

読み込み中.... (全文を見る)

全文

(1)

そこが知りたい!

AWS

クラウドのセキュリティ

(2)

Twitter

でAWS Cloud Roadshowに参加しよう!

公式アカウント

@awscloud_jp

最新技術情報、イベント情報、お得なクーポン情報など日々更新中!

#AWSRoadshow

皆さんのご意見聞かせてください!

(3)

名前:鈴木 宏昌

(スズキ ヒロアキ)

所属:AWSテクニカルトレーナー

好きなAWSのサービス:Amazon CloudWatch

前職:国内SIerでクラウドサービスの企画~運営を担当

自己紹介

(4)

Agenda

AWS

でのネットワークアクセス制御

VPC

(仮想プライベートクラウド)

サブネット

セキュリティグループ、ネットワークACL

AWS

リソースのアクセス制御

IAM

ユーザ

IAM

ロール

AWS

監査機能

CloudTrail

、AWS Config

Amazon Inspector

(5)

ネットワーク制御とAWSリソース制御

不要なトラフィックを遮断してセキュアな環境を構築

VPC

やセキュリティグループによりネットワークを制御

EC2

インスタンス(仮想サーバ)へのアクセスを遮断することは

できる

EC2

インスタンスの起動や停止などの、AWSリソース操作を

制御する機能ではない

セキュアな運用にはAWSリソースの制御も重要

AWS Identity and Access Management (IAM)

EC2

の起動や停止などのAWSリソース操作の制御が可能

(6)

AWS

利用におけるセキュリティ確保の全体像

コマンドライン/ SDK

キーペア

による認証

セキュリティグループによる

インスタンスの通信保護

仮想デスクトップ

ターミナル

アクセスキーID

シークレットキー

によるAPIの認証

マネジメントコンソール

EBS

EBS

EC2

(Linux)

EC2

(Windows)

IAMユーザID

Password

による認証

AW

S A

PI

VPC・サブネットによる

SSL

SSL

SSH

RDP

IA

M

(7)

ネットワーク制御によるセキュリティ確保の全体像

キーペア

による認証

仮想デスクトップ

ターミナル

EBS

EBS

EC2

(Linux)

EC2

(Windows)

SSH

RDP

VPC

・サブネットによる

ネットワークの通信保護

セキュリティグループによる

インスタンスの通信保護

(8)

Amazon Virtual Private Cloud (VPC)

AWS

上に仮想的なプライベートネットワーク空間を構築

EC2

やRDSなどのサービスはVPC内で起動

VPC

は他の仮想ネットワークなどからも論理的に隔離

VPN

の利用より社内からの閉域網でAWSを利用可能

社内インフラの拡張として利用できる

従来のネットワーク環境と同様の環境を構築できる

(9)

ルートテーブル

ネットワーク

ACL

ルートテーブル

ネットワーク

ACL

インターネット

ゲートウェイ

VPN

ゲートウェイ

VPC

の構成概要

サブネット

セキュリティグループ

インス

タンス

インス

タンス

サブネット

セキュリティグループ

インス

タンス

インス

タンス

Amazon

VPC

(10)

サブネット

VPC

内は大きく次の2つの領域に分割可能

パブリックサブネット

インターネットからアクセス可能な領域

ロードバランサーなどのサービスを配置

プライベートサブネット

インターネットから直接アクセスができない領域

インターネットから直接アクセスする必要がないリソースを配置し

保護

ロードバランサーを利用した場合、Webサーバーもプライベートサブネッ

トに配置可能

(11)

VPC

構成例1:Web3層システム

Web

踏み台

Web

NAT

パブリックサブネット

Internet

プライベートサブネット

AP

AP

アベイラビリティゾーンA

アベイラビリティゾーンA

アベイラビリティゾーンB

アベイラビリティゾーンB

Amazon

VPC

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

(12)

VPC

構成例2:オンプレミス環境との連携

VPN接続

専用線

自社データセンター

アベイラビリティゾーンA

アベイラビリティゾーンA

アベイラビリティゾーンB

アベイラビリティゾーンB

Amazon

VPC

仮想プライベート

ゲートウェイ(

VGW)

(13)

VPC

構成例3:ワークロードごとのVPC分割

人事

営業

会計

VPC1

VPC2

VPC3

自社ネットワーク

社外ネットワーク

(インターネット)

(14)

VPC

エンドポイントによるアクセス

Web

踏み台

Web

NAT

パブリックサブネット

プライベートサブネット

AP

AP

S3

DynamoDB

アベイラビリティゾーンA

アベイラビリティゾーンA

アベイラビリティゾーンB

アベイラビリティゾーンB

Amazon

VPC

VPC

エンドポイント

Internet

(15)

VPC

エンドポイント

VPC

とAWSサービスをプライベートに接続

VPC

エンドポイントがない場合は、インターネット経由で

アクセス

プライベートサブネットからもアクセス可能

以下のサービスに対応(2017/09/27時点)

S3

DynamoDB

(16)

セキュリティグループとネットワークACL

EC2

サブネット

サブネット

ネットワーク

ACL

(サブネットの境界を保護)

セキュリティグループ

(インスタンスを保護)

Amazon

VPC

Internet

(17)

セキュリティグループ

インスタンスの仮想ファイアウォールとして機能

複数のインスタンスをグルーピング可能

デフォルトですべてのインバウンド通信は禁止

ステートフル

Web

Web

Web

(18)

多層セキュリティグループ

Web

Web

AP

AP

AP

サーバー

ロード

バランサー

内部

ロードバランサー

sg-0000001

sg-00000002

sg-00000003

sg-00000004

タイプ:HTTP

ソース:

sg-00000001

タイプ:HTTP

ソース:sg-00000003

タイプ:

HTTP

ソース:0.0.0.0/0

Web

サーバー

セキュリティグ

ループID

sg-00000001からの

HTTP通信を許可

(19)

ネットワークACL

サブネット毎に設定するパケットフィルタ機能

サブネット毎にインバウンド、アウトバウンド通信を制御

デフォルトはすべて許可

(20)

セキュリティグループとネットワークACL

セキュリティグループ

ネットワークACL

対象

サーバレベルで効果

サブネットレベルで効果

タイプ

ホワイトリスト型

AllowのみをIN・OUTで指定可能

ブラックリスト型

Allow/DenyをIN・OUTで指定可能

ステート

制御

ステートフルなので、戻りのトラ

フィックを考慮しなくてよい

ステートレスなので、戻りのトラ

フィックも明示的に許可設定する

適用順

全てのルールを適用

番号の順序通りに適用

適用範囲

インスタンス管理者がセキュリティグ

ループを適用すればその管理下になる

サブネット内のすべてのインスタン

スがACLの管理下に入る

(21)

AWS

利用におけるセキュリティ確保の全体像

コマンドライン/ SDK

キーペア

による認証

セキュリティグループによる

インスタンスの通信保護

仮想デスクトップ

ターミナル

アクセスキーID

シークレットキー

によるAPIの認証

マネジメントコンソール

EBS

EBS

EC2

(Linux)

EC2

(Windows)

IAMユーザID

Password

による認証

AW

S A

PI

VPC・サブネットによる

ネットワークの通信保護

SSL

SSL

SSH

RDP

IA

M

(22)

IAM

によるセキュリティ確保の全体像

コマンドライン/ SDK

アクセスキーID

シークレットキー

によるAPIの認証

マネジメントコンソール

EBS

EBS

EC2

(Linux)

EC2

(Windows)

IAMユーザID

Password

による認証

AW

S A

PI

SSL

SSL

IA

M

(23)

AWS Identity and Access Management (IAM)

AWS

リソースの操作をセキュアに行うための

認証・認可の仕組み

AWS

利用者の認証と、アクセスポリシーを管理

AWS

操作のためのユーザー・グループ・ロールの作成が可能

グループ、ユーザーごとに、実行出来る操作を規定できる

ユーザーごとに認証情報の設定が可能

(24)

AWS

における認証の種類

種類

説明

メールアドレス&パスワード

root

ユーザ

として

AWS

にアクセス

IAM

ユーザ名&パスワード

IAM

ユーザとして

AWS

マネージメントコンソールに

アクセス

アクセスキー

ID

&シークレットアクセスキー

CLI

API

などのプログラムによる

AWS

へのアク

セスに利用

root

ユーザ

アカウント取得時に作成されるユーザ

• AWS

リソースのフルアクセス権を持つユーザ

(25)

IAM

ユーザ/グループ

IAM

ユーザ

AWS

管理などを行うユーザ

アプリケーションからの接続用など必

ずしも人の操作用とは限らない

IAM

グループ

IAM

ユーザーの集合

グループ全体の権限を指定する

root

ユーザ

管理者

グループ

開発

グループ

TAKAHASHI

TANAKA

WATANABE

KURODA

IAM

ユーザ

AWS

アカウント

IAM

ユーザ

(26)

IAM

ポリシー

権限を記述している JSON ドキュメント

IAM

ユーザ・グループなどに割り当てる

{

"Version": "2012-10-17",

"Statement": {

"Effect": "Allow",

"Action": "s3:ListBucket",

"Resource": "arn:aws:s3:::example_bucket"

}

}

開発グループ

IAM

ポリシー

(27)

IAM

動作イメージ

管理者グループ

開発グループ

IAMポリシー

S3

TAKAHASHI

TANAKA

WATANABE

KURODA

EC2

AWSの全操作権限

S3の全操作権限

AW

S A

PI

IA

M

IAMポリシー

(28)

IAM

ポリシー例

{

"Version": "2012-10-17",

"Statement": [

{

"Action": "ec2:*",

"Resource": "*",

"Effect": "Allow",

"Condition": {

"StringEquals": {

"ec2:Region": "<REGION>"

}

}

}

]

}

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "ec2:TerminateInstances" ], "Resource": [ "*" ] }, { "Effect": "Deny", "Action": [ "ec2:TerminateInstances" ],

"Condition": {"NotIpAddress": {"aws:SourceIp": [ "192.0.2.0/24", "203.0.113.0/24" ]}}, "Resource": [ "*" ] } ] }

特定のリージョン内での

(29)

IAM

ロール

AWS

リソースへのアクセスを委任するために使用

ロールを引き受けることでロールにアタッチされた権限

を使用できる

第三者へアクセス権を付与する際にも利用可能

ロール

AWSアカウントAの

S3へのアクセス権

AWSアカウントBが

ロールを引き受け

AWSアカウントA

S3

クロスアカウントアクセス

アクセス

IAM

ポリシー

(30)

IAM

ロールによるセキュアなアプリケーション開発

EC2

にロールをアタッチすることでEC2上で動作する

アプリケーションに権限を付与できる

アクセスキー/シークレットアクセスキーを

ソースコードに埋め込む必要がない

ロール

S3FullAccess

AmazonDynamoDB

FullAccess

IAM

ポリシー

EC2インスタンス

AP

S3

DynamoDB

インスタンス

プロファイル

(31)

AWS IAM

のベストプラクティス

AWS

アカウントの (rootユーザ) アクセスキーの削除

個々の IAM ユーザーの作成

グループを使用して IAM ユーザーに権限を割り当てる

最小権限を付与

強力なパスワードポリシーを設定する

権限のあるユーザーに対して MFA を有効にする

IAMベストプラクティスの詳細は以下を参照

http://docs.aws.amazon.com/ja_jp/IAM/latest/UserGuide/best-practices.html

(32)

その他、セキュアな環境構築のポイント

トラブル発生時にはログ記録の確認も重要

AWS CloudTrail

AWS Config

定期的な脆弱性の存在の有無のチェックなどのセキュリ

ティ評価

Amazon Inspector

(33)

AWS CloudTrail

AWS

アカウントのすべてのリソースに対する AWS API 呼び出しを記録し、監視すること

ができる

AWS

CloudTrail

Amazon

VPC

Amazon

EC2

Amazon

RDS

Amazon

Redshift

管理コンソール

CLI 他

(34)

AWS Config

AWS

Config

AWS

の詳細なリソース設定履歴を確認でき、

設定を評価、監査、審査できるように

するサービス

Amazon

EC2

停止

起動

(35)

Amazon Inspector

AWS

にデプロイしたアプリケーションのセキュリティとコ

ンプライアンスを向上させるための自動セキュリティ評価

サービス

脆弱性やベストプラクティスからの逸脱をチェック

重要度や改善ステップを載せた詳細レポートを作成

(36)

まとめ

AWS

でのネットワークアクセス制御

VPC

(仮想プライベートクラウド)

サブネット

セキュリティグループ、ネットワークACL

AWS

リソースのアクセス制御

IAM

ユーザ

IAM

ロール

AWS

監査機能

CloudTrail

、AWS Config

Amazon Inspector

(37)

ご清聴ありがとうございました!

参照

関連したドキュメント

日頃から製造室内で行っていることを一般衛生管理計画 ①~⑩と重点 管理計画

子どもが、例えば、あるものを作りたい、という願いを形成し実現しようとする。子どもは、そ

ヒュームがこのような表現をとるのは当然の ことながら、「人間は理性によって感情を支配

このような情念の側面を取り扱わないことには それなりの理由がある。しかし、リードもまた

7.自助グループ

子どもたちは、全5回のプログラムで学習したこと を思い出しながら、 「昔の人は霧ヶ峰に何をしにきてい

海なし県なので海の仕事についてよく知らなかったけど、この体験を通して海で楽しむ人のかげで、海を

としたアプリケーション、また、 SCILLC