ฉันต้องการหยุดอินเทอร์เน็ตในระบบของฉันโดยใช้ iptables ฉันควรทำอย่างไร
iptables -A INPUT -p tcp --sport 80 -j DROP
หรือ
iptables -A INPUT -p tcp --dport 80 -j DROP
?
ฉันต้องการหยุดอินเทอร์เน็ตในระบบของฉันโดยใช้ iptables ฉันควรทำอย่างไร
iptables -A INPUT -p tcp --sport 80 -j DROP
หรือ
iptables -A INPUT -p tcp --dport 80 -j DROP
?
คำตอบ:
ในความเป็นจริงคุณกำลังถามคำถาม 2 แบบ
--sport
สั้นสำหรับ --source-port
--dport
สั้นสำหรับ --destination-port
อินเทอร์เน็ตยังไม่ได้เป็นเพียงHTTP
โปรโตคอลซึ่งเป็นสิ่งที่มักจะทำงานบนพอร์ต 80 ฉันสงสัยว่าคุณกำลังขอวิธีบล็อกคำขอ HTTP ในการทำเช่นนี้คุณต้องบล็อก 80 บนเครือข่ายขาออก
iptables -A OUTPUT -p tcp --dport 80 -j DROP
จะบล็อกคำขอ HTTP ขาออกทั้งหมดไปที่พอร์ต 80 ดังนั้นสิ่งนี้จะไม่บล็อก SSL, 8080 (alt http) หรือพอร์ตแปลก ๆ อื่น ๆ เพื่อทำสิ่งต่าง ๆ ที่คุณต้องการกรอง L7 ด้วยการตรวจสอบแพ็กเก็ตที่ลึกกว่า
เพียงเพื่อขยายคำตอบของ @xenoterracide คุณสามารถอ่านเพิ่มเติมเกี่ยวกับ iptables ใน manpage ที่iptables(8)
(ชนิดman 8 iptables
) แต่มีคุณจะไม่พบหรือ--dport
--sport
ตัวเลือกเหล่านี้มีการระบุไว้ในiptables-extensions(8)
ส่วน multiport, tcp, udp และที่อื่น ๆ สิ่งนี้อาจน่าสนใจสำหรับคุณ
ที่จะ "หยุดอินเทอร์เน็ตในระบบของคุณ" คุณสามารถอาจจะเพียงแค่ปิดการเชื่อมต่อเครือข่ายด้วยsudo ifdown <INTERNET FACING INTERFACE>
หรือตัวอย่างเช่นsudo ip link set <INTERNET FACING INTERFACE> down
sudo ip link set eth0 down
หากต้องการทำให้ถาวรคุณต้องดู / etc / network / interfaces (Ubuntu, Debian ... ) หรือ / etc / sysconfig / network-สคริปต์ / ifcfg- (บน RHEL, SLES, CentOS, Oracle Linux, Fedora ... ) หรือกำหนดค่าตัวจัดการเครือข่ายหรืออะไรก็ตามที่คุณใช้ หลักสูตรนี้จะตัดการเชื่อมต่อไปยังหรือจาก "อินเทอร์เน็ต" แม้จะไม่ใช้ HTTP ก็ตามและจะป้องกันไม่ให้เกิดการใช้iptables
และประมวลผลทราฟฟิก OSI / ISO ของเลเยอร์ 2 เล็กน้อย