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

Access Control Lists (ACL) ปรับปรุงความปลอดภัยเครือข่ายอย่างไร?

Access Control List (ACL) คืออะไร?

ACL (Access Control List) คือชุดกฎ (Rules) ที่ใช้ในการ กรองทราฟฟิกเครือข่าย (Packet Filtering) บน Router, Firewall, Switch, Load Balancer เพื่อ อนุญาต (Permit) หรือปฏิเสธ (Deny) การสื่อสารตามเงื่อนไขที่กำหนด ทำหน้าที่เป็น Stateless Packet Filter (ตรวจสอบแพ็กเก็ตแต่ละตัวแยกกัน ไม่มี State Table)

ACL ปรับปรุง Network Security ได้อย่างไร?

  1. Traffic Filtering: บล็อกทราฟฟิกอันตราย/ไม่จำเป็น (Malicious IPs, Unused Ports, Suspicious Protocols)
  2. Access Control: จำกัดการเข้าถึงระบบสำคัญ (Management Plane, Databases, Admin Interfaces)
  3. Network Segmentation Enforcement: บังคับให้ VLAN/Zones สื่อสารได้เฉพาะที่อนุญาต
  4. Anti-Spoofing: บล็อก Source IP ที่เป็น Private/RFC1918 บน Ingress, หรือ Source ไม่ตรง Subnet
  5. DDoS Mitigation (Basic): Rate Limiting, Block Known Attack Sources
  6. Routing Control: Distribute-list, Route-map ใช้ ACL ควบคุม Route Advertisement
  7. QoS Classification: จำแนกทราฟฟิกเพื่อ Priority/Policing
  8. NAT/PAT Control: กำหนดว่า IP ใดถูก NAT/ไม่ถูก NAT
  9. VPN Traffic Selection: กำหนด Interesting Traffic สำหรับ IPsec Tunnel

ประเภท ACL (Cisco IOS Style)

ประเภทหมายเลข/ชื่อMatch Criteriaใช้เมื่อไหร่
Standard ACL1-99, 1300-1999Source IP OnlySimple Filtering, Near Destination
Extended ACL100-199, 2000-2699Source IP, Dest IP, Protocol (TCP/UDP/ICMP), Source Port, Dest Port, Flags, ToS/DSCP, Precedence, TTL, Option, EstablishedGranular Control, Near Source (Best Practice)
Named ACLAlphanumeric NameSame as Standard/Extended + Sequence Numbers, Removable Entriesทุกกรณี (Best Practice - Readable, Manageable)
IPv6 ACLNamed OnlySource/Dest IPv6, Next Header, Flow Label, DSCPIPv6 Networks
Object-Group ACLNetwork/Port/Protocol GroupsReference Object GroupsLarge Rule Sets, Maintainability

Extended ACL Match Attributes (สำคัญสำหรับสอบ/สัมภาษณ์)

Extended ACL สามารถ Match ได้:

  • Source IP Address / Prefix
  • Destination IP Address / Prefix
  • Protocol: IP, TCP, UDP, ICMP, OSPF, EIGRP, GRE, AH, ESP, SCTP, Port Range (eq, neq, lt, gt, range)
  • TCP Flags: established (ACK/RST), match-any, match-all (SYN, ACK, FIN, RST, PSH, URG)
  • ICMP Type/Code
  • DSCP / ToS / Precedence
  • TTL, Option, Fragments
  • Time-based ACL (time-range)

Best Practice: ACL Placement

ACL TypePlacement Guidelineเหตุผล
Extended ACLใกล้ Source (Source Router/Interface) มากที่สุดกรองทิ้งเร็วที่สุด ประหยัด Bandwidth/CPU ทางไกล
Standard ACLใกล้ Destination (Destination Router/Interface) มากที่สุดเพราะ Match แค่ Source IP หากวางใกล้ Source อาจบล็อก Traffic ที่ควรไปที่อื่น

ตัวอย่าง ACL ใช้งานจริง (Cisco Syntax)

! Anti-Spoofing Ingress (บน Interface WAN/Internet Incoming)
ip access-list extended ANTI_SPOOF_IN
 deny   ip 10.0.0.0 0.255.255.255 any log
 deny   ip 172.16.0.0 0.15.255.255 any log
 deny   ip 192.168.0.0 0.0.255.255 any log
 deny   ip 127.0.0.0 0.255.255.255 any log
 deny   ip 169.254.0.0 0.0.255.255 any log
 deny   ip 224.0.0.0 15.255.255.255 any log
 deny   ip host 0.0.0.0 any log
 permit ip any any

! Management Access Control (บน Control Plane / VTY / SNMP)
ip access-list standard MGMT_ALLOW
 permit 10.10.10.0 0.0.0.255  ! Network Management Subnet
 permit 192.168.100.0 0.0.0.255 ! Admin Subnet
 deny   any log

! VTY Access Class
line vty 0 15
 access-class MGMT_ALLOW in
 transport input ssh

! Outbound Internet Filtering (บน Interface LAN Outgoing)
ip access-list extended OUTBOUND_WEB
 permit tcp any any eq 80
 permit tcp any any eq 443
 permit udp any any eq 53
 permit tcp any any eq 22  ! SSH to specific bastion if needed
 deny   ip any any log

ACL vs Stateful Firewall

คุณสมบัติACL (Stateless)Stateful Firewall
Connection Trackingไม่มี (Per-packet)มี (State Table: SYN→SYN-ACK→ACK)
Return Trafficต้อง Allow Explicitly (Outbound ACL)Allow อัตโนมัติ (Session Established)
Performanceสูงมาก (Hardware TCAM)ต่ำกว่า (State Lookup)
Inspection DepthL3/L4 OnlyL7 (App-ID, IPS, AV, SSL Decrypt)
ใช้ร่วมกัน?ใช่ ACL = First Line (High-speed Filtering) + Firewall = Deep Inspection

คำถามสอบ/สัมภาษณ์ที่เกี่ยวข้อง (จากเนื้อหาต้นฉบับ)

How access lists can be used to improve network security?
Filter traffic based on IP header info (Source/Dest IP, Protocol, Port) → Permit/Deny → Reduce Attack Surface, Enforce Segmentation, Anti-spoofing
Which describes how ACLs improve network security?
ACLs filter/define traffic per IP header (source/dest IP, protocol, port) - Packet Filtering Firewalls use ACLs
Good general rule for Extended ACL placement?
As close to source as possible
Good general rule for Standard ACL placement?
As close to destination as possible
Extended ACL numbering range?
100-199, 2000-2699
Attributes Extended ACLs filter by? (Select two)
Source/Destination IP, Protocol (TCP/UDP/ICMP), Port Number

สรุป

ACL = Stateless Packet Filter (L3/L4) ใช้ Permit/Deny ตาม IP, Protocol, Port วาง Extended ใกล้ Source, Standard ใกล้ Destination เป็น Foundation ของ Network Security แต่อยู่ในชั้นนอก (Perimeter/Edge) ควรใช้ร่วมกับ Stateful Firewall/NDR/Zero Trust สำหรับ Defense in Depth