Tại sao các gói bị từ chối ngay cả thông qua một quy tắc chấp nhận tất cả chúng trước khi ra tay?


7

Cuối cùng tôi cũng đang đọc về iptables. Tôi hơi bối rối vì chuỗi đầu vào từ bảng bộ lọc (như đã cài đặt, fedora 17), trông như thế này:

target     prot opt source               destination         
ACCEPT     all  --  anywhere             anywhere             state RELATED,ESTABLISHED
ACCEPT     icmp --  anywhere             anywhere            
ACCEPT     all  --  anywhere             anywhere            
ACCEPT     udp  --  anywhere             224.0.0.251          state NEW udp dpt:mdns
REJECT     all  --  anywhere             anywhere             reject-with icmp-host-prohibited

Từ những gì tôi đã đọc, quy tắc thứ ba sẽ chấp nhận mọi thứ, nhưng đây không phải là trường hợp (tôi phải vô hiệu hóa iptables để cho phép truy cập vào sshd hoặc máy chủ https). Tất cả các chuỗi khác cho tất cả các bảng khác là CHẤP NHẬN chính sách, không có quy tắc nào, ngoại trừ bộ lọc FORWARD mà DỰ ÁN mọi thứ.

Vậy ACCEPT thực sự làm gì?

iptables -v -L

Chain INPUT (policy ACCEPT 0 packets, 0 bytes)
 pkts bytes target     prot opt in     out     source               destination         
36625   38M ACCEPT     all  --  any    any     anywhere             anywhere             state RELATED,ESTABLISHED
    0     0 ACCEPT     icmp --  any    any     anywhere             anywhere            
    1    60 ACCEPT     all  --  lo     any     anywhere             anywhere            
    0     0 ACCEPT     udp  --  any    any     anywhere             224.0.0.251          state NEW udp dpt:mdns
  534 73926 REJECT     all  --  any    any     anywhere             anywhere             reject-with icmp-host-prohibited

Chain FORWARD (policy ACCEPT 0 packets, 0 bytes)
 pkts bytes target     prot opt in     out     source               destination         
    0     0 REJECT     all  --  any    any     anywhere             anywhere             reject-with icmp-host-prohibited

Chain OUTPUT (policy ACCEPT 31484 packets, 3973K bytes)
 pkts bytes target     prot opt in     out     source               destination

Vì vậy, điều này ngụ ý với tôi rằng quy tắc thứ ba thực sự chỉ áp dụng cho giao diện loopback? [Vâng]


Điểm mấu chốt ở đây dường như là chỉ iptables -Lcó khả năng gây nhầm lẫn cho người dùng bằng cách bỏ qua thông tin cần thiết và do đó dẫn đến kết luận sai; tốt hơn luôn luôn làm cho nó iptables -L -v.
Lumi

Câu trả lời:


8

Các ACCEPTmục tiêu là một mục tiêu chấm dứt cho phép gói tin để vượt qua Netfilter. Mục tiêu REJECTkết thúc là không cho phép gói thông qua một cách hiệu quả và khiến phản hồi ICMP được gửi đến người khởi tạo gói. Quy tắc thứ ba trong mẫu của bạn rất có thể trông như thế này nếu bạn liệt kê các bảng bằng lệnh 'iptables -v -L':

Chain INPUT (policy ACCEPT 0 packets, 0 bytes)
 pkts bytes target     prot opt in     out     source               destination         
  639  304K ACCEPT     all  --  any    any     anywhere             anywhere             state RELATED,ESTABLISHED
    0     0 ACCEPT     icmp --  any    any     anywhere             anywhere            
  101  7798 ACCEPT     all  --  lo     any     anywhere             anywhere            

Trong cột incó một giao diện quy tắc phù hợp trên. Đối với quy tắc thứ ba, đó là logiao diện, vì vậy quy tắc này cho phép mọi lưu lượng truy cập trên loopbackgiao diện và điều này là chính xác, vì nếu không, bạn sẽ không thể truy cập bất kỳ địa phương nào đến các dịch vụ máy chủ qua TCPhoặc UDPtại localhostđịa chỉ.

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.