#!/bin/bash # Firewall configuration by # Robert Spangler # Tables Rules CLEAR/FLUSH/RESET ################################ iptables -F iptables -Z iptables -X # Set Default Policies ###################### iptables -P INPUT DROP iptables -P OUTPUT DROP iptables -P FORWARD ACCEPT # Forward Rules ############### iptables -A FORWARD -i eth0 -j WAN iptables -A FORWARD -i eth1 -j LAN # Loopback Rules ################ iptables -A -i lo -j ACCEPT iptables -A -o lo -j ACCEPT # WAN Rules ########### iptables -A WAN -m state --state ESTABLISHED,RELATED -j ACCEPT iptables -A WAN -p tcp --dport 22 -m state --state NEW -j ACCEPT iptables -A WAN -p tcp --dport 80 -m state --state NEW -j ACCEPT iptables -A WAN -j DROP # LAN Rules ########### iptables -A LAN -d 66.110.24.220 -j DROP iptables -A LAN -m state --state ESTABLISHED,RELATED -j ACCEPT iptables -A LAN -p tcp --dport 22 -m state --state NEW -j ACCEPT iptables -A LAN -p udp --dport 53 -m state --state NEW -j ACCEPT iptables -A LAN -p tcp --dport 80 -m state --state NEW -j ACCEPT iptables -A LAN -p udp --dport 137:138 -m state --state NEW -j ACCEPT iptables -A LAN -p tcp --dport 139 -m state --state NEW -j ACCEPT iptables -A LAN -p tcp --dport 445 -m state --state NEW -j ACCEPT iptables -A LAN -p tcp --dport 5901 -m state --state NEW -j ACCEPT iptables -A LAN -j REJECT --reject-with icmp-port-unreachable iptables -A LAN -j DROP # Postrouting Rules ################### iptables -A POSTROUTING -o eth0 -j MASQUERADE