#! /bin/sh
# http://www.linuxunderground.be

# pour sauver ces règles   : /etc/init.d/iptables save
# pour démarrer le firewall : /etc/init.d/iptables start 
# pour démarrer automatiquement le firewall : rc-update -a iptables default
# pour vérifier ces règles : iptables -L -v 

INTERFACE=eth0

# Tout vider
iptables -F
iptables -X     # On supprime les chaines non standards

iptables -P INPUT DROP
iptables -P FORWARD DROP
iptables -P OUTPUT DROP

iptables -A INPUT -i lo -j ACCEPT
iptables -A OUTPUT -o lo -j ACCEPT

# configuration de base
iptables -A INPUT -i $INTERFACE -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT
iptables -A OUTPUT -o $INTERFACE -m conntrack --ctstate NEW,ESTABLISHED,RELATED -j ACCEPT

# edonkey
iptables -A INPUT -i $INTERFACE -p tcp --dport 4662 -j ACCEPT
iptables -A INPUT -i $INTERFACE -p udp --dport 4666 -j ACCEPT
# overnet
iptables -A INPUT -i $INTERFACE -p tcp --dport 2859 -j ACCEPT
iptables -A INPUT -i $INTERFACE -p udp --dport 2859 -j ACCEPT
# fasttrack
iptables -A INPUT -i $INTERFACE -p tcp --dport 1214 -j ACCEPT

# Loguer les paquets rejetés
# rajouter un préfixe pour pouvoir s'y retrouver dans les logs
iptables -N LOG_DROP
iptables -A LOG_DROP -j LOG --log-prefix '[IPTABLES DROP] : '
iptables -A LOG_DROP -j DROP

iptables -A INPUT -j LOG_DROP
iptables -A OUTPUT -j LOG_DROP
iptables -A FORWARD -j LOG_DROP
