본문 바로가기
Linux

IPtable - Syn Flood Protection setting

by 올엠 2020. 12. 2.
728x90

오늘 아시는 분이 Linux 에서 Syn Flood 공격 차단에 대해서 문의 해 왔습니다.

아래 정책인데, 보면 limit per second 를 이용해서 특정횟수이상 초단위 연결을 차단하는 룰셋인것 같다.

# Interface incoming syn-flood protection
-A INPUT -p tcp —syn -m limit —limit 1/s —limit-burst 3 -j RETURN
-N syn_flood
-A INPUT -p tcp —syn -j syn_flood
-A syn_flood -m limit —limit 1/s —limit-burst 3 -j RETURN
-A syn_flood -j DROP
#Limiting the incoming icmp ping request:
-A INPUT -p icmp -m limit —limit 1/s —limit-burst 1 -j ACCEPT

-A INPUT -p icmp -m limit —limit 1/s —limit-burst 1 -j LOG —log-prefix PING-DROP:
-A INPUT -p icmp -j DROP

-A OUTPUT -p icmp -j ACCEPT

 

그리고 이상한 TCP 플래그의 트래픽도 차단하는 룰셋도 함께 적용하면 좋을듯하다.

##### TCP deny #####
-A INPUT -p tcp -m tcp —tcp-flags FIN,SYN,RST,ACK SYN -j DROP
-A INPUT -p tcp —tcp-flags SYN,FIN SYN,FIN -j DROP
-A INPUT -p tcp —tcp-flags SYN,RST SYN,RST -j DROP
-A INPUT -p tcp —tcp-flags FIN,RST FIN,RST -j DROP
-A INPUT -p tcp —tcp-flags ACK,FIN FIN -j DROP

 

위 룰셋은 플래그가 일반적이지 않은 TCP 트래픽을 차단하는데, 위 설정은 방화벽등을 통해서 진행할 수 없는 경우 설정을 고려해봄이 좋고, 충분한 테스트를 통해 검증후에 사용하기 바란다.

300x250
300x250

댓글0