| พอร์ต | การกระทำ | จาก | |
|---|---|---|---|
22/tcp |
ALLOW | Anywhere | |
80/tcp |
ALLOW | Anywhere | |
443/tcp |
ALLOW | Anywhere | |
8083/tcp |
ALLOW | Anywhere | |
3306/tcp |
DENY | Anywhere | |
25/tcp |
DENY | Anywhere |
UFW มีอยู่เพราะไวยากรณ์ iptables ดิบ ๆ ไม่ให้อภัยอะไรเลย และในเรื่องนี้มันทำได้ดี สิ่งที่มันไม่ได้ทำคือทำให้ชุดกฎอ่านทบทวนได้ง่ายในอีกหลายเดือนถัดมา เมื่อ ufw status numbered คืนค่ามาสามสิบบรรทัด และคุณกำลังพยายามหาว่าบรรทัดไหนยังจำเป็นอยู่
หน้านี้แสดงกฎชุดเดียวกัน แต่ยกนโยบายค่าเริ่มต้นของขาเข้าและขาออกขึ้นมาไว้ข้างหน้า เพราะสิ่งที่คนลืมคือสองอย่างนี้เอง ชุดกฎที่ดูเข้มงวดไม่มีความหมายอะไรเลยหากนโยบายค่าเริ่มต้นของขาเข้ายังคงเป็น allow กฎแสดงพร้อมการกระทำ พอร์ต โปรโตคอล และต้นทาง ส่วนรายการ IPv6 จะยืนอยู่ข้างคู่ IPv4 ของมันแทนที่จะทำให้รายการยาวเป็นสองเท่า
ความผิดพลาดที่ควรมองหา ได้แก่ พอร์ตที่เปิดไว้เพื่อทดสอบครั้งเดียวแล้วไม่เคยปิด บริการที่ฟังอยู่บนทุกอินเทอร์เฟซทั้งที่ localhost ก็พอ และกฎที่ปล่อยทั้งซับเน็ตเข้ามาในที่ซึ่งที่อยู่เดียวก็เพียงพอ หน้าพอร์ตที่เปิดแสดงอีกครึ่งหนึ่งของภาพ นั่นคือสิ่งที่ฟังอยู่จริงหลังกฎเหล่านั้น
ควรเทียบภาพสองภาพนี้อยู่เสมอ เพราะทั้งคู่แยกจากกันอย่างเงียบ ๆ กฎข้อหนึ่งอาจปิดพอร์ตที่ไม่มีใครฟังอยู่เลย เมื่อเป็นเช่นนั้นกฎนั้นก็เป็นเพียงส่วนเกินในชุดกฎ ในทางกลับกันก็เกิดได้เช่นกัน คือมีบริการฟังอยู่บนทุกอินเทอร์เฟซหลังกฎที่คุณเชื่อว่าปิดแล้ว คำตอบเดิมของคำถามนี้คือ netstat และยังคงเป็นคำตอบที่ถูกต้อง เพียงแต่ต้องอ่านผลลัพธ์ด้วยตาทุกครั้ง