반응형
이번에는 iptables의 특별한 용도 및 옵션, 커스텀 체인에 대해 살펴 볼 것이다.
1. Syn 접속형 패킷 drop
TCP-IP 3핸드쉐이킹은 아래와 같이 수행하는데, syn 패킷은 접속 요청 플래그(syn)이 설정된 패킷으로 이 패킷을 drop 시키면 접속을 할 수 없다. 특히 DDOS의 경우 Syn Flooding은 서버에 Syn 패킷을 많이 보내기 때문에 아래 iptables 명령어로 막을 수 있다.
1) C ——— syn ——-▷ S
2) C ◁——- syn ack —– S
3) C ——— ack ——-▷ S
--tcp-flags는 첫번째 Argument(SYN,ACK,FIN,RST)는 고려를 하는 argument이고 두번째 argument(SYN)은 match하기를 원하는 mask이다.
2. -m 플래그
확장 모듈을 사용하기 위한 match를 명시하는 것이다. 예를 들어 tcp의 상태에 따른 패킷 분류를 설정 한다면 -m state --state 로 설정한다.
이것과 비슷하게 -m conntrack --ctstate 라고 해서 설정할 수 있는데 동일하다고 보면 될 것이다.
자세한 내용은 아래 링크를 참조하자
3. User-defined 체인 생성
빌트인 체인 이외에 custom 체인을 생성할 수 있다. 규칙 집합들을 최적화 해서 사용하는데 유용하고 자주 사용하는 규칙들을 적용해서 사용할 수 있다. 아래와 같이 MyChain이라는 체인을 생성한 뒤 해당 체인에 filter 규칙을 적용한다.
반응형