aws edge サービス入門

41
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Solutions Architect Takechika Kunimasa AWS の Edge サービス入門

Upload: others

Post on 03-Feb-2022

2 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: AWS Edge サービス入門

© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.

Solutions Architect

Takechika Kunimasa

AWS の Edge サービス入門

Page 2: AWS Edge サービス入門

自己紹介

My Name国政 丈力 – Takechika Kunimasa

My Roleソリューションアーキテクト

My Clientsエンタープライズのお客様を担当、主に流通&サービス

My Favorite AWS ServicesVPC, Route 53, CloudFront, WorkSpaces

Page 3: AWS Edge サービス入門

想定するオーディエンス

• Webサイトの高速化やセキュリティ対策に関心がある

• 基本的なWeb技術を理解している

• URL、HTTP/HTTPS、リクエスト/レスポンス、DNS、DDoS攻撃 等

セッションの目的

• AWSのEdgeサービスとは何か、概要とメリットが理解できる

• Edgeサービスをどのようなシステムに活用できるか理解できる

想定するオーディエンス と セッションの目的

Page 4: AWS Edge サービス入門

• AWS の Edgeサービス

• Web アクセスの仕組みと課題

• Amazon CloudFront

• AWS WAF

• まとめ

Agenda

AmazonCloudFront

AWS WAF

Page 5: AWS Edge サービス入門

AWS の Edge サービス

Page 6: AWS Edge サービス入門

AWS の EdgeサービスAWSのエッジロケーションから提供されるサービス群ユーザーが最初にアクセスするサービスをユーザーに近い場所から提供

AWS RegionEdge Location

AWS WAF(WAF)

AmazonRoute 53

(DNS)

AmazonCloudFront

(CDN)

AWS Shield(DDoS対策)

AmazonEC2

AmazonVPC

AmazonRDS

AmazonS3

Internet

ユーザー

Page 7: AWS Edge サービス入門

North AmericaCities: 19PoPs: 29

South AmericaCities: 2PoPs: 3

Europe / Middle East / Africa

Cities: 15PoPs: 24

CloudFront リージョナルエッジキャッシュ

Regional Edge Caches: 11

Edge Location

AWS Region / Regional Edge Cache

Regional Edge Cache

Asia PacificCities: 12PoPs: 21

77 Edge Locations

エッジロケーションユーザーに少ない待ち時間でサービスを提供するためグローバルに多くのエッジロケーションを配置

Page 8: AWS Edge サービス入門

Web アクセスの仕組みと課題

Page 9: AWS Edge サービス入門

Internet

Webアクセスの仕組み

Web Browser⑤IPアドレスへHTTPリクエスト

ブラウザからURLを指定してアクセス要求、名前解決を行い、インターネット経由でWebサーバーに接続しコンテンツを取得、ブラウザでレンダリングして表示

②ドメイン名問い合わせ

Web Server

DNS Server

①ブラウザでURLへアクセスを要求

③DNS名前解決

⑥Web Serverからレスポンスコンテンツ取得⑦コンテンツをブラウザで

レンダリングして表示

④対応するIPアドレスを応答

Page 10: AWS Edge サービス入門

インターネットの仕組み

インターネットの内側はとても複雑

インターネットは、個別の組織によって管理されたネットワークを複数相互に接続することで実現されている

PC

Web Server

Cars

Devices モバイル

Data Center

Cloud

The Internet

Page 11: AWS Edge サービス入門

• ネットワークのネットワーク (Inter-network)

• ISP同士がピアリングやトランジットにより接続。ISP毎のネットワークの品質 ※ は様々

• 宛先までの経路は時々の状況により変化、品質は常に一定ではない

• 特に、距離の離れた通信は遅延の影響を受けやすい

• 誰からでもアクセスできる

• 同じプロトコル(IP)でアクセスでき、誰からでも情報がやり取りできることが、インターネットの大きなメリット

• 逆に言うと、誰からでも攻撃される可能性があるということ

• 最近はアプリ脆弱性をついた攻撃、DDoS攻撃も多い

インターネットの仕組み高品質な通信の確保とセキュリティ脅威からの保護が課題

※品質とは、遅延、スループット、損失率などを表す

Page 12: AWS Edge サービス入門

大規模なWebサイトでの課題

• レスポンスの遅延、不安定なレスポンス

• 大量アクセスへの対応

• アプリのセキュリティ対策

• DDoS 攻撃の対策

インターネット経由で大規模なWebサイトを利用する場合は、レスポンス、キャパシティ、アプリセキュリティ、DDoS対策が課題

Page 13: AWS Edge サービス入門

レスポンスの遅延、不安定なレスポンス

• ネットワーク遅延は、(物理的、ネットワーク的な)距離に依存

• コンテンツの元サーバー(オリジン)が遠いと、応答に時間がかかる

• 応答時間の多くが、ネットワーク転送の待ち時間を占める場合も

インターネット経由でのアクセスにおけるネットワーク遅延の影響

WebServer

Client

Page 14: AWS Edge サービス入門

大量アクセスへの対応

• Webコンテンツには、あまり変化しない静的なデータが多く含まれる(画像・動画、CSS、javascript 等のファイル)

• 同じデータを何度も取得するのは、ネットワーク帯域、サーバーリソースの無駄な消費

大量のアクセスをさばくためには、不要なトラフィックをオリジンに到達させない効率的な仕組みが必要

動的コンテンツ

画像

動画

User InputSSL

CSSJavascript

HTML

Page 15: AWS Edge サービス入門

アプリケーションのセキュリティ対策

• アプリケーション脆弱性のスキャン: 攻撃を仕掛けるターゲットを見極める

• アプリケーション脆弱性をついた攻撃: SQLインジェクション、クロスサイトスクリプティング等

• アプリケーションに対するDDoS攻撃: 一見適切だが悪意のある要求でアプリリソースを枯渇させる (HTTP GET、DNSクエリフラッド)

社会的信用の失墜、サイト閉鎖による機会損失などを防ぐためWebアプリケーションへの攻撃に対する対策が必要

Web Server Database攻撃者

攻撃コードの実行

脆弱性スキャン

アプリへのDDoS攻撃

Page 16: AWS Edge サービス入門

DDoS (Denial of Service) 攻撃の対策

• Volumetric DDoS attacks: 大量パケットでネットワークを輻輳させる

• State exhaustion DDoS attacks: ファイヤウォール、ロードバランサなど状態を管理するデバイスに負荷をかける

• Application layer DDoS attacks: アプリケーションリソースを枯渇させる

サービスの可用性を確保するためDDoS攻撃に対する対策が必要

Page 17: AWS Edge サービス入門

AWSのEdgeサービスによる解決

ネットワーク遅延影響の低減• ユーザーに近いロケーションからWebコンテンツを返す

オリジンでの無駄なリソース消費を低減• 繰り返しアクセスされるデータをキャッシュし、オリジ

ンへのアクセスを低減する

アプリケーションへの攻撃に対する対策• パケットをアプリケーションレベルで監視し、不正なア

クセスを遮断する

DDoS攻撃に対する対策• DDoS攻撃に対応できるインフラにより、DDoS攻撃の

影響を低減する

AmazonCloudFront

AWSShield

AWSWAF

大規模なWebサイトでAWSのEdgeサービスを活用

Page 18: AWS Edge サービス入門

Amazon CloudFrontによるCDN (Contents Delivery Network)

CDN導入の利点

• ユーザーを一番近いエッジロケーションに誘導することで 配信を高速化

• エッジサーバでコンテンツのキャッシングを行い オリジンの負荷をオフロード

クライアント

オリジンサーバ

CDN

AmazonCloudFront

① HTTPのリクエスト② HTTPのリクエスト

③ コンテンツの取得⑤ コンテンツの取得

④ コンテンツをキャッシュ⑥ HTTPのリクエスト

⑦ コンテンツの取得

レスポンス向上 負荷軽減クライアントからの距離

近い 遠い

大容量キャパシティを持つ地理的に分散したサーバー群(エッジ)からコンテンツをキャッシュしたり代理配信をするサービス

Page 19: AWS Edge サービス入門

AWS WAFによるWebアプリケーションの保護

• Webサーバーのフロントに置かれる

• アプリレベルのトラフィックを監視 (HTTP, URL, Cookie, クエリ文字列)

• ルールに基づいて、不正なアクセスを遮断しレポート

AWSWAF

通常のユーザー

Attacker

Web Server Database

Your application

アプリケーションレベルでパケットを解析不正なアクセスを遮断し、正しいアクセスのみを許可する

Page 20: AWS Edge サービス入門

• 自社製のDDoS緩和システムでサービスベースの防御

• 全てのパケットは検査され、学習アルゴリズムでスコアリングされる

• 他ユーザートラフィックは、インラインシステムが可用性、スループット、レイテンシに影響を与えずに迅速に対応

AWS ShieldによるDDoS攻撃対策Amazonのノウハウを詰め込んだDDoS攻撃を緩和するサービスデフォルトで有効になっており無料で利用できる

Page 21: AWS Edge サービス入門

Internet

Edge サービス 導入前攻撃を含む全てのトラフィックがオリジンに到達、オリジンが高負荷長い経路で遅延が大きくレスポンスも悪い

オリジンWeb Server

Attacker

Attacker

Attacker

全てのトラフィックがオリジンに到達し高負荷に多くのリソースが必要

攻撃者の通信もオリジンへ到達

オリジンへの経路が長く遅延が発生

Page 22: AWS Edge サービス入門

Internet

Edge サービス 導入後トラフィックはエッジから返され、オリジンへは一部のみ転送される攻撃者からのアクセスはエッジロケーションで遮断される

オリジンWeb Server

Attacker

Attacker

Attacker

キャッシュにないコンテンツのみオリジンにアクセス

攻撃者の通信はエッジで遮断されオリジンへ到達しない

エッジからコンテンツを取得するためレスポンスが早い

Page 23: AWS Edge サービス入門

事例: ジュピターショップチャンネル 様

• CloudFrontで、急務だったコ

ンテンツ配信の課題を改善

• AWS WAFを利用して、悪意の

あるアクセスのIPブロックや、

アプリ脆弱性をついた攻撃を

ブロック

• 標準機能でDDoS攻撃からサイ

トを保護

• オリジンもAWSで統一するこ

とで高い拡張性が得られる点

も高くご評価

DCで運用していたECサイトをAWSへ移行サイトの性能限界が上昇し、ピーク時でもインフラの安定稼働が可能に

Page 24: AWS Edge サービス入門

事例: MapBox 様

• 月平均ユーザー数(MAU)は2億以上

• 1日に数十億リクエストを受信

• 10 AWSリージョン、60+のエッジロケーションを利用

• S3にペタバイト級の地図データを保存

• CloudFrontを活用し地図タイルの配信を高速化とコストの最適化を実現

• アクセスログをRedshiftで分析、オペレーションや対応の改善に活用

• AWS WAFとの統合により、不正なコンテンツ取得からアセットを保護

グローバルなリージョンとエッジロケーションを活用して詳細な地図タイルデータを配信、ログ解析やWAF利用により運用を改善

Page 25: AWS Edge サービス入門

事例: AmazonECサイトをはじめ各種サービスのプラットフォームとしてCloudFrontを活用

Page 26: AWS Edge サービス入門

Amazon CloudFrontContents Delivery Network

Page 27: AWS Edge サービス入門

CloudFrontの仕組み

CDN導入の利点

• ユーザーを一番近いエッジロケーションに誘導することで 配信を高速化

• エッジサーバでコンテンツのキャッシングを行い オリジンの負荷をオフロード

クライアント

オリジンサーバ

CDN

AmazonCloudFront

① HTTPのリクエスト② HTTPのリクエスト

③ コンテンツの取得⑤ コンテンツの取得

④ コンテンツをキャッシュ⑥ HTTPのリクエスト

⑦ コンテンツの取得

レスポンス向上 負荷軽減クライアントからの距離

近い 遠い

大容量キャパシティを持つ地理的に分散したサーバー群(エッジ)からコンテンツをキャッシュしたり代理配信をするサービス

Page 28: AWS Edge サービス入門

CloudFrontの特徴

高性能な分散配信 (世界77拠点のエッジサーバ) ※2017年5月末時点

高いパフォーマンス (高いパフォーマンスの実績)

キャパシティアクセスからの解放 (予測不可能なスパイクアクセスへの対応)

ビルトインのセキュリティ機能 (WAF連携、DDoS対策)

設定が容易で即時利用可能 (GUIからの設定で15分程度でサービス利用可能)

充実したレポーティング (ログ、ダッシュボード、通知機能)

完全従量課金 (初期費用がなく安価かつスポットも利用可能)

Page 29: AWS Edge サービス入門

最適なエッジロケーションの割当

オリジンサーバ

クライアント

位置情報DB

CloudFront DNS

Edge Location

②IPアドレス問い合わせ(xxx.cloudfront.net)

③最適なEdgeアドレス応答(1.1.1.1)

⑥キャッシュがなければオリジンから取得

DNSリゾルバ

EDNS-Client-Subnetにより精度を向上

IP: 1.1.1.1

DNSを応用した仕組みで最適なエッジロケーションを割当

Page 30: AWS Edge サービス入門

CloudFront の様々な機能

• 動的コンテンツの配信 (フォワードオプション)

• 暗号化通信 (TLS/SSL、独自SSL証明書(3rd party, ACM※))

• プライベートコンテンツ提供 (署名付きURL/Cookie)

• GZIP 圧縮

• アクセス元地域の制限

• エラーページの配信

• IPv6 サポート

• HTTP/2 サポート

※ Amazon Certificate Manager

Page 31: AWS Edge サービス入門

AWS WAFWeb Application Firewall

Page 32: AWS Edge サービス入門

AWS WAFとは?

それらをAWSの「使っただけ」の支払い

実践的なセキュリティモデルを簡単に導入

ルールをフレキシブルにカスタマイズできる

DevOpsとの統合

お客様の要望に応じてAWSが実現したマネージドWAFサービス

Page 33: AWS Edge サービス入門

なぜWAFを使うのか

• WAFは、Webサイトやアプリケーションが、攻撃されてダウンしたりデータが流出したりすることがないように手助けをする

• WAFの一般的なユースケース

• SQLインジェクション(SQLI)、クロスサイトスクリプティング (XSS)対策

• Webクローラ、スクレイピング等のBOT対策

• DDoS緩和 (HTTP/HTTPS floods)

• PCI DSS対応

• PCI DSSのアプリケーション防護策の要件を満たす手法となっていることも、WAFが広く使われる理由の1つ

ファイアウォールや IPS/IDS で保護できないアプリへの攻撃や難読化された攻撃から保護するためにWAFを利用

Page 34: AWS Edge サービス入門

これまでのWAF配置

• WAF on EC2はELBでサンドイッチする構成

• 結果、構成が複雑になりレイテンシも上昇する

Edge Location

EC2ELBWAFELB

ELB Sandwich

オンプレミス環境

オリジン オリジンストレージ

WAF

CloudFront

Webスクレイピング

SQLI、XSS等の攻撃

正常なトラフィックユーザー

Attacker

不正なBot

EC2やオンプレミスでサーバーを構築しWAFを導入構築やサーバー管理、スケール対応などのインフラ管理が必要

Page 35: AWS Edge サービス入門

CloudFront with AWS WAF

• AWS外のリソースでもOK

• 動的なコンテンツでも静的なコンテンツでもOK

CloudFront

Edge Location WAF

ユーザー

Attacker

不正なBot Webスクレイピング

SQLI、XSS等の攻撃

正常なトラフィック

EC2ELBS3

AND/OR

オンプレミス環境

オリジン オリジンストレージ

不正なトラフィックはエッジロケーションにあるWAFでブロックサーバー管理やスケール対応は不要でWAF機能のみ利用

Page 36: AWS Edge サービス入門

リクエストの判定条件

AWS WAF のリクエスト判定条件

• クロスサイトスクリプティング

• クロスサイトスクリプティング攻撃のチェック

• IPアドレス

• 送信元IPアドレス、アドレスレンジ

• サイズ制限

• リクエストのサイズ (ヘッダー毎のサイズ、リクエストボディ)

• SQLインジェクション

• 不正なSQLステートメントのチェック

• 文字列マッチング

• URI, クエリ文字列, ヘッダー

• リクエストボディに含まれる文字列 (最初の8KB)

AWS WAF は複数の条件を組み合わせてリクエストの許可/拒否を判定

Page 37: AWS Edge サービス入門

WAF ACLを動的に更新して防御Lambdaファンクションと連携して動的にWAF ACLを更新

• ハニーポット

• アクセスログ解析

• サードパーティー情報

Page 38: AWS Edge サービス入門

バッドリクエストをよこすIPアドレスをブロック

1. CloudFrontのログがS3バケット

に保存される

2. Lambdaファンクションが保存

されたログを解析。エラーコー

ド毎にカウントされ、結果をS3

バケット内のファイルに保存

3. しきい値を超えたIPからのリク

エストをブロックするように、

WAF ACLを更新

4. CloudWatchに、ブロックして

いるIPアドレス数とアクセス数

を記録

エラーリクエスト数を記録し、エラーが一定数を超えたIPアドレスからのリクエストをブロックするようにWAF ACLを更新

Page 39: AWS Edge サービス入門

まとめ

• CloudFront はユーザーへのレスポンスを改善し、オリジンの負荷を削減

• CloudFront は AWS WAF との組み合わせや、組み込みの DDoS 対策により、高いセキュリティを実現

• 大容量の配信や大量アクセスがあるサイトでの活用が有用

• 小規模でもWAF/DDoS等のセキュリティ対策が必要なサイトで有用

Page 40: AWS Edge サービス入門

本セッションのFeedbackをお願いします

受付でお配りしたアンケートに本セッションの満足度やご感想などをご記入くださいアンケートをご提出いただきました方には、もれなく素敵なAWSオリジナルグッズをプレゼントさせていただきます

アンケートは各会場出口、パミール3FのEXPO展示会場内にて回収させて頂きます

Page 41: AWS Edge サービス入門