iptables에서 syn 프록시와 connlimit 규칙을 함께 사용하는 방법은 무엇입니까?

iptables에서 syn 프록시와 connlimit 규칙을 함께 사용하는 방법은 무엇입니까?

나는 syn 에이전트와 connlimit 규칙을 작성하고 싶습니다. 성능 문제로 인해 먼저 패킷을 Syn 프록시로 보내고 싶습니다.

이는 예시 규칙입니다.

#syn proxy rule 
iptables -t raw -A PREROUTING -i eth1 -p tcp -m tcp --syn -j CT --notrack 
iptables -t filter -A FORWARD -i eth1 -p tcp -m tcp -m state --state INVALID,UNTRACKED -j SYNPROXY --sack-perm --timestamp --wscale 7 --mss 1460
iptables -t filter -A FORWARD -i eth1 -m state --state INVALID -j DROP

#connlimit rule 
iptables -t filter -A FORWARD -i eth1 -p tcp -m tcp --syn -m connlimit --connlimit-above 100 -j DROP

문제는 syn 패킷(연결을 여는 패킷)이 syn 프록시 규칙을 초과할 수 없기 때문에 connlimit와 일치할 수 없다는 것입니다. 나는 synproxy와 함께 사용할 수 있도록 connlimit를 작성하는 다른 방법을 찾고 있습니다.

답변1

동일한 규칙(브릿지의 synproxy)을 사용했지만 일반 tcp 요청이 작동하지 않는다는 것을 깨달았습니다. 즉, synproxy 규칙을 구현한 후 모든 syn 요청이 차단되었습니다. tcpdump를 사용하여 모니터링했습니다. 동기화 에이전트 규칙이 예상대로 작동하는지 궁금합니다.

관련 정보