#!/bin/sh ######################################### ##### CONFIGURATION # I=/usr/sbin/iptables # Path to iptables binary INTIF="eth0" # Internal Interface INTIP="192.168.0.1" # Internal IP Address EXTIF="eth1" # External Interface EXTIP="10.0.0.100" # External IP Address ##### END CONFIGURATION # ######################################### if [ "$1" = "status" ]; then echo "[iptables]";$I -t nat -L;$I -n -L;exit; fi echo " Clearing any existing rules and setting default policy.." $I -P INPUT ACCEPT $I -F INPUT $I -P OUTPUT ACCEPT $I -F OUTPUT $I -P FORWARD DROP $I -F FORWARD $I -t nat -F $I -t mangle -F $I -X if [ "$1" = "stop" ]; then echo "Firewall rules deleted...";exit; fi echo " Setting default policies" $I -A INPUT -i lo -j ACCEPT # Allow INPUT on local loopback $I -A INPUT -i $INTIF -j ACCEPT # Allow INPUT on LAN $I -A INPUT -i $EXTIF -j ACCEPT # Allow INPUT on EXT $I -A OUTPUT -o lo -j ACCEPT # Allow OUTPUT on local loopback $I -A OUTPUT -o $INTIF -j ACCEPT # Allow OUTPUT on LAN $I -A OUTPUT -o $EXTIF -j ACCEPT # Allow OUTPUT on EXT echo " Setting NAT/MASQ/FWD policies" echo "1" > /proc/sys/net/ipv4/ip_forward $I -A FORWARD -i $EXTIF -o $INTIF -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT $I -A FORWARD -i $INTIF -o $EXTIF -j ACCEPT $I -t nat -A POSTROUTING -o $EXTIF -j MASQUERADE