Iptables -F có xóa vĩnh viễn tất cả các quy tắc iptables không?


8

Trong một tài liệu đào tạo của RHEL, tác giả nói:

... Chạy lệnh sau để tắt tường lửa trên hệ thống hiện tại: iptables -F

Anh ấy rõ ràng sử dụng từ "vô hiệu hóa" mà theo tôi gợi ý rằng nó sẽ đơn giản để kích hoạt lại. Khi đọc trang man cho iptables, tôi thấy điều này:

Xóa chuỗi đã chọn (tất cả các chuỗi trong bảng nếu không có chuỗi nào được đưa ra). Điều này tương đương với việc xóa tất cả các quy tắc từng cái một.

Tôi có thể làm rõ về hành vi dự kiến ​​không?


2
Lưu ý rằng iptables -Fxóa tất cả các quy tắc trong bảng "bộ lọc", nó không xóa các bảng khác (nat, mangle ...) và không khôi phục các chính sách về mặc định của chúng, vì vậy chúng thực sự không thể nói là vô hiệu hóa tường lửa .
Stéphane Chazelas

Câu trả lời:


13

Các iptablesquy tắc được lưu trữ ở hai nơi trên các hệ thống Red Hat:

  • Trong bộ nhớ trong kernel đang chạy, nơi mã tường lửa kiểm tra chúng trên I / O mạng. Xóa các quy tắc chỉ iptables -Fđược loại bỏ quy tắc này.

  • Trong /etc/sysconfig/iptablesđó chúng được tải khi khởi động. Bạn có thể buộc tải lại mà không cần khởi động lại bằng service iptables reloadhoặc ...restart.

Vì vậy, câu trả lời là không, tuôn ra các quy tắc iptables -Fkhông phải là vĩnh viễn.

Khi bạn đi vào setupvà sửa đổi các quy tắc tường lửa, nó sẽ lưu chúng vào /etc/sysconfig/iptables. Bạn không cần phải chỉnh sửa tệp đó trực tiếp, nhưng nếu bạn biết iptablesđịnh dạng dòng lệnh, bạn có thể dễ dàng tìm ra định dạng của tệp này.


Câu trả lời tuyệt vời. Tôi đánh giá cao các chi tiết và làm rõ. Cảm ơn Warren.
Mike B

9

Ngoài ra, như một điểm tham chiếu, đây là cách xóa TẤT CẢ các quy tắc iptables hiện tại:

#!/bin/sh
echo "Stopping firewall and allowing everyone..."
iptables=/sbin/iptables
$iptables -F
$iptables -X
$iptables -t nat -F
$iptables -t nat -X
$iptables -t mangle -F
$iptables -t mangle -X
$iptables -P INPUT ACCEPT
$iptables -P FORWARD ACCEPT
$iptables -P OUTPUT ACCEPT

4
Thực tế có nhiều bảng hơn thế. Ít nhất -t raw-t security. Thay vì mã hóa cứng, hãy sử dụng/proc/net/ip_tables_names
derobert
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.