ฉันมีหลายเครื่องที่มีอินเตอร์เฟสเครือข่ายจำนวนหนึ่ง:
- eth0: LAN ท้องถิ่น
- eth1: บางครั้งใช้สำหรับการเชื่อมต่อกับอินเทอร์เน็ตเกตเวย์
- ppp0: โมเด็มอัปลิงค์เป็นทางเลือกแทน eth1
- tun0: อุโมงค์ OpenVPN
ฉันต้องการเปิดใช้งานtun0
เพื่อเข้าถึง LAN ในพื้นที่eth0
ซึ่งทำได้ง่ายด้วย:
iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
echo 1 >/proc/sys/net/ipv4/ip_forward
แต่ฉันจะไม่อนุญาตให้แพ็คเก็ตมาจากeth1
หรือppp0
ที่จะถูกส่งไปยัง eth0 และแทนที่จะเพียงอนุญาตให้tun0
ใช้เครื่องเป็นประตูหรือไม่?
ฉันจำเป็นต้องทำเครื่องหมายแพ็กเก็ตเหล่านี้โดยใช้กฎ iptable บางอย่างเพื่อให้สามารถ จำกัด กฎ MASQUERADE ให้เป็นแพ็คเก็ตเหล่านี้เท่านั้นหรือไม่ ตัวอย่างการกำหนดค่า iptables ชื่นชมอย่างมาก
Debian Linux 6 บน i386; eth0
เครือข่ายย่อยที่แตกต่างกันไปขึ้นอยู่กับเครื่อง
FORWARD
คำใบ้ห่วงโซ่นั่นคือสิ่งที่ฉันต้องการ