FortiGate CLI Cheat Sheet: 10 คำสั่งช่วยชีวิตวิศวกร

1. ตรวจสอบ “ท่อ” ข้อมูลว่าวิ่งไปทางไหน (The Packet Trace)

diagnose debug flow

  • ทำไมต้องใช้: เมื่อตั้ง Policy แล้วเน็ตยังเข้าไม่ได้ คำสั่งนี้จะบอก “ความจริง” ว่า Packet วิ่งเข้า Policy ID ไหน, ติด NAT หรือเปล่า หรือโดน Drop เพราะสาเหตุใด
  • ชุดคำสั่ง

diag debug flow filter daddr 8.8.8.8  # กรองเฉพาะ IP ปลายทาง

diag debug flow show console enable

diag debug flow trace start 100       # เริ่ม Trace 100 packets

diag debug enable

2. ส่องดู Packet สดๆ บน Interface (The Sniffer)

diagnose sniffer packet <interface> <filter> <level>

  • ทำไมต้องใช้: เหมือนมี Wireshark อยู่ในตัวเครื่อง ใช้ดูว่ามี Traffic วิ่งเข้ามาถึงขา Interface ของเราจริงๆ หรือไม่
  • ตัวอย่าง: diag sniffer packet port1 ‘host 192.168.1.10 and port 443’ 4

3. เช็คสถานะสุขภาพของเครื่อง (The Health Check)

get system performance status

  • ทำไมต้องใช้: ดูว่า CPU และ RAM ทำงานหนักแค่ไหน และเครื่องเข้าสู่ Conserve Mode (โหมดประหยัดทรัพยากรเนื่องจาก RAM เต็ม) แล้วหรือยัง

4. ดูตารางเส้นทาง (The Routing Table)

get router info routing-table all

  • ทำไมต้องใช้: ตรวจสอบว่า Firewall รู้จักทางไปปลายทางหรือไม่ มี Default Route ชี้ออกไปถูกขา WAN หรือเปล่า

5. ค้นหาจุดติดขัดของ IPsec VPN (The VPN Debug)

diagnose debug application ike -1

  • ทำไมต้องใช้: เมื่อทำ Site-to-Site VPN แล้ว Tunnel ไม่ Up คำสั่งนี้จะโชว์ขั้นตอนการต่อรอง (Negotiation) ของ Phase 1 และ Phase 2 แบบละเอียดเพื่อหาจุดที่ Config ไม่ตรงกัน

6. ตรวจสอบสถานะ SD-WAN (The SD-WAN Monitor)

diagnose sys sdwan health-check

  • ทำไมต้องใช้: ดูว่า Link ไหนสอบตก SLA ค่า Latency หรือ Packet Loss เกินกว่าที่กำหนดไว้หรือไม่

7. ล้าง Session ที่ค้างหรือผิดปกติ (The Session Clear)

diagnose sys session filter <criteria> และ diagnose sys session clear

  • ทำไมต้องใช้: เมื่อแก้ไข Policy หรือ NAT แล้ว แต่ User ยังใช้งานไม่ได้เพราะติด Session เดิมที่ค้างอยู่ ต้องใช้คำสั่งนี้เพื่อ “ล้างไพ่” ใหม่

8. เช็คพอร์ตเชื่อมต่อระดับ Hardware (The Physical Check)

get system interface physical

  • ทำไมต้องใช้: ดูว่าสายแลนที่เสียบอยู่คุยกันที่ความเร็วเท่าไหร่ (1000Full?) หรือมี Error Counters พุ่งสูงผิดปกติซึ่งบ่งบอกว่าสายแลนหรือหัว RJ45 มีปัญหา

9. ดูรายชื่อ User ที่กำลังใช้งาน (The Active Users)

diagnose firewall auth list

  • ทำไมต้องใช้: ตรวจสอบว่า User ที่ผ่าน Captive Portal หรือเชื่อมต่อ VPN เข้ามา มีกี่คน และได้รับสิทธิ์ (Group) ถูกต้องหรือไม่

10. จัดการไฟล์คอนฟิก (The Config Management)

execute backup config tftp <filename> <tftp_server_ip>

  • ทำไมต้องใช้: เมื่อต้องสำรองข้อมูลด่วนผ่านบรรทัดคำสั่ง เพื่อเก็บไว้เป็นหลักฐานก่อนทำการเปลี่ยนแปลงค่าสำคัญๆ

💡 เคล็ดลับ

ทุกครั้งที่ใช้งานคำสั่งตระกูล diagnose debug อย่าลืมพิมพ์คำสั่ง diagnose debug disable เมื่อใช้งานเสร็จเสมอครับ เพื่อไม่ให้เครื่องต้องแบกภาระในการโชว์ Log ลงบนหน้าจอคอนโซลตลอดเวลา ซึ่งอาจส่งผลต่อประสิทธิภาพเครื่องได้