iptables kết nối MỚI so với --syn


13

Sự khác biệt giữa:

iptables ... -m state --state NEW

iptables ... --syn

Người đầu tiên nên chọn kết nối MỚI, nhưng kết nối mới AFAIK được tạo bằng cách gửi cờ đồng bộ TCP. Một cái khác có nghĩa là như vậy - các gói có cờ syn.

Bạn có thể đưa ra bất kỳ ví dụ thực tế khi các lệnh trên trả về kết quả khác nhau?

Câu trả lời:


8

Các --synlá cờ rất hữu ích để kiểm tra giao thông TCP, nhưng NEWnhà nước có thể được sử dụng cho các giao thức khác (bao gồm TCP) như UDPICMP. Tôi có thể nói rằng đó NEWlà tổng quát hơn --syntùy chọn TCP.

Từ hướng dẫn sử dụng iptables, bạn có thể đọc:

NEW    meaning that the packet has started a new connection,
       or otherwise associated with a connection which has not seen packets in both directions

Một ví dụ, một yêu cầu DNS sẽ khớp với NEWtrạng thái, nhưng nó sẽ không khớp với quy tắc với --syntùy chọn. Đơn giản, nó là một datagram UDP.

Ngoài ra, --syntùy chọn có thể được sử dụng để kiểm tra các gói TCP có kết hợp cờ xấu để thả chúng.

Ngoài ra, bạn có thể sử dụng cả hai tùy chọn này cùng nhau để kiểm tra NEWcác luồng TCP mà không cần --syngói đầu tiên và thả chúng như:

$ sudo iptables -A bad_tcp_packets -p tcp ! --syn -m state --state NEW -j LOG --log-prefix "New not syn:"

Ở đây, chúng tôi đang thêm các loại gói này vào chuỗi do người dùng xác định được gọi bad_tcp_packetslà bỏ / ghi nhật ký, v.v ...

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.