본문 바로가기
침해사고 분석 및 대응

침입차단시스템(iptables)

by 열콩 2023. 12. 31.

패킷 필터링 기능을 가지고 있는 리눅스 커널에 내장된 필터링 기능으로, 상태 추적 기능, NAT 기능, 패킷 레벨에서의 로깅, 확장 모듈을 통한 다양한 기능 제공

형식: iptables t [테이블] -[체인:A/I/D] [] -j [정책]

1) 테이블: 생략하면 자동으로 필터링 테이블 적용

2) 체인: A_Append(마지막 줄에 추가), I_Insert(제일 처음에 추가), D_Delete(삭제)

3) : -s, --sport, -d, --dport, -p 프로토콜(tcp, ucp, icmp, ip), --icmp-type, --tcp-flags,

-m state(확장 기능으로 TCP 상태 기능 사용) --state(TCP 상태_NEW, ESTABLISHED, RELATED, INVALID)

4) 정책: ACCEPT, DROP, REJECT, LOG

**iptables 확장 모듈

모듈 사용 시 [m 사용할 모듈명]이 선행되어야 함

1) connlimit 모듈: 동일한 IPIP대역에 대해 동시 연결 개수 제한. DoS 공격에 효과적인 대응 가능

-m connlimit --connlimit-above n: n을 초과하는 동시 연결 제어

-m connlimit --connlimit-mask mask: 0~32 범위의 마스크 값을 지정해 동일 IP대역에 대한 동시 연결 제어

2) limit 모듈: 룰에 매치되는 비율을 제한하는 기능. 불필요한 로그를 남기지 않도록 할 때 유용.

-m limit limit 6/minute j LOG : 분 당 최대 6개까지 로그에 남김

3) recent 모듈: 동적으로 출발지 IP목록을 생성해 이를 기반으로 패킷 제어

 

**iptables-save > “저장할 파일명 형식으로 저장함