꼬물이

iptables 명령어 사용법 본문

정보보안/네트워크 보안

iptables 명령어 사용법

빨간고양이 2018. 10. 31. 13:05

* 기본적인 명령어 용법

 iptables [-t table명] 명령어 [룰] [타겟]


* 테이블 설정

  -t filter 또는 -t nat 또는 -t mangle, 설정하지 않으면 filter 테이블로 인식


* 기본 명령어

-

설명

예시

-A

제일 끝에 룰을 추가

> iptables -A INPUT

-D

룰을 테이블에서 삭제

> iptables -D INPUT -p tcp --dport 80 -j DROP

> iptables -D INPUT 1

-I

제일 처음에 룰을 추가

> iptables -I INPUT -p tcp --dport 80 -j ACCEPT

-L

chain 의 룰 목록

> iptables -L INPUT

-F

모든 룰을 삭제

> iptables -F INPUT

-N

새로운 chain 을 생성.

> iptables -N TEST

-X

지정한 chain 을 삭제

> iptables -X TEST

-P

기본정책(ACCEPT, DROP, REJECT) 설정

> iptables -P INPUT DROP


* 룰

  -s [IP 또는 IP대역]

  -d [IP 또는 IP대역]

  -p tcp [--sport] [--dport] [--tcp-flags] [--syn] [--tcp-option]

  -p udp [--sport] [--dport]

  -p icmp [--icmp-type]

  -m state --state

  -m [기타 매칭 확장] 

  [기타 매칭 확장] : mac, limit, owner, unclean, connlimit, recent


* 타겟

  -j [정책] 

  정책 : ACCEPT, DROP, REJECT, LOG


* 패킷 필터 작성 예

케이스

작성 룰

위조된 TCP SYN 패킷 차단

> iptables -A INPUT -p tcp ! --syn -m state --state NEW -j DROP

웹서버 TCP SYN Flooding 공격 대응

> iptables -A INPUT -p tcp --syn --dport 80 -m connlimit --connlimit-above 5 -j DROP

또는

> iptables -A INPUT -p tcp --syn --dport 80 -m connlimit --connlimit-above 10 --connlimit-mask 24 -j DROP

비정상 TCP 플래그 조합(SYN_FIN 플래그) 차단

> iptables -A INPUT -p tcp --tcp-flags ALL SYN,FIN -j DROP

비정상 TCP 플래그 조합(SYN_FIN 플래그 변형) 차단

> iptables -A INPUT -p tcp --tcp-flags SYN,FIN SYN,FIN -j DROP

비정상 TCP 플래그 조합(FIN 스캔) 차단

> iptables -A INPUT -p tcp --tcp-flags ALL FIN -j DROP

비정상 TCP 플래그 조합(NULL 스캔) 차단

> iptables -A INPUT -p tcp --tcp-flags ALL NONE -j DROP

비정상 TCP 플래그 조합(XMAS 스캔) 차단

> iptables -A INPUT -p tcp --tcp-flags ALL ALL -j DROP

SSH Brute Force/ Dictionary Attack 차단

> iptables -A INPUT -m state --state NEW -p tcp --dport 22 -m recent --name SSH_DROP --set

> iptables -A INPUT -m state --state NEW -p tcp --dport 22 -m recent --name SSH_DROP --update --seconds 60 --hitcount 5 -j DROP


'정보보안 > 네트워크 보안' 카테고리의 다른 글

snort 사용법  (0) 2018.10.31
iptables 명령어 사용법  (0) 2018.10.31
라우터를 통한 네트워크 보안(ACL)  (0) 2018.10.31
SIEM(Security Information & Event Management)  (0) 2018.06.28
0 Comments
댓글쓰기 폼