# 기본 허용 정책
iptables -A INPUT -s 1.1.1.1 -d 도착지 IP -j ACCEPT //1.1.1.1 아이피의 접근을 허용한다.
iptables -A INPUT -s 2.2.2.2 -d 도착지 IP -j ACCEPT //2.2.2.2 아이피의 접근을 허용한다.
iptables -A INPUT -s 3.3.3.3 -d 도착지 IP -j DROP //3.3.3.3 아이피의 접근을 제한한다.
# 게이트웨이
iptables -A INPUT -s gateway -d 도착지 IP -j ACCEPT //게이트웨이 주소 정도는 넣어줘야, 외부와의 통신이 가능합니다
iptables -A INPUT -s 0.0.0.0/0 -d 도착지 IP -j DROP //전체적인 접근을 차단한다
# 포트 개방 및 제한
iptables -I INPUT -p tcp -s 0.0.0.0/0 -d 도착지 IP --dport 80 -j ACCEPT // 80 포트 개방
iptables -I INPUT -p tcp -s 192.168.0.2 -d 도착지 IP --dport 22 -j DROP // 22 포트 개방
# state 매치 연결 상태의 종류 [INPUT Chain에 적용된 것을 기준으로 설명드립니다.]
NEW : 이전에 없던 패킷의 새로운 첫 연결 요청이 Client PC로부터 들어오는 패킷을 의미한다.
ESTABLISHED : NEW 상태를 거친 이후의 패킷 / 새로운 연결 요청에 관한 그 후의 패킷들이 오고가는 상태를 의미한다. RELATED : 새로운 연결 요청이지만, 기존의 연결과 관련된 패킷을 의미한다. (FTP 데이터 전송, ICMP 에러 전송 등)
INVALID : 이전 상태 중에 어떠한 것도 적용되지 않으면 패킷의 상태를 INVALID로 표시합니다. (결론: 비정상적인 접근)
iptables -I INPUT -m state -d 도착지 IP -p all --state ESTABLISHED,RELATED -j ACCEPT iptables -I INPUT -m state -d 도착지 IP -p all --state INVALID -j DROP
# iptables -I INPUT -m geoip -d 도착지 IP --src-cc CN -j DROP //CN -> 중국IP 차단 # iptables -I INPUT -m geoip -d 도착지 IP --src-cc KR -j ACCEPT // KR -> 한국IP 허용
#iptables -I INPUT -m connlimit -p tcp -d 도착지 IP --dport 80 --connlimit-above 10 -j DROP
-d [목적지 아이피]로 들어오는 패킷들의 연결 개수를 제한하는 것을 의미합니다.
10번 이상의 접근이 발생하면 iptables를 재시작할 때 까지 Source IP 는 접근을 할 수가 없습니다.
iptables -I INPUT -m limit -p tcp -d 도착지 IP --dport 80 --limit 100/m --limit-burst 5 -j DROP
-d [목적지 아이피]로 들어오는 패킷이 --limit-burst 개수만큼 매칭이 된 후, 1초/1분/1시간당 [특정 횟수] 만큼 패킷을 차단하고, 그 이후의 패킷들은 허용하는 정책입니다.
'SW > IPTABLES' 카테고리의 다른 글
IPTABLES - 파일 백업 관리하기 (0) | 2021.11.10 |
---|---|
iptables 초기 세팅 ( 개인적 선호 방식 ) (0) | 2021.11.09 |
IPTABLES 초기 세팅 설정 (0) | 2021.10.09 |
원격지에서iptables 설정이 필요할때 (0) | 2021.10.05 |
IPTABLE 정리 (0) | 2021.10.05 |
댓글