차단하려는 HTTP 302 패킷은 다음과 같습니다.
Header
HTTP/1.0 302 Moved Temporarily
Location: http://172.16.0.5/[***]
Content-Type: text/html;
Content-Length: 0
Connection: Close
"를 일치시켜 이 패키지를 모두 제거하고 싶습니다.http://172.16.0.5/"내 OpenWRT 라우터에서요.
지금 나는 -m string --algo bm --string "HTTP/1.1 302 "
사용하고 있어요https://unix.stackexchange.com/a/229967/38666302개의 패킷을 모두 차단하려면 어떻게 해야 합니까?http://172.16.0.5/" 오직?
답변1
패킷이 172.16.0.5에서 오는 경우 다음을 사용할 수 있습니다.
-m string --algo bm --string "HTTP/1.1 302 " --source 172.16.0.5
그렇지 않으면 문자열 일치를 다시 사용하십시오.
-m string --algo bm --string "HTTP/1.1 302 " -m string --algo bm --string "172.16.0.5"
또한 bm 알고리즘이 일부 패킷을 잃을 수 있다는 것을 경험했기 때문에 "bm" 대신 "--algo kmp"를 사용하는 것이 좋습니다.
또한 성능이 필요한 경우 문자열 일치 규칙은 비용이 많이 든다는 점을 잊지 마십시오.