#!/bin/sh # iptables script 2007-10-17 # by pmo # Flush old rules, old custom tables iptables --flush iptables --delete-chain # Set default policies for all three default chains iptables -P INPUT DROP iptables -P FORWARD DROP iptables -P OUTPUT DROP # Enable free use of loopback interfaces iptables -A INPUT -i lo -j ACCEPT iptables -A OUTPUT -o lo -j ACCEPT # All TCP sessions should begin with SYN iptables -A INPUT -p tcp ! --syn -m state --state NEW -s 0.0.0.0/0 -j DROP # Accept inbound TCP packets iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT iptables -A INPUT -p tcp --dport 21 -m state --state NEW -s 0.0.0.0/0 -j ACCEPT iptables -A INPUT -p tcp --dport 22 -m state --state NEW -s 0.0.0.0/0 -j ACCEPT iptables -A INPUT -p tcp --dport 25 -m state --state NEW -s 0.0.0.0/0 -j ACCEPT iptables -A INPUT -p tcp --dport 80 -m state --state NEW -s 0.0.0.0/0 -j ACCEPT iptables -A INPUT -p tcp --dport 110 -m state --state NEW -s 0.0.0.0/0 -j ACCEPT iptables -A INPUT -p tcp --dport 9000 -m state --state NEW -s 0.0.0.0/0 -j ACCEPT iptables -A INPUT -p tcp --dport 8767 -m state --state NEW -s 0.0.0.0/0 -j ACCEPT iptables -A INPUT -p tcp --dport 6666 -m state --state NEW -s 0.0.0.0/0 -j ACCEPT iptables -A INPUT -p tcp --dport 6665 -m state --state NEW -s 0.0.0.0/0 -j ACCEPT iptables -A INPUT -p tcp --dport 6669 -m state --state NEW -s 0.0.0.0/0 -j ACCEPT iptables -A INPUT -p tcp --dport 6663 -m state --state NEW -s 0.0.0.0/0 -j ACCEPT iptables -A INPUT -p tcp --dport 14534 -m state --state NEW -s 0.0.0.0/0 -j ACCEPT iptables -A INPUT -p tcp --dport 6661 -m state --state NEW -s 0.0.0.0/0 -j ACCEPT # Accept inbound UDP packets iptables -A INPUT -p udp -m udp --dport 123 -s 0.0.0.0/0 -j ACCEPT iptables -A INPUT -p udp -m udp --dport 67 -s 0.0.0.0/0 -j ACCEPT iptables -A INPUT -p udp -m udp --dport 53 -s 0.0.0.0/0 -j ACCEPT # Accept outbound packets iptables -I OUTPUT 1 -m state --state RELATED,ESTABLISHED -j ACCEPT iptables -A OUTPUT -p udp --dport 53 -m state --state NEW -j ACCEPT