目次

  1. 1. AWS WAFの料金体系
    1. a) 基本的な料金体系
    2. b) マネージドルールを利用した場合
    3. c) EC2インスタンスタイプのWAFを利用した場合
  2. 2. 少しでも安く利用する
    1. a) マネージドルールは使いまわそう
    2. b) マネージドルールの課金は時間按分であることを利用しよう
    3. c) AWS Shieldを利用する
  3. 3. まとめ

1. AWS WAFの料金体系

AWS WAFの料金体系について説明します。AWS WAFはAWS (Amazon Web Services) が提供しているウェブアプリケーションファイヤウォールで、AWS上のWebアプリケーションへの攻撃からWebサイトを保護するために用いられるツールです。オンプレミスで導入するWAFと比較しても非常に安価で導入することができます。
安価で導入しやすいAWS WAFの運用課題の解決方法をご紹介

a) 基本的な料金体系

AWS WAFの基本的な料金体系について説明します。
AWS WAFは、以下の3点で料金が決定します。

  • 作成したWebACL数
  • 作成したルール数
  • AWS WAFへのリクエスト数

「ルール」をまとめたものがWebACLと考えるといいでしょう。また、「WAFへのリクエスト数」とは、インターネットからWAF経由でWebアプリケーションに接続を行う数だと考えて問題ありません。課金体系は以下の通りです。

種別 利用料金
作成したWebACL数 1ACLあたり5ドル/月
作成したルール数 1ルールあたり1ドル/月
AWS WAFへのリクエスト数 100万リクエストごとに0.6ドル

また、導入のための初期費用ですが、こちらは0円になります。オンプレミスでWAFを導入する場合は、場合によっては数千万円の初期費用が掛かってしまうことあります。そう考えると、AWS WAFは非常に低コストで導入できるということがわかります。自分が定めたルールと、使用した分だけ課金がされますので、料金形態も単純明快です。

b) マネージドルールを利用した場合

AWS WAFのルールは、マーケットプレイスで購入することも可能です。その場合、マーケットプレイスで業者やルールによって、さらに毎月の値段が加算されます。

例えば、AWS Marketplace 販売者のサイバーセキュリティクラウド社の1つのマネージドルールを購入し、お客様が作成した 9 つのルールのご利用した場合の料金をシミュレーションしてみます。AWSのコンソールから、サイバーセキュリティクラウド社のマネージドルールをクリックすると、以下のような画面で価格を見ることができます。

この説明文によると、マネージドルールの料金は1リージョンあたり月25ドル (1 時間ごとに案分) 及び100万件のリクエストごとに1.2ドルとなっています。これに加え、マーケットプレイスで購入したマネージドルールも、「作成したルール」に該当しますので、1ルールあたり1ドルかかります。

したがって、1リージョンにつき1ルールを購入し、1000万リクエストがあるシステムにこのマネージドルールを適用した場合の料金は以下のようになります。

Web ACL 料金の合計 5.00 USD * 1 = 5 USD
ルールの料金 1.00 USD * (1 + 9) = 10.00 USD (※マネージドルール1つ+お客様が作成した9つのルール)
リクエストの料金 0.60 USD / 100 万 * 1000 万 = 6.00 USD
合計 AWS WAF 料金 21.00 USD / 月
マネージドルール料金 25.00 USD
マネージドルールリクエストの料金 1.20 USD / 100 万 * 1000 万 = 12.00 USD
AWS Marketplace の合計料金 37.00 USD / 月
合計費用 58.00 USD / 月

マネージドルールを利用すると、少々値段があがりますが、その分マネージドルールはセキュリティ専門のベンダーが用意した、非常に安全にプロダクトを防御するためのルールとなっています。是非検討してみて下さい。

c) EC2インスタンスタイプのWAFを利用した場合

AWS WAFではなく、EC2(Elastic Compute Cloud)としてWAFを導入する場合の料金についてご説明します。EC2のインスタンス作成画面でも、EC2インスタンスタイプのWAFが販売されています。AMI(Amazon Machine Image)の選択画面で、AMIを指定し、WAFを作成します。マネージドコンソールの画面より、EC2→インスタンス→インスタンス作成→AWS MaketPlaceを選択すると、以下のような画面になり、WAFのAMIを検索・選択できます。

AMIを選択し、EC2として動作するWAFを導入できます。その場合の料金は、各WAFともにEC2と同様、1時間当たりの値段が設定されています。「選択」ボタンをクリックすると、料金体系を見ることができるので、確認をして購入しましょう。以下のような画面に遷移して、料金を確認することができます。

2. 少しでも安く利用する

すこしでもAWS WAFを安く利用するためのTipsについて記載します。

a) マネージドルールは使いまわそう

同じアカウント内、同じリージョン内であれば、WebACLを使いまわすことを検討すると安く済む場合があります。マネージドルールは、適用するWebACLの数に紐づいているため、WebACLが増えなければマネージドルールに対する課金も増えません。したがって、異なるシステムでも、同じアカウント、同じリージョン内であれば、WebACLを使いまわせないか、検討をしてみるといいかもしれません。

b) マネージドルールの課金は時間按分であることを利用しよう

AWS WAFの料金体系※を見ると、マネージドルール等は「月額」と書いており、一瞬でも利用すると月額分の料金が取られてしまう、と勘違いしがちです。しかし実際は、時間案文で課金されます。したがって、マネージドルールを1度購入し、そのあと無効にした場合は、購入していた時間分の料金しか請求されません。例えば月額30ドルのマネージドルールを、1日だけ使用し、そのあと無効にしたい場合は以下のような料金になります。
月額30ドル*1日/30日=1ドル
なので、プロダクトの開発中に、1日だけマネージドルールを購入してテストする→その後無効にする→プロダクトリリース直前に再度購入して適用する、といった使い方をすれば、多少は安くマネージドルールを利用することができますので、ぜひ検討をしてみて下さい。

※AWS WAFの料金体 https://aws.amazon.com/jp/waf/pricing/?nc1=h_ls#Pricing_Example_2:_AWS_WAF_with_Managed_Rules

c) AWS Shieldを利用する

AWS WAFはリクエスト数につき課金が追加されていきます。DDoS攻撃を受けて、リクエスト数が大量になった場合に、利用料金が高額になる場合があります。そうならないように、AWS Shieldを有効化しておき、DDoS攻撃をブロックしておくことも重要です。アクセス数が多いプロダクト(月数億アクセス~数十億アクセス)であれば、AWS Shield Advancedの導入も検討してみるといいでしょう。

3. まとめ

AWS WAFの料金体系について記載しました。AWS WAFの料金体系は、少々複雑ですが、きちんと理解をして利用することが大事です。場合によってはマネージドルールの利用も検討しましょう。AWS WAFのマネージドルールは自分でルールを作成する場合と比べて高いですが、安全にプロダクトを防御することができます。工夫によっては安く済ませることができるので、ぜひ検討をしてみてください。