皆さんこんばんは!ポンコツエンジニアのGONです!
本日は少し涼しくて楽でしたね。
調べてみたら最高気温が31度でした。この位の気温で勘弁して欲しいものです。
明日最高気温31度、最低気温25度予想なのでエアコン設定抑えめで過ごせそうですね。
さて、前回までに人生賭けた求人サービスを構築するために『PHP』『postgreSQL』『AWS』を選んだ理由や、
サービス名の由来、求職者様向け&企業様向け機能のご紹介、面談の採用確率UP方法、
『PHP』『postgreSQL』『AWS』の実機練習用サイトと基本的な操作方法をご紹介させていただき、
さらにシステム構築をするうえで基本的なセキュリティ対策について書かせていただきましたが、
本日は『AWS』のWebアプリケーション保護についてご説明いたします。
ECサイト等をはじめとしたコンシューマー向けのWebアプリケーションはインターネットに公開されていますよね。
世界中の人達を相手にビジネスをする事も可能な技術ですが、
何処からでも誰からでもアクセス出来るという事は、
その中に悪意を持った人もいる可能性があるという事です。
先日ご紹介した『SQLインジェクション』や『XSS』などもそうですが、
『DDoS攻撃』もサービス運営者を悩ませるサイバー攻撃の一つです。
これらをGUIから設定できるのが『AWS』のすぐれたところです。
AWS WAFの構成
AWS WAF(Web Application Firewall)は、WebアプリケーションへのHTTP/HTTPSリクエストを検査し、不正なアクセス(SQLインジェクション、XSS、ボット、DDoSなど)を検知・遮断するサービスで、構成は以下の様なイメージです。
Internet
│
▼
+----------------+
| CloudFront/ALB |
+----------------+
│
▼
+----------------+
| AWS WAF |
| (Web ACL) |
+----------------+
│
▼
Web Application
Web ACLを作成する
AWS WAFでは一番重要なのが Web ACL(Web Access Control List) です。
Web ACLの中に複数のルールを設定し、
・許可(Allow)
・拒否(Block)
・カウント(Count)
などの動作を決定します。
AWSコンソールで
AWS Console
↓
WAF & Shield
↓
Web ACL
↓
Create web ACL
を選択します
設定項目
通常はDefault ActionをAllowにします
つまり「ルールに一致したものだけBlockする」ということになります。
| 項目 | 例 |
|---|---|
| Name | Production-WAF |
| Resource Type | Application Load Balancer |
| Resource | 対象ALB |
| Default Action | Allow |
Managed Rulesを追加する
AWSが提供しているルールセットを利用するのが一般的です。
おすすめは
AWS Managed Rules
↓
AWSManagedRulesCommonRuleSet
これだけで
- SQLインジェクション
- XSS
- Local File Inclusion
- Remote File Inclusion
- Command Injection
などを検知できます。
Rate-based Ruleを追加する
DDoS対策として非常に重要です。
例えば1IPあたり5分間で1000リクエスト以上をブロックするというルールを作成します。
Rule Type = Rate Based Rule
Limit = 1000
Aggregate Key = IP
Action = Block
これだけで基本的なWebアプリケーションの保護は出来ますね。
色々なセキュリティサービスがありますが、デフォルトでこれらの設定が出来るのは凄い事だと思います。
今回は『AWS』の基本的なサービスを使って行えるWebサービスのセキュリティについて書かせていただきましたが、いかがでしょうか。
AIが台頭してきたとはいえ、サービスを運用していると細かいところまでケアしないといけないので、結局は人間がどうやって指示をしていくかが大切だと思うんですよね。
今回ご紹介させていただいた『AWS』のセキュリティ技術も駆使して運用中の求人サービスは以下になります。
▼求人マッチングサービス【ヴェテラン】
https://veteran-work.com/
企業の求人ご担当者様の方々、エンジニアの方々はセキュリティ面で懸念されているかと思いますが、安心してご利用いただけるよう、日々セキュリティ面にもアップデートをかけているところですので、ぜひご利用ください!
「もっと詳しく掘り下げてほしい!」
「うちもAWS使いたいから相談させて!」
などご意見・ご要望いただけますともっと頑張っちゃうかもしれません。
本日もお疲れ様でした。
明日も頑張りましょう。