#!/bin/bash ######################## # Set ######################## IPTABLES=/sbin/iptables MYSELF=`/sbin/ifconfig wlan0|/bin/grep "inet addr"|/bin/cut -d':' -f2|/bin/cut -d' ' -f1` #TRUST_HOST=219.186.166.92 LOOPBACK=127.0.0.1 ANY=0.0.0.0/0 #echo $MYSELF
######################## # Flash rules ######################## $IPTABLES -F -t filter $IPTABLES -F -t nat $IPTABLES -F -t mangle $IPTABLES -X -t filter $IPTABLES -X -t nat $IPTABLES -X -t mangle $IPTABLES -Z -t filter $IPTABLES -Z -t nat $IPTABLES -Z -t mangle
######################## # Default Policy ######################## $IPTABLES -t filter -P INPUT DROP $IPTABLES -t filter -P OUTPUT DROP $IPTABLES -t filter -P FORWARD DROP $IPTABLES -t nat -P PREROUTING DROP $IPTABLES -t nat -P POSTROUTING ACCEPT $IPTABLES -t nat -P OUTPUT ACCEPT $IPTABLES -t mangle -P INPUT ACCEPT $IPTABLES -t mangle -P OUTPUT ACCEPT $IPTABLES -t mangle -P FORWARD ACCEPT $IPTABLES -t mangle -P PREROUTING ACCEPT $IPTABLES -t mangle -P POSTROUTING ACCEPT
######################## # Loopback ######################## #$IPTABLES -A INPUT -i lo -j ACCEPT #$IPTABLES -A OUTPUT -o lo -j ACCEPT $IPTABLES -A INPUT -s $LOOPBACK -d $LOOPBACK -j ACCEPT $IPTABLES -A OUTPUT -s $LOOPBACK -d $LOOPBACK -j ACCEPT
######################## # ICMP ######################## ### from MYSELF $IPTABLES -A OUTPUT -p icmp --icmp-type echo-request -s $MYSELF -j ACCEPT #$IPTABLES -A OUTPUT -p icmp -s $MYSELF -j ACCEPT $IPTABLES -A INPUT -p icmp -d $MYSELF -j ACCEPT ### IN ### #$IPTABLES -A INPUT -p icmp --icmp-type echo-request -s $TRUST_HOST -d $MYSELF -j ACCEPT #$IPTABLES -A OUTPUT -p icmp --icmp-type echo-reply -s $MYSELF -d $TRUST_HOST -j ACCEPT ### OUT ### #$IPTABLES -A INPUT -p icmp --icmp-type echo-reply -d $MYSELF -j ACCEPT
################################## # Spoofed Packet(Source) ################################## #$IPTABLES -A INPUT -s 255.0.0.0/8 -j LOG --log-level info --log-prefix "SP(S:255.0.0.0/8):" #$IPTABLES -A INPUT -s 255.0.0.0/8 -j DROP #$IPTABLES -A INPUT -s 0.0.0.0/8 -j LOG --log-level info --log-prefix "SP(S:0.0.0.0/8):"
######################## # Return Packet ######################## $IPTABLES -A INPUT -p tcp -m state --state ESTABLISHED,RELATED -j ACCEPT $IPTABLES -A INPUT -p udp -m state --state ESTABLISHED,RELATED -j ACCEPT
######################## # Accept Server Service ######################## #$IPTABLES -A INPUT -p tcp -d $MYSELF ! --syn -m state --state NEW -j DROP ### SSH ### #$IPTABLES -A INPUT -p tcp -d $MYSELF --dport 22 -m state --state NEW -j ACCEPT ### DNS ### #$IPTABLES -A INPUT -p udp -d $MYSELF --dport 53 -m state --state NEW -j ACCEPT ### HTTP ### #$IPTABLES -A INPUT -p tcp -d $MYSELF --dport 80 -m state --state NEW -j ACCEPT ### FTP ### #$IPTABLES -A INPUT -p tcp -d $MYSELF --dport 21 -m state --state NEW -j ACCEPT
######################## # OUTPUT ######################## #$IPTABLES -A OUTPUT -p tcp -d $MYSELF ! --syn -m state --state NEW -j DROP ### DNS ### $IPTABLES -A OUTPUT -p udp -s $MYSELF --dport 53 -j ACCEPT $IPTABLES -A OUTPUT -p tcp -s $MYSELF --dport 53 -j ACCEPT $IPTABLES -A OUTPUT -p udp -s $MYSELF --dport 68 -m state --state NEW -j ACCEPT $IPTABLES -A OUTPUT -p tcp -s $MYSELF --dport 80 -m state --state NEW,ESTABLISHED -j ACCEPT #$IPTABLES -A OUTPUT -p udp --dport 53 -j ACCEPT #$IPTABLES -A OUTPUT -p tcp --dport 53 -j ACCEPT ### HTTP ### #$IPTABLES -A OUTPUT -p tcp --dport 80 -m state --state NEW -j ACCEPT