본문으로 바로가기

CentOS 6.5에서 iptables 간단설정

category 카테고리 없음 2014. 9. 1. 09:54




1) 기본 정책을 ACCEPT 로 변경

 # iptables -P INPUT ACCEPT


2) 체인에 정의된 모든 규칙을 삭제
# iptables -F

3) 확인해보면 규칙이 모두 제거되어 있다.
# iptables -L
Chain INPUT (policy ACCEPT)
target     prot opt source               destination

Chain FORWARD (policy ACCEPT)
target     prot opt source               destination

Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination

4) INPUT 체인에 로컬호스트 인터페이스에 들어오는 모든 패킷을 허용 추가
# iptables -A INPUT -i lo -j ACCEPT

일반적으로 많은 소프트웨어들이 localhost 어댑터와 통신이 되어야 하기에 필요하다.

5) INPUT 체인에 state 모듈과 매치되는 연결상태가 ESTABLISHED,RELATED인 패킷에 대해 허용 추가
# iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT

아니지만 연관성을 가진 패킷 (ICMP 에러나 ftp데이터 접속을 형성하는 패킷)을 허용하는 규칙이다.

6) INPUT 체인에 프로톨콜이 tcp이며 목적지포트가 22번인 패킷에 대해 허용 추가
# iptables -A INPUT -p tcp -m tcp --dport 22 -j ACCEPT

이로써 SSH 접속이 허용된다. telnet의 경우는 목적지 포트가 23번 

7) 이제 INPUT 체인에 대한 기본 정책을 버림(DROP)으로 변경
# iptables -P INPUT DROP

8) FORWARD 체인에 대한 기본정책을 버림으로 변경
# iptables -P FORWARD DROP

서버를 라우팅기기로 사용하지 않기에 모든 포워드에 대한 패킷을 DROP

9) OUTPUT 체인에 대한 기본정책을 허용으로 변경
# iptables -P OUTPUT ACCEPT

10) 설정한 것들에 대한 확인
# iptables -L -v
Chain INPUT (policy DROP 108 packets, 12199 bytes)
 pkts bytes target     prot opt in     out     source               destination
    0     0 ACCEPT     all  --  lo     any     anywhere             anywhere
  273 25012 ACCEPT     all  --  any    any     anywhere             anywhere            state RELATED,ESTABLISHED
    0     0 ACCEPT     tcp  --  any    any     anywhere             anywhere            tcp dpt:ssh

Chain FORWARD (policy DROP 0 packets, 0 bytes)
 pkts bytes target     prot opt in     out     source               destination

Chain OUTPUT (policy ACCEPT 9 packets, 1612 bytes)
 pkts bytes target     prot opt in     out     source               destination

11) 설정한 것들 저장
# service iptables save
iptables: 방화벽 규칙을 /etc/sysconfig/iptables에 저장 중: [  OK  ]



댓글을 달아 주세요