ซึ่งสามารถทำได้โดยการใช้ iptables
โดยการบล็อกทราฟฟิกที่มุ่งหน้าจากอินเทอร์เฟซเครือข่าย OpenVPN ไปยังอินเทอร์เฟซเครือข่ายด้วยการเข้าถึงอินเทอร์เน็ต
openvpn-ติดตั้ง สร้างไม่กี่ iptables
ไฟล์การกำหนดค่าที่จัดการกฎสำหรับคุณ
คำแนะนำต่อไปนี้ถือว่า:
จูน0
เป็นอินเทอร์เฟซเครือข่ายของ OpenVPN
eth0
เป็นอินเทอร์เฟซเครือข่ายที่มีการเข้าถึงอินเทอร์เน็ต
กฎการทำความสะอาดเบื้องต้น
ก่อนอื่น เราต้องปิดการใช้งานกฎปัจจุบันที่โหลดโดย openvpn-install โดยเรียกใช้คำสั่งต่อไปนี้:
systemctl หยุด iptables-openvpn
ไฟล์การกำหนดค่า
หมายเหตุ: ใช้ หยด
แทน ปฏิเสธ
ยังใช้ได้เช่นกัน เพียงแต่ไม่ส่งคืนข้อผิดพลาดไปยังไคลเอนต์ VPN ดู หน้าคน iptables สำหรับข้อมูลเพิ่มเติม
เพิ่ม openvpn-rules.sh
ใน /etc/iptables/add-openvpn-rules.sh
ให้เปลี่ยนบรรทัดจาก:
iptables -I FORWARD 1 -i tun0 -o eth0 -j ยอมรับ
ถึง:
iptables -I FORWARD 1 -i tun0 -o eth0 -j REJECT
rm-openvpn-rules.sh
ใน /etc/iptables/rm-openvpn-rules.sh
ให้เปลี่ยนบรรทัดจาก:
iptables -D FORWARD -i tun0 -o eth0 -j ยอมรับ
ถึง:
iptables -D FORWARD -i tun0 -o eth0 -j ปฏิเสธ
การใช้การเปลี่ยนแปลง
เรียกใช้คำสั่งต่อไปนี้และการเปลี่ยนแปลงของคุณควรได้รับการบันทึกและมีผล:
systemctl เริ่ม iptables-openvpn
แยกอุโมงค์
จากนั้นสามารถใช้การพุชเส้นทางไปยังไคลเอ็นต์ VPN เพื่อขอให้ส่งทราฟฟิกอินเทอร์เน็ตผ่านเครือข่ายของตนเอง นี่คือบรรทัดที่ฉันเพิ่มใน OpenVPN ของฉัน เซิร์ฟเวอร์.conf
ไฟล์เพื่อให้บรรลุสิ่งนี้ (เครือข่าย VPN ของฉันอยู่ที่ 10.8.0.0/24
):
กด "เส้นทาง 10.8.0.0 255.255.255.0 vpn_gateway"
กด "เส้นทาง 0.0.0.0 0.0.0.0 net_gateway"