ฉันจะเขียนการทดสอบอัตโนมัติสำหรับ iptables ได้อย่างไร
ฉันกำลังกำหนดค่าเราเตอร์ Linux iptablesกับ ฉันต้องการเขียนการทดสอบการยอมรับสำหรับการกำหนดค่าที่ยืนยันสิ่งต่าง ๆ เช่น: ปริมาณการใช้งานจากผู้ชายบนอินเทอร์เน็ตไม่ได้ถูกส่งต่อ TCP ไปยังพอร์ต 80 บนเว็บเซิร์ฟเวอร์ใน DMZ จากโฮสต์บน LAN องค์กรจะถูกส่งต่อ คำถามที่พบบ่อยโบราณบ่งบอกถึงiptables -Cตัวเลือกที่อนุญาตให้ใครซักคนถามว่า "ได้รับแพ็คเก็ตจาก X, Y ในพอร์ต Z มันจะได้รับการยอมรับหรือไม่?" แม้ว่าคำถามที่พบบ่อยแสดงให้เห็นว่ามันใช้งานได้เช่นนี้สำหรับiptables(แต่อาจไม่ใช่ipchainsตามที่ใช้ในตัวอย่าง) -Cตัวเลือกดูเหมือนจะไม่จำลองแพคเก็ตทดสอบที่วิ่งผ่านกฎทั้งหมด แต่จะตรวจสอบว่ามีกฎการจับคู่ตรงกัน สิ่งนี้มีค่าเพียงเล็กน้อยในการทดสอบ ฉันต้องการยืนยันว่ากฎมีผลตามที่ต้องการไม่ใช่แค่มีอยู่จริง ฉันได้พิจารณาที่จะสร้างการทดสอบ VM และเครือข่ายเสมือนเพิ่มเติมจากนั้นตรวจสอบด้วยเครื่องมือที่ต้องการnmapผลกระทบ อย่างไรก็ตามฉันกำลังหลีกเลี่ยงวิธีนี้เนื่องจากความซับซ้อนในการสร้างเครื่องเสมือนเพิ่มเติมเหล่านั้นซึ่งเป็นวิธีที่ค่อนข้างหนักในการสร้างทราฟฟิกการทดสอบ มันจะดีถ้ามีวิธีการทดสอบอัตโนมัติซึ่งสามารถทำงานบนเซิร์ฟเวอร์จริงในการผลิต ฉันจะแก้ไขปัญหานี้ได้อย่างไร มีกลไกบางอย่างที่ฉันอาจจะใช้ในการสร้างหรือการจำลองการจราจรโดยพลแล้วทราบว่ามันเป็น (หรือจะเป็น) ลดลงหรือได้รับการยอมรับโดยiptables?