iptables sẽ khớp với gói yêu cầu ICMP sau đây dưới dạng trạng thái THÀNH LẬP sau khi gói trả lời đầu tiên được gửi


7

Môi trường thử nghiệm: CentOS 6.3 - kernel 2.6.32-279.el6.i686, iptables v1.4.7 Win7 <---> CentOS Windows liên tục phát lại yêu cầu tiếng vang ICMP ở tốc độ 10pkt / giây cho CentOS.

Trong iptables, tôi đã thêm các quy tắc như dưới đây để giới hạn tốc độ gói yêu cầu icmp đến. Nhưng nó không hoạt động. Bởi vì sau khi yêu cầu icmp đến đầu tiên được chấp nhận bởi quy tắc 1 và máy chủ của tôi đã trả lời, tất cả các yêu cầu icmp sau đây sẽ được chấp nhận bởi quy tắc 2, sẽ chấp nhận yêu cầu icmp đến dưới dạng gói trạng thái THÀNH LẬP. Tôi nghĩ rằng điều này không có ý nghĩa.

nhập mô tả hình ảnh ở đây

Tôi đã kiểm tra "Hướng dẫn Iptables 1.2.2" và tôi tìm thấy tuyên bố như dưới đây. http://www.frozentux.net/iptables-tutorial/iptables-tutorial.html#STATEMACHINE

Gói trả lời được coi là THÀNH LẬP, như chúng tôi đã giải thích. Tuy nhiên, chúng ta có thể biết chắc chắn rằng sau khi trả lời ICMP, sẽ hoàn toàn không có lưu lượng truy cập hợp pháp trong cùng một kết nối. Vì lý do này, mục theo dõi kết nối bị hủy khi trả lời đã đi hết cấu trúc Netfilter. Trong mỗi trường hợp trên, yêu cầu được coi là MỚI, trong khi trả lời được coi là THÀNH LẬP.

Tuy nhiên, tôi thấy mục conntrack luôn ở đó /proc/net/nf_conntracksau khi trả lời đầu tiên được gửi.

ipv4     2 icmp     1 24 src=192.168.56.1 dst=192.168.56.101 type=8 code=0 id=1 src=192.168.56.101 dst=192.168.56.1 type=0 code=0 id=1 mark=0 secmark=0 use=2

Tôi nghĩ rằng mỗi yêu cầu ICMP đến phải được coi là trạng thái MỚI không được thiết lập ngay cả kết nối icmp đã được thiết lập.

Chỉnh sửa cho tôi nếu tôi không hiểu trận đấu bang theo cách thích hợp.


Bạn có thể cung cấp một liên kết đến hướng dẫn iptables bạn đang đọc không?
bahamat

Chắc chắn, liên kết đã được thêm vào.
Deepsky

Câu trả lời:


2

Như bạn đề xuất, theo dõi kết nối rõ ràng ghi lại "phiên" ICMP của bạn và do đó, nó xem xét các gói ở trạng thái THÀNH LẬP sau khi thực hiện một vòng tròn ping-pong.

Để đạt được mục tiêu điều chỉnh các yêu cầu ICMP của bạn, bạn di chuyển quy tắc "bỏ tất cả ICMP khác" (quy tắc thứ ba trong ảnh chụp màn hình của bạn) ngay bên dưới quy tắc chấp nhận các yêu cầu tiếng vang với giới hạn tốc độ. Bằng cách này, quy tắc THÀNH LẬP sẽ không được xem xét cho các gói ICMP.

Tuy nhiên, vì các gói ICMP cũng được sử dụng để liên lạc với nhiều vấn đề khác nhau, tôi thực sự khuyên bạn nên thêm quy tắc chấp nhận tất cả các gói icmp với một loại khác ngoài "yêu cầu tiếng vang" để đảm bảo bạn không gặp sự cố với các kết nối TCP (ví dụ như ví dụ: "Từ chối kết nối" được truyền đạt bằng ICMP). Quy tắc tôi đề nghị là:

iptables -A INPUT -p icmp ! --icmp-type echo-request -j ACCEPT

và đặt nó ngay bên dưới quy tắc giới hạn tỷ lệ của bạn chấp nhận các yêu cầu ECHO và ngay phía trên quy tắc "bỏ tất cả ICMP khác".

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.