Tôi muốn dừng internet trên hệ thống của mình bằng iptables vậy tôi phải làm sao?
iptables -A INPUT -p tcp --sport 80 -j DROP
hoặc là
iptables -A INPUT -p tcp --dport 80 -j DROP
?
Tôi muốn dừng internet trên hệ thống của mình bằng iptables vậy tôi phải làm sao?
iptables -A INPUT -p tcp --sport 80 -j DROP
hoặc là
iptables -A INPUT -p tcp --dport 80 -j DROP
?
Câu trả lời:
Thực tế là bạn đang hỏi 2 câu hỏi khác nhau.
--sport
là viết tắt của --source-port
--dport
là viết tắt của --destination-port
Ngoài ra, internet không chỉ đơn giản là HTTP
giao thức mà thường chạy trên cổng 80. Tôi nghi ngờ bạn đang hỏi cách chặn các yêu cầu HTTP. Để làm điều này, bạn cần chặn 80 trên chuỗi ra.
iptables -A OUTPUT -p tcp --dport 80 -j DROP
sẽ chặn tất cả các yêu cầu HTTP gửi đi, đến cổng 80, do đó, điều này sẽ không chặn SSL, 8080 (alt http) hoặc bất kỳ cổng lạ nào khác, để thực hiện những điều bạn cần lọc L7 với kiểm tra gói sâu hơn nhiều.
Chỉ để mở rộng câu trả lời của @xenoterracide Bạn có thể đọc thêm về iptables trong trang iptables(8)
(loại man 8 iptables
) nhưng ở đó bạn sẽ không tìm thấy --dport
hoặc --sport
. Các tùy chọn này được liệt kê trong iptables-extensions(8)
phần đa hướng, tcp, udp và các nơi khác. Điều này có thể thú vị với bạn.
Để "dừng internet trên hệ thống của bạn", bạn có thể chỉ cần tắt giao diện mạng bằng sudo ifdown <INTERNET FACING INTERFACE>
hoặc sudo ip link set <INTERNET FACING INTERFACE> down
ví dụ sudo ip link set eth0 down
. Để thực hiện điều này vĩnh viễn, bạn cần có một cái nhìn trong / etc / mạng / giao diện (Ubuntu, Debian ...) hoặc / etc / sysconfig / network-scripts / ifcfg- (trên RHEL, SLES, CentOS, Oracle Linux, Fedora ...) hoặc cấu hình trình quản lý mạng của bạn hoặc bất kỳ thứ gì khác bạn sử dụng. Điều này tất nhiên sẽ cắt bất kỳ kết nối nào đến hoặc từ "internet" ngay cả những kết nối không dựa trên HTTP và sẽ ngăn chặn hiệu quả hoạt động nhẹ của việc sử dụng iptables
và xử lý lưu lượng 2 lớp OSI / ISO.