บทบาทของ ACL ในการควบคุมการเข้าถึงและป้องกันเครือข่าย
ACL (Access Control List) เป็นรายการกฎอนุญาต/ปฏิเสธ (Permit/Deny) ที่ใช้กรองแพ็กเก็ตข้อมูลบนอุปกรณ์เครือข่าย เช่น เราเตอร์ สวิตช์ ไฟร์วอลล์ ทำงานเป็น "ประตูควบคุม" ระดับแพ็กเก็ต
วิธีที่ ACL เพิ่มความปลอดภัย
- กรองトラฟฟิกไม่พึงประสงค์: บล็อก IP แหล่งที่มา/ปลายทาง ที่พอร์ต พรอโตคอล (TCP/UDP/ICMP) ที่น่าสงสัย
- จำกัดการเข้าถึงบริการสำคัญ: อนุญาตเฉพาะ IP เฉพาะเจาะจงเข้าถึง SSH (22), RDP (3389), หน้าจอจัดการเราเตอร์
- ป้องกัน IP Spoofing: ปฏิเสธแพ็กเก็ตที่มี Source IP เป็น Private IP จากภายนอก หรือ Loopback
- ลดพื้นที่โจมตี (Attack Surface): ปิดพอร์ต/บริการที่ไม่จำเป็น
- ควบคุมการออก (Egress Filtering): ป้องกันมัลแวร์ส่งข้อมูลออก หรือเครื่องในเครือข่ายโจมตีภายนอก
ประเภท ACL หลัก
| ประเภท | เลขลำดับ (Cisco) | ความสามารถกรอง | เหมาะสำหรับ |
|---|---|---|---|
| Standard ACL | 1-99, 1300-1999 | Source IP เท่านั้น | กรองง่าย ใกล้ปลายทาง |
| Extended ACL | 100-199, 2000-2699 | Source IP, Dest IP, Protocol, Port, TCP Flags, ICMP Type | กรองละเอียด ใกล้แหล่งที่มา |
| Named ACL | ใช้ชื่อแทนเลข | เหมือน Standard/Extended | จัดการง่าย อ่านง่าย |
คุณสมบัติ Extended ACL ที่สำคัญ
- กรองได้ทั้ง Source และ Destination IP
- ระบุ Protocol (IP, TCP, UDP, ICMP, ฯลฯ)
- ระบุ Port Number (Source/Destination) เช่น eq 80, range 1024 65535
- ตรวจสอบ TCP Flags (SYN, ACK, FIN, RST) สำหรับ Stateful Inspection แบบง่าย
การทำงานของ ACL บนเราเตอร์ (Layer 3)
- แพ็กเก็ตเข้ามาทีละอินเทอร์เฟซ
- เราเตอร์ตรวจสอบกฎ ACL เรียงลำดับจากบนลงล่าง
- หาก Match กฎ Permit > ส่งต่อ; Match กฎ Deny > ทิ้ง (Drop)
- หากไม่ Match กฎใดๆ > Implicit Deny All (ปฏิเสธโดย mặc định)
ACL บน Switch (VACL / PACL / RACL) และ Network ACL (AWS/Azure)
- VACL (VLAN ACL): กรองทราฟฟิกภายใน VLAN (Layer 2/3)
- PACL (Port ACL): กรองบนพอร์ตสวิตช์ (Layer 2)
- Cloud Network ACL: Stateless Firewall ระดับ Subnet (AWS NACL, Azure NSG)
ข้อควรระวังและ Best Practices
- วาง ACL ให้ใกล้แหล่งที่มาสำหรับ Extended ACL (ประหยัดแบนด์วิดท์)
- จัดลำดับกฎ: เฉพาะเจาะจง (Specific) ไว้บน, กว้าง (General) ไว้ล่าง
- ใช้
remarkคอมเมนต์แต่ละกฎ เพื่อการบำรุงรักษา - ทดสอบด้วย
ping,traceroute,nmapก่อนนำไปใช้งานจริง - ตรวจสอบ Logs (Syslog/SNMP) เพื่อดู Hit Count และการโจมตี