Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> ระบบเครือข่าย >> ความปลอดภัยเครือข่าย

Network Security Group (NSG) ใน Azure คืออะไร? ความแตกต่างกับ Azure Firewall

Network Security Group (NSG) คืออะไร?

NSG (Network Security Group) เป็นบริการของ Azure ที่ทำหน้าที่เป็น Firewall แบบ Stateful Layer 3/4 (Network Layer) ใช้ควบคุมการไหลของトラフィก (Traffic) เข้าและออกจากทรัพยากร Azure เช่น Virtual Machines (VMs), Virtual Machine Scale Sets, และ Subnets ภายใน Virtual Network (VNet)

คุณสมบัติหลักของ NSG

  • Security Rules: กฎ Allow/Deny ตาม Priority (100-4099) จับคู่: Source/Destination IP/Port, Protocol (TCP/UDP/ICMP/*), Direction (Inbound/Outbound)
  • Stateful: จำสถานะการเชื่อมต่อ (Connection Tracking) อนุญาต Traffic ตอบกลับ (Return Traffic) อัตโนมัติ
  • Scope การผูกมัด: ผูกกับ Subnet (ผลลัพธ์กับทุก Resource ใน Subnet) หรือ Network Interface (NIC) ของ VM เฉพาะตัว
  • Default Rules: มีกฎเริ่มต้น เช่น AllowVNetInBound, AllowAzureLoadBalancerInBound, DenyAllInBound, AllowVNetOutBound, AllowInternetOutBound, DenyAllOutBound
  • Service Tags: ใช้แทน IP Range เช่น Internet, VirtualNetwork, AzureLoadBalancer, Storage, Sql ฯลฯ
  • Application Security Groups (ASG): จัดกลุ่ม VMs ตาม Application (เช่น Web, App, DB) ใช้อ้างอิงใน Rules แทน IP

NSG vs Azure Firewall: ต่างอย่างไร?

คุณสมบัติNSGAzure Firewall
OSI LayerLayer 3 & 4 (IP, Port, Protocol)Layer 3, 4 & 7 (Application)
FQDN Filteringไม่รองรับรองรับ (Application Rules)
SNAT / DNATไม่รองรับ (ต้องใช้ NAT Gateway/LB)รองรับ Built-in
Threat Intelligenceไม่มีมี (Alert/Deny known malicious IPs/Domains)
Intrusion Detection/Prevention (IDPS)ไม่มีมี (Signature-based, แบบ Managed)
LoggingFlow Logs (NSG Flow Logs → Storage/Log Analytics)Diagnostic Logs (App/Network/Threat) → Log Analytics/Event Hub/Storage
High AvailabilityRegional (Managed by Azure)Zone Redundancy (99.99% SLA)
Costฟรี (จ่ายค่า Log Storage/Analytics)จ่ายตามชั่วโมง + Data Processed (~$1.25/hr + $0.016/GB)
ManagementARM/Bicep/Terraform, Portal, CLI, PowerShellเดียวกัน + Firewall Manager (Central Policy)

เมื่อไหร่ควรใช้ NSG, Azure Firewall, หรือทั้งคู่?

  • NSG เพียงพอ: Workload เรียบง่าย, ควบคุม Port/IP ระหว่าง Subnet/VM, ไม่ต้องการ L7 Inspection, ต้องการต้นทุนต่ำ
  • Azure Firewall จำเป็น: ต้องการ FQDN Filtering, IDPS, Threat Intelligence, SNAT/DNAT, Central Management หลาย VNet/Subscription, Compliance ต้องการ L7 Visibility
  • ใช้ร่วมกัน (Best Practice): NSG ที่ Subnet/NIC สำหรับ Micro-segmentation (Zero Trust) + Azure Firewall ที่ Hub VNet สำหรับ Egress/Ingress Inspection และ Threat Protection

การสร้างและจัดการ NSG

  1. Portal: Create a resource → Networking → Network Security Group
  2. Subscription, Resource Group, Name, Region
  3. สร้างเสร็จ → ไปที่ Inbound/Outbound security rules → Add
  4. ผูกกับ Subnet: Subnets → Associate หรือผูกกับ NIC: Network interfaces → Associate

การประมวลผลกฎ (Rule Processing Order)

  1. Inbound: NIC NSG → Subnet NSG
  2. Outbound: Subnet NSG → NIC NSG
  3. กฎที่มี Priority ต่ำกว่า (หมายเลขน้อยกว่า) ถูกประมวลผลก่อน
  4. หากมีกฎ Match → หยุดประมวลผล (First Match Wins)

สรุป

NSG เป็น Firewall ระดับพื้นฐาน (Basic) ฟรี สำหรับควบคุม Traffic L3/L4 ภายใน VNet Azure Firewall เป็น Firewall ระดับ Enterprise (Managed) จ่ายเงิน รองรับ L7, Threat Intel, IDPS, HA สองตัวมักใช้ร่วมกันเพื่อ Defense in Depth