메뉴 건너뛰기

조회 수 7665 추천 수 0 댓글 0
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄
# 초기화
iptables -F

# 포트 스캔 방지
iptables -A INPUT -d 0.0.0.0/0 -p icmp -j DROP

# DoS 공격 방지
iptables -N syn-flood
iptables -A syn-flood -m limit --limit 12/second --limit-burst 24 -j RETURN
iptables -A syn-flood -j DROP

# ssh 정책(root, webpage 계정만 접속 가능)
# ssh 포트 : 22, root 번호: 0, webpage 번호:500 
iptables -A INPUT -p tcp --dport 22 -m owner --uid-owner 0 -j ACCEPT
iptables -A INPUT -p tcp --dport 22 -m owner --gid-owner 0 -j ACCEPT
iptables -A OUTPUT -p tcp --dport 22 -m owner --uid-owner 0 -j ACCEPT
iptables -A OUTPUT -p tcp --dport 22 -m owner --gid-owner 0 -j ACCEPT
iptables -A INPUT -p tcp --dport 22 -m owner --uid-owner 500 -j ACCEPT
iptables -A INPUT -p tcp --dport 22 -m owner --gid-owner 500 -j ACCEPT
iptables -A OUTPUT -p tcp --dport 22 -m owner --uid-owner 500 -j DROP
iptables -A OUTPUT -p tcp --dport 22 -m owner --gid-owner 500 -j DROP

# 1초에 15번 이상의 HTTP 접근을 할 경우 차단
iptables -A INPUT -p tcp --dport 80 -m recent --update --seconds 1 --hitcount 15 --name HTTP -j DROP

#--------------------------------------------------------------------
# 커널 컴파일 및 iptables 패치 후, connlimit 사용이 가능한 경우
# 1초에 15번 이상의 HTTP 접근을 할 경우 차단
#iptables -A INPUT -p tcp --syn --dport 80 -m connlimit --connlimit-above 15 -connlimit-mask 24 -j DROP

#메일서버의 경우 동시에 5개이상 SMTP 접근일 경우 5분동안 접근 제한
#iptables -A INPUT -m recent --name spammer --rcheck --seconds 300 -j DROP
#iptables -A INPUT -p tcp --syn --dport 25 -m connlimit --connlimit-above 5 -m recent --name spammer --set -j DROP
#---------------------------------------------------------------------

#----------------------------------------------------------------------
# STRING 필터기능
# MSN 문자열이 들어간 패킷 차단
#iptables -A FORWARD -m string --string "messenger.msn.com" -j DROP

# 싸이월드 접속차단
#iptables -A FORWARD -p tcp --dport 80 -m string --string "Host: cyworld.nate.com" -j DROP
#----------------------------------------------------------------------

# 서버가 해킹당했을 때 DoS공격지로 사용될 경우에 적용.
# DNS 쿼리 이외 UDP 패킷 전송 방지
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A OUTPUT -p udp ! --dport 53 -m state --state NEW -j DROP
스크립트 실행 후
# service iptables save
# service iptables restart


당연한 이야기지만, 이 스크립트는 root 권한으로 실행시켜야 한다. 
시스템이 부팅될 때 이를 실행하고자 한다면, /etc/rc.local 에 등록해두자.

이를 해제하기 위해서는


iptables -F
iptables -F syn-flood
iptables -X syn-flood


List of Articles
번호 제목 날짜 조회 수
237 & 실행과 nohup 실행 2017.04.18 7841
236 AIDE를 이용한 리눅스 파일 시스템의 무결성 점검 2014.03.26 8555
235 apache + mysql 자동 실행 방법 (소스설치) 2014.02.27 7966
234 Apache 2.2.17 + WebLogic 10.3.3 연동하기 2016.11.22 8798
233 Apache 2.x 에서 maxclients 1024 제한 초과 방법 (수정 중..) 2016.03.18 8558
232 Apache Mod_Security 사용방법 2016.04.22 8922
231 apache status 모듈 ( 모니터링 ) 2014.02.27 8501
230 apache vhost deny 설정 2014.03.26 7587
229 apache 구동중지되어있을 때 재구동 스크립트 2016.03.18 7373
228 Apache 동시접속자수 확인 2019.02.14 1932
227 apache 로그정리 (logrotate) 2014.02.27 7453
226 Apache 리다이렉트 2016.03.18 8155
225 Apache 웹서버 server-status 모니터링 2014.02.27 8074
224 Apache 웹서버 server-status 모니터링 file 2014.03.26 6954
223 apache 컴파일시 동시 접속자 제한 변경하기 2014.03.26 8158
222 Apache 환경 설정 파일 정보 (httpd.conf) 2016.09.19 7472
221 Apache(아파치)를 사용해 redirect(리다이렉트) 하는 방법 7 2014.02.27 7667
220 apache, mod_ssl 설치 (apache 1.3.37버전) 2014.02.27 7667
219 APACHE, OHS 400 웹로직 연동후 특정 작업에 400 error 2016.12.30 8649
218 apache2 트래픽 모듈 mod_cband 사용법 2019.02.14 1129
Board Pagination Prev 1 2 3 4 5 6 7 8 9 10 ... 12 Next
/ 12

하단 정보를 입력할 수 있습니다

© k2s0o1d4e0s2i1g5n. All Rights Reserved