aws edge サービス入門...aws...

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

Upload: others

Post on 25-Jan-2021

1 views

Category:

Documents


0 download

TRANSCRIPT

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

    Solutions Architect

    Takechika Kunimasa

    AWS の Edge サービス入門

  • 自己紹介

    My Name国政 丈力 – Takechika Kunimasa

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

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

    My Favorite AWS ServicesVPC, Route 53, CloudFront, WorkSpaces

  • 想定するオーディエンス

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

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

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

    セッションの目的

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

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

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

  • • AWS の Edgeサービス

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

    • Amazon CloudFront

    • AWS WAF

    • まとめ

    Agenda

    AmazonCloudFront

    AWS WAF

  • AWS の Edge サービス

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

    AWS RegionEdge Location

    AWS WAF(WAF)

    AmazonRoute 53

    (DNS)

    AmazonCloudFront

    (CDN)

    AWS Shield(DDoS対策)

    AmazonEC2

    AmazonVPC

    AmazonRDS

    AmazonS3

    Internet

    ユーザー

  • 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

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

    https://aws.amazon.com/about-aws/global-infrastructure/https://aws.amazon.com/about-aws/global-infrastructure/

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

  • Internet

    Webアクセスの仕組み

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

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

    ②ドメイン名問い合わせ

    Web Server

    DNS Server

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

    ③DNS名前解決

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

    レンダリングして表示

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

  • インターネットの仕組み

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

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

    PC

    Web Server

    Cars

    Devices モバイル

    Data Center

    Cloud

    The Internet

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

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

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

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

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

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

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

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

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

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

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

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

    • 大量アクセスへの対応

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

    • DDoS 攻撃の対策

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

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

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

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

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

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

    WebServer

    Client

  • 大量アクセスへの対応

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

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

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

    動的コンテンツ

    画像

    動画

    User InputSSL

    CSSJavascript

    HTML

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

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

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

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

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

    Web Server Database攻撃者

    攻撃コードの実行

    脆弱性スキャン

    アプリへのDDoS攻撃

  • DDoS (Denial of Service) 攻撃の対策

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

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

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

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

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

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

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

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

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

    クセスを遮断する

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

    影響を低減する

    AmazonCloudFront

    AWSShield

    AWSWAF

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

  • Amazon CloudFrontによるCDN (Contents Delivery Network)

    CDN導入の利点

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

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

    クライアント

    オリジンサーバ

    CDN

    AmazonCloudFront

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

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

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

    ⑦ コンテンツの取得

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

    近い 遠い

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

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

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

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

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

    AWSWAF

    通常のユーザー

    Attacker

    Web Server Database

    Your application

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

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

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

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

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

  • Internet

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

    オリジンWeb Server

    Attacker

    Attacker

    Attacker

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

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

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

  • Internet

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

    オリジンWeb Server

    Attacker

    Attacker

    Attacker

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

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

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

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

    • CloudFrontで、急務だったコ

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

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

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

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

    ブロック

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

    トを保護

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

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

    も高くご評価

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

  • 事例: MapBox 様

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

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

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

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

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

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

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

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

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

  • Amazon CloudFrontContents Delivery Network

  • CloudFrontの仕組み

    CDN導入の利点

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

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

    クライアント

    オリジンサーバ

    CDN

    AmazonCloudFront

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

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

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

    ⑦ コンテンツの取得

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

    近い 遠い

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

  • CloudFrontの特徴

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

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

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

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

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

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

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

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

    オリジンサーバ

    クライアント

    位置情報DB

    CloudFront DNS

    Edge Location

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

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

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

    DNSリゾルバ

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

    IP: 1.1.1.1

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

  • CloudFront の様々な機能

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

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

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

    • GZIP 圧縮

    • アクセス元地域の制限

    • エラーページの配信

    • IPv6 サポート

    • HTTP/2 サポート

    ※ Amazon Certificate Manager

  • AWS WAFWeb Application Firewall

  • AWS WAFとは?

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

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

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

    DevOpsとの統合

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

  • なぜWAFを使うのか

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

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

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

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

    • DDoS緩和 (HTTP/HTTPS floods)

    • PCI DSS対応

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

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

  • これまでのWAF配置

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

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

    Edge Location

    EC2ELBWAFELB

    ELB Sandwich

    オンプレミス環境

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

    WAF

    CloudFront

    Webスクレイピング

    SQLI、XSS等の攻撃

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

    Attacker

    不正なBot

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

  • CloudFront with AWS WAF

    • AWS外のリソースでもOK

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

    CloudFront

    Edge Location WAF

    ユーザー

    Attacker

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

    SQLI、XSS等の攻撃

    正常なトラフィック

    EC2ELBS3

    AND/OR

    オンプレミス環境

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

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

  • リクエストの判定条件

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

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

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

    • IPアドレス

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

    • サイズ制限

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

    • SQLインジェクション

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

    • 文字列マッチング

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

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

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

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

    • ハニーポット

    • アクセスログ解析

    • サードパーティー情報

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

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

    に保存される

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

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

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

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

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

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

    WAF ACLを更新

    4. CloudWatchに、ブロックして

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

    を記録

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

  • まとめ

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

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

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

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

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

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

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