리눅스 – iptables NAT rule

젠투 리눅스에서 NAT 할때 설정한 룰입니다. (2010/02/22 수정)
더 자세한 설정은 아래 주소를 참고 하세요.

http://www.gentoo.org/doc/en/home-router-howto.xml

ruo91 ~ # touch firewall.sh
ruo91 ~ # chmod +x
firewall.sh
ruo91 ~ # vim firewall.sh

#/bin/bash

# $IPT 변수 설정
IPT=’/sbin/iptables’

# 이전 룰셋 초기화
$IPT -F
$IPT -t nat -F

# 기본 규칙 설정
$IPT -P INPUT ACCEPT
$IPT -P OUTPUT ACCEPT
$IPT -P FORWARD DROP

# 인터페이스 지정
export WAN=eth0
export LAN=eth1

# LAN 설정
$IPT -I INPUT 1 -i ${LAN} -j ACCEPT
$IPT -I INPUT 1 -i lo -j ACCEPT
$IPT -A INPUT -p UDP –dport bootps ! -i ${LAN} -j REJECT
$IPT -A INPUT -p UDP –dport domain ! -i ${LAN} -j REJECT

# 외부에서 SSH 접속 허용
$IPT -A INPUT -p TCP –dport ssh -i ${WAN} -j ACCEPT

# 서비스 포트 관련 패킷 차단
$IPT -A INPUT -p TCP ! -i ${LAN} -d 0/0 –dport 0:1023 -j DROP
$IPT -A INPUT -p UDP ! -i ${LAN} -d 0/0 –dport 0:1023 -j DROP

# NAT 설정
$IPT -I FORWARD -i ${LAN} -d 192.168.0.0/255.255.0.0 -j DROP
$IPT -A FORWARD -i ${LAN} -s 192.168.0.0/255.255.0.0 -j ACCEPT
$IPT -A FORWARD -i ${WAN} -d 192.168.0.0/255.255.0.0 -j ACCEPT
$IPT -t nat -A POSTROUTING -o ${WAN} -j MASQUERADE

# 커널에 아이피 포워딩 가능하도록 설정
echo 1 > /proc/sys/net/ipv4/ip_forward
for f in /proc/sys/net/ipv4/conf/*/rp_filter ; do echo 1 > $f ; done

# 규칙 모두 저장
/etc/init.d/iptables save
echo “iptables 규칙 적용을 완료 하였습니다.”

ruo91 ~ #
./firewall.sh
 * Saving iptables state …                        [ ok ]
iptables 규칙 적용을 완료 하였습니다.

Loading Disqus Comments ...
Loading Facebook Comments ...

No Trackbacks.