AWS Solutions Architect · Pelajaran

WAF, Shield, dan Network Firewall

Blokir serangan 10 teratas OWASP dengan AWS WAF, lindungi dari DDoS dengan Shield Standard dan Advanced, lalu gunakan Network Firewall stateful di VPC Anda.

Pelajaran 4 dari 413 langkah

WAF, Shield, dan Network Firewall adalah pelajaran AWS Solutions Architect gratis di CoddyKit. Ini adalah pelajaran 4 dari 4. Kamu bisa membaca pelajaran lengkapnya di bawah secara gratis — lalu praktikkan langsung di browser dengan editor kode bawaan dan tutor AI 24/7. Ini adalah bagian dari jalur belajar AWS Solutions Architect, dan progresmu tersinkronisasi di web dan aplikasi CoddyKit. Kursus AWS Solutions Architect mencakup 4 pelajaran total.

Pertahanan Berlapis untuk Keamanan Jaringan

Melindungi aplikasi Anda dari serangan berbasis jaringan memerlukan beberapa lapisan pertahanan. AWS menyediakan tiga layanan yang saling melengkapi: AWS WAF memfilter traffic HTTP lapisan 7 berdasarkan aturan untuk memblokir serangan pada lapisan aplikasi. AWS Shield melindungi dari serangan DDoS (Distributed Denial of Service) pada lapisan 3 dan 4. AWS Network Firewall adalah firewall jaringan stateful untuk pemeriksaan dan pemfilteran traffic pada tingkat VPC. Ketiganya menangani vektor ancaman yang berbeda dan biasanya diterapkan bersama untuk perlindungan menyeluruh.

# Layer coverage:
# Network Firewall: Layer 3-7 VPC traffic (stateful)
# Shield Standard: Layer 3-4 DDoS (automatic, free)
# Shield Advanced: Layer 3-7 DDoS + response team
# WAF: Layer 7 HTTP/HTTPS (application attacks)

# Typical deployment:
# Internet -> CloudFront+WAF -> ALB+WAF -> EC2/ECS
# Network Firewall in VPC for egress/lateral inspection
# Shield protects all traffic automatically

AWS WAF: Web Application Firewall

AWS WAF memfilter permintaan HTTP/HTTPS berdasarkan aturan yang Anda tentukan. WAF terintegrasi dengan CloudFront, ALB, API Gateway, AppSync, dan Cognito. Aturan dapat mencocokkan: kumpulan alamat IP (memblokir/mengizinkan IP tertentu), pencocokan geografis (memblokir permintaan dari negara tertentu), aturan berbasis laju (memblokir IP yang melampaui laju permintaan — perlindungan dari banjir permintaan), grup aturan terkelola (aturan siap pakai untuk 10 ancaman teratas OWASP, AWS Threat Intel, dan Bot Control), serta aturan kustom (mencocokkan komponen HTTP apa pun). ACL WAF (Web ACL) berisi aturan dan diterapkan pada satu atau beberapa sumber daya.

# Create WAF Web ACL
aws wafv2 create-web-acl \
  --name 'prod-web-acl' \
  --scope CLOUDFRONT \
  --region us-east-1 \
  --default-action Allow={} \
  --rules '[{
    "Name": "AWSManagedRulesCommonRuleSet",
    "Priority": 1,
    "OverrideAction": {"None": {}},
    "Statement": {
      "ManagedRuleGroupStatement": {
        "VendorName": "AWS",
        "Name": "AWSManagedRulesCommonRuleSet"
      }
    },
    "VisibilityConfig": {
      "SampledRequestsEnabled": true,
      "CloudWatchMetricsEnabled": true,
      "MetricName": "CommonRuleSet"
    }
  }]' \
  --visibility-config SampledRequestsEnabled=true,CloudWatchMetricsEnabled=true,MetricName=web-acl-metrics

Grup Aturan Terkelola WAF

Grup Aturan Terkelola AWS adalah kumpulan aturan WAF siap pakai yang dikelola AWS untuk melindungi dari ancaman umum tanpa mengharuskan Anda menulis aturan satu per satu. Grup utama: AWSManagedRulesCommonRuleSet — melindungi dari 10 ancaman teratas OWASP (injeksi SQL, XSS, RFI, LFI). AWSManagedRulesKnownBadInputsRuleSet — memblokir pola input buruk yang telah diketahui. AWSManagedRulesAmazonIpReputationList — memblokir IP dengan reputasi buruk (botnet dan sistem yang telah disusupi). AWSManagedRulesBotControlRuleSet — mendeteksi dan memblokir bot pengambil data serta peramban otomatis. Sebagian besar penerapan WAF dimulai dengan grup terkelola ini sebelum menambahkan aturan kustom.

# Add IP reputation list managed rule group
aws wafv2 update-web-acl \
  --name 'prod-web-acl' \
  --scope CLOUDFRONT \
  --id <acl-id> \
  --lock-token <lock-token> \
  --rules '[{
    "Name": "AWSManagedRulesAmazonIpReputationList",
    "Priority": 0,
    "OverrideAction": {"None": {}},
    "Statement": {
      "ManagedRuleGroupStatement": {
        "VendorName": "AWS",
        "Name": "AWSManagedRulesAmazonIpReputationList"
      }
    }
  }, ...existing_rules...]'

Aturan Berbasis Laju WAF

Aturan berbasis laju di AWS WAF secara otomatis memblokir alamat IP yang melampaui ambang laju permintaan yang dapat dikonfigurasi dalam jendela 5 menit. Fitur ini melindungi dari: serangan banjir HTTP (membebani server dengan permintaan), serangan brute force (banyak percobaan login), dan penyalahgunaan API (pengambilan data atau enumerasi). Anda dapat mengagregasikan berdasarkan IP, IP + jalur permintaan (membatasi laju titik akhir tertentu seperti /login), atau header kustom. IP yang diblokir otomatis dibuka blokirnya saat lajunya turun di bawah ambang batas — tanpa intervensi manual.

# Create rate-based rule for login endpoint
aws wafv2 update-web-acl \
  --rules '[{
    "Name": "RateLimitLogin",
    "Priority": 2,
    "Action": {"Block": {}},
    "Statement": {
      "RateBasedStatement": {
        "Limit": 100,
        "AggregateKeyType": "IP",
        "ScopeDownStatement": {
          "ByteMatchStatement": {
            "SearchString": "/api/login",
            "FieldToMatch": {"UriPath": {}},
            "TextTransformations": [{"Priority": 0, "Type": "LOWERCASE"}],
            "PositionalConstraint": "STARTS_WITH"
          }
        }
      }
    }
  }]'

AWS Shield Standard dan Advanced

AWS Shield Standard adalah perlindungan DDoS otomatis yang disertakan untuk semua pelanggan AWS tanpa biaya tambahan. Layanan ini melindungi dari serangan DDoS lapisan 3 (jaringan) dan lapisan 4 (transportasi) yang paling umum — banjir SYN, banjir UDP, dan serangan refleksi. AWS Shield Advanced memberikan perlindungan yang ditingkatkan untuk serangan lapisan 3, 4, dan 7 pada EC2, ALB, CloudFront, Global Accelerator, dan Route 53. Shield Advanced mencakup: dukungan AWS DDoS Response Team (DRT), perlindungan biaya (biaya penskalaan terkait DDoS dikembalikan), metrik waktu nyata, dan forensik serangan tingkat lanjut. Biaya Shield Advanced adalah $3.000/bulan ditambah biaya transfer data.

# Enable Shield Advanced protection on ALB
aws shield create-protection \
  --name 'prod-alb-protection' \
  --resource-arn arn:aws:elasticloadbalancing:us-east-1:123:loadbalancer/app/prod-alb/abc

# Associate with a WAF Web ACL for layer-7 protection
aws shield associate-drt-log-bucket \
  --log-bucket my-shield-logs

# With Shield Advanced:
# - DDoS events detected and mitigated automatically
# - DRT can tune WAF rules during active attacks
# - Real-time CloudWatch dashboard
# - AWS will refund EC2/ELB/CloudFront scaling costs from DDoS

AWS Network Firewall

AWS Network Firewall adalah layanan firewall jaringan terkelola dan stateful yang diterapkan di VPC Anda untuk memeriksa serta memfilter traffic. Berbeda dengan Security Groups (stateful, tingkat sumber daya) dan NACL (stateless, tingkat subnet), Network Firewall menyediakan: pemeriksaan paket mendalam (DPI), pelacakan koneksi stateful, pemfilteran domain (memblokir berdasarkan nama atau pola domain), aturan IPS (Intrusion Prevention System) menggunakan format aturan yang kompatibel dengan Suricata, dan pemfilteran egress (mengontrol tujuan yang dapat dipanggil instans EC2 Anda di internet). Terapkan Network Firewall di subnet firewall khusus pada setiap AZ.

# Create Network Firewall
aws network-firewall create-firewall \
  --firewall-name prod-vpc-firewall \
  --firewall-policy-arn arn:aws:network-firewall:us-east-1:123:firewall-policy/my-policy \
  --vpc-id vpc-12345 \
  --subnet-mappings '[{"SubnetId":"subnet-firewall-AZ1"},{"SubnetId":"subnet-firewall-AZ2"}]'

# Network Firewall topology:
# Internet -> IGW -> Firewall subnet (Network FW) -> App subnet
# Egress: App subnet -> Firewall subnet (Network FW) -> IGW -> Internet

Grup Aturan Network Firewall

Network Firewall menggunakan grup aturan untuk menentukan logika pemfilteran. Grup aturan stateless memproses paket tanpa melacak koneksi — serupa dengan NACL, tetapi lebih fleksibel. Grup aturan stateful melacak status koneksi TCP dan memeriksa sesi HTTP/TLS secara lengkap. Anda dapat menulis aturan dengan tiga cara: aturan 5-tuple (IP sumber, IP tujuan, protokol, porta sumber, porta tujuan), aturan daftar domain (mengizinkan atau menolak berdasarkan FQDN), dan aturan IPS yang kompatibel dengan Suricata (yang paling canggih — pencocokan pola dan pemeriksaan protokol). AWS menyediakan grup aturan terkelola untuk ancaman umum.

# Create domain list rule group (egress filtering)
aws network-firewall create-rule-group \
  --rule-group-name 'allow-egress-domains' \
  --type STATEFUL \
  --capacity 100 \
  --rules-source '{
    "RulesSourceList": {
      "Targets": [
        "amazonaws.com",
        "example.com",
        "*.npmjs.com"
      ],
      "TargetTypes": ["HTTP_HOST","TLS_SNI"],
      "GeneratedRulesType": "ALLOWLIST"
    }
  }'

# Block all other egress traffic by default
# Prevents EC2 from calling malicious external domains

Membandingkan WAF, Shield, dan Network Firewall

Ketiga layanan ini menangani kasus penggunaan yang berbeda dan saling melengkapi, bukan saling menggantikan: WAF — pemeriksaan HTTP lapisan 7, memblokir serangan aplikasi (SQLi, XSS), membatasi laju, dan mengendalikan bot. Diterapkan di CloudFront atau ALB. Shield — mitigasi DDoS, melindungi infrastruktur dari serangan volumetrik. Shield Standard selalu aktif; Advanced menambahkan dukungan tim. Network Firewall — kontrol traffic VPC lapisan 3–7, pemeriksaan stateful, pemfilteran domain, serta IPS/IDS. Diterapkan di dalam subnet VPC. Gunakan ketiganya bersama-sama: Network Firewall mengontrol traffic tingkat VPC, WAF memfilter permintaan aplikasi, dan Shield memitigasi DDoS.

# Comparison table:
# Service          Scope     Layer  Use Case
# AWS WAF          Edge/ALB  7      App attacks, rate limits, bots
# Shield Standard  All       3-4    Auto DDoS mitigation (free)
# Shield Advanced  All       3-7    Enhanced DDoS + DRT support
# Network Firewall VPC       3-7    Stateful inspection, IPS, egress

# SAA-C03 exam keywords:
# 'SQL injection protection' -> WAF
# 'DDoS protection' -> Shield
# 'Block EC2 from calling external IPs' -> Network Firewall
# 'Block requests from country X' -> WAF geo-match

Pencatatan dan Analisis WAF

WAF dapat mencatat semua permintaan sampel (1 dari 5) atau semua permintaan ke CloudWatch Logs, S3, atau Kinesis Data Firehose. Log mencakup header permintaan lengkap, alamat IP, negara, aturan yang cocok, dan tindakan yang diambil (ALLOW/BLOCK/COUNT). Gunakan log WAF untuk: Menyelidiki serangan — melihat permintaan yang diblokir secara tepat. Menyempurnakan aturan — mengidentifikasi positif palsu (permintaan sah yang diblokir) dan menambahkan pengecualian. Mendeteksi ancaman baru — pola dalam permintaan yang diblokir dapat mengungkap vektor serangan baru. Aktifkan mode COUNT untuk aturan baru sebelum beralih ke BLOCK guna memastikan aturan tersebut tidak memblokir traffic yang sah.

# Enable WAF logging to Kinesis Firehose
aws wafv2 put-logging-configuration \
  --logging-configuration '{
    "ResourceArn": "arn:aws:wafv2:us-east-1:123:global/webacl/prod-web-acl/abc",
    "LogDestinationConfigs": [
      "arn:aws:firehose:us-east-1:123:deliverystream/waf-logs"
    ],
    "LoggingFilter": {
      "DefaultBehavior": "KEEP",
      "Filters": [{
        "Behavior": "KEEP",
        "Conditions": [{"ActionCondition":{"Action":"BLOCK"}}],
        "Requirement": "MEETS_ANY"
      }]
    }
  }'

Pola Arsitektur Deployment WAF

Deployment AWS WAF yang tepat memerlukan pemahaman tentang tempat memasangnya dalam arsitektur Anda. Untuk aplikasi yang menghadap internet, pasang WAF pada CloudFront agar pemeriksaan dilakukan di edge sebelum lalu lintas mencapai origin Anda — ini memblokir serangan sebelum menghabiskan bandwidth origin. Untuk API internal atau saat CloudFront tidak digunakan, pasang WAF pada ALB. Untuk API yang diekspos melalui gateway API, WAF dapat dipasang pada tingkat gateway API. Anda dapat memasang WAF pada beberapa sumber daya secara bersamaan — distribusi CloudFront DAN ALB di belakangnya — untuk pertahanan berlapis, meskipun biaya pemeriksaan menjadi dua kali lipat.

# WAF attachment points:
# 1. CloudFront distribution (global edge, CLOUDFRONT scope)
aws wafv2 associate-web-acl \
  --web-acl-arn arn:aws:wafv2:us-east-1:123:global/webacl/my-acl/abc \
  --resource-arn arn:aws:cloudfront::123:distribution/EXAMPLEID

# 2. ALB (regional, REGIONAL scope)
aws wafv2 associate-web-acl \
  --web-acl-arn arn:aws:wafv2:us-east-1:123:regional/webacl/my-acl/xyz \
  --resource-arn arn:aws:elasticloadbalancing:us-east-1:123:loadbalancer/app/my-alb/abc

# 3. API Gateway REST API
# 4. AppSync GraphQL API
# 5. Amazon Cognito User Pool

Firewall Manager untuk WAF Multi-Akun

AWS Firewall Manager memusatkan kebijakan WAF, Shield Advanced, Network Firewall, dan grup keamanan di seluruh akun dalam AWS Organization. Tentukan aturan WAF sekali di Firewall Manager dan aturan tersebut akan otomatis diterapkan ke semua ALB, distribusi CloudFront, dan gateway API di semua akun anggota — termasuk sumber daya yang baru dibuat. Jika akun anggota melakukan deployment ALB baru, Firewall Manager otomatis mengaitkan Web ACL WAF. Hal ini memastikan penegakan kebijakan keamanan yang konsisten di seluruh organisasi tanpa bergantung pada setiap tim untuk mengonfigurasi WAF dengan benar.

# Create Firewall Manager WAF policy
aws fms put-policy \
  --policy '{
    "PolicyName": "org-wide-waf-policy",
    "SecurityServicePolicyData": {
      "Type": "WAFV2",
      "ManagedServiceData": "{\"type\":\"WAFV2\",\"preProcessRuleGroups\":[{\"managedRuleGroupIdentifier\":{\"vendorName\":\"AWS\",\"managedRuleGroupName\":\"AWSManagedRulesCommonRuleSet\"},\"ruleGroupArn\":null,\"overrideAction\":{\"type\":\"NONE\"},\"excludeRules\":[],\"ruleGroupType\":\"ManagedRuleGroup\"}]}"
    },
    "ResourceType": "AWS::ElasticLoadBalancingV2::LoadBalancer",
    "IncludeMap": {"ACCOUNT": []},
    "ExcludeResourceTags": false,
    "RemediationEnabled": true
  }'

Pemeriksaan Singkat

Uji pemahaman Anda tentang konsep AWS Solutions Architect (SAA-C03) dari pelajaran ini.

Ringkasan Pelajaran

Dalam pelajaran ini, Anda telah mempelajari bahwa: AWS WAF memfilter lalu lintas HTTP lapisan 7 untuk memblokir injeksi SQL, XSS, bot, dan membatasi laju IP yang menyalahgunakan layanan, Shield Standard menyediakan perlindungan DDoS lapisan 3/4 otomatis, sedangkan Shield Advanced menambahkan dukungan tim respons dan perlindungan biaya, serta Network Firewall menyediakan pemeriksaan lalu lintas tingkat VPC yang stateful dengan pemfilteran domain dan aturan IPS. Firewall Manager menegakkan kebijakan di seluruh akun dalam organisasi. Selamat telah menyelesaikan bagian Arsitektur Keamanan!

Gratis untuk memulai

Belajar AWS Solutions Architect dengan tutor AI — gratis

Tulis dan jalankan kode asli di browser kamu, dapatkan bantuan instan dari tutor AI 24/7, dan lanjutkan di mana kamu tinggalkan di web atau aplikasi.

Kursus
30
Pelajaran
120

Pertanyaan yang Sering Diajukan

Apakah pelajaran “WAF, Shield, dan Network Firewall” gratis?

Ya — teks lengkap “WAF, Shield, dan Network Firewall” gratis dibaca di sini di web. Untuk praktiknya secara interaktif (editor kode bawaan dan tutor AI 24/7) dan buka sisa kursus AWS Solutions Architect, upgrade ke CoddyKit PRO. Kursus AWS Solutions Architect mencakup 4 pelajaran total.

Apa yang akan aku pelajari di “WAF, Shield, dan Network Firewall”?

Blokir serangan 10 teratas OWASP dengan AWS WAF, lindungi dari DDoS dengan Shield Standard dan Advanced, lalu gunakan Network Firewall stateful di VPC Anda. Kamu berlatih AWS Solutions Architect dengan kode praktik yang langsung kamu jalankan di browser, dan tutor AI 24/7 menjawab pertanyaanmu saat kamu mengerjakan pelajaran ini.

Apakah aku perlu pengalaman untuk memulai AWS Solutions Architect?

Tidak diperlukan pengalaman sebelumnya. AWS Solutions Architect di CoddyKit dirancang untuk pemula hingga pelajar tingkat lanjut, jadi kamu bisa memulai di sini atau dari awal dan belajar sesuai kecepatan kamu sendiri. Ini adalah pelajaran 4 dari 4.

Berapa lama pelajaran “WAF, Shield, dan Network Firewall” memakan waktu?

Sebagian besar pelajaran CoddyKit memakan waktu sekitar 5–10 menit. Setiap pelajaran ringkas dan interaktif, jadi kamu membuat kemajuan stabil dan melanjutkan dari tempat kamu tinggalkan di web dan aplikasi.

Bisakah aku menulis dan menjalankan kode dalam pelajaran AWS Solutions Architect ini?

Ya. Setiap pelajaran AWS Solutions Architect menyertakan editor kode bawaan, jadi kamu menulis dan menjalankan kode nyata langsung di browser dan mendapatkan umpan balik AI instan — tidak diperlukan penyiapan lokal.

Semua pelajaran dalam kursus ini

  1. KMS, ACM, dan Pola Enkripsi
  2. GuardDuty, Inspector, dan Macie
  3. Secrets Manager dan Parameter Store
  4. WAF, Shield, dan Network Firewall
← Kembali ke AWS Solutions Architect