Citation :
#!/bin/sh -norc
# Paramètrage du réseau local (LAN = Local Area Network)
LAN_INTERFACE=eth1 ; # Interface réseau interne
LAN_IP=192.168.0.1 ; # Adresse réseau interne
LAN_NETWORK=192.168.0.0/24 ; # Réseau interne
LAN_BROADCAST=192.168.0.255 ; # Adresse de broadcast interne
WAN_INTERFACE=eth0 ; # Interface modem
WAN_IP=192.168.1.173 ;
#WAN_IP=`/sbin/ifconfig | grep "P-t-P" | sed "s/^*\([.0-9]*\).*/\1/g"` ; # Récupère l'adresse réseau externe (Internet)
WAN_NETWORK=0.0.0.0/0 ;
WAN_BROADCAST=255.255.255.0;
#on charge les modules utiles
modprobe ip_tables
modprobe ip_nat_ftp
modprobe ip_nat_irc
modprobe iptable_filter
modprobe iptable_mangle
modprobe iptable_nat
#on permet la redirection de paquets
echo 1 > /proc/sys/net/ipv4/ip_forward
# pas de spoofing (bloque les pings)
if [ -e /proc/sys/net/ipv4/conf/all/rp_filter ]
then
for filtre in /proc/sys/net/ipv4/conf/*/rp_filter
do
echo 1 > $filtre
done
fi
# pas de icmp
echo 1 > /proc/sys/net/ipv4/icmp_echo_ignore_all
echo 1 > /proc/sys/net/ipv4/icmp_echo_ignore_broadcasts
# Initialise la table Filter (par défaut tout les échanges sont refusés)
echo "+ Initialisation de la table Filter"
iptables -t filter -F
iptables -t filter -X
iptables -t filter -P INPUT DROP
iptables -t filter -P FORWARD DROP
iptables -t filter -P OUTPUT DROP
# Initialise la table NAT (par défaut tout les échanges sont activés)
echo "+ Initialisation de la table NAT"
iptables -t nat -F
iptables -t nat -X
iptables -t nat -P PREROUTING ACCEPT
iptables -t nat -P OUTPUT ACCEPT
iptables -t nat -P POSTROUTING ACCEPT
echo "+ Règles du localhost"
iptables -t filter -A OUTPUT -o lo -p all -j ACCEPT
iptables -t filter -A INPUT -i lo -p all -j ACCEPT
echo "+ Règles du réseau local ($LAN_INTERFACE - $LAN_IP - $LAN_NETWORK)"
# Connexions firewall <-> réseau
iptables -t filter -A OUTPUT -o $LAN_INTERFACE -s $LAN_IP -d $LAN_NETWORK -p all -j ACCEPT
iptables -t filter -A INPUT -i $LAN_INTERFACE -s $LAN_NETWORK -d $LAN_IP -p all -j ACCEPT
# Connexions firewall <-> broadcast réseau
iptables -t filter -A OUTPUT -o $LAN_INTERFACE -s $LAN_IP -d $LAN_BROADCAST -p all -j ACCEPT
iptables -t filter -A INPUT -i $LAN_INTERFACE -s $LAN_BROADCAST -d $LAN_IP -p all -j ACCEPT
echo "+ truc pour accepter les résolutions de noms 53"
iptables -A INPUT -i $WAN_INTERFACE --protocol udp --source-port 53 -j ACCEPT
iptables -A OUTPUT -o $WAN_INTERFACE --protocol udp --destination-port 53 -j ACCEPT
iptables -A INPUT -i $WAN_INTERFACE --protocol tcp --source-port 53 -j ACCEPT
iptables -A OUTPUT -o $WAN_INTERFACE --protocol tcp --destination-port 53 -j ACCEPT
echo "+ on accepte le www 80"
iptables -A INPUT -i $WAN_INTERFACE --protocol tcp --source-port 80 -m state --state ESTABLISHED -j ACCEPT
iptables -A OUTPUT -o $WAN_INTERFACE --protocol tcp --destination-port 80 -m state --state NEW,ESTABLISHED -j ACCEPT
echo "+ on accepte la connection à irc 6667"
iptables -A INPUT -i $WAN_INTERFACE --protocol tcp --source-port 6667 -m state --state ESTABLISHED -j ACCEPT
iptables -A OUTPUT -o $WAN_INTERFACE --protocol tcp --destination-port 6667 -m state --state NEW,ESTABLISHED -j ACCEPT
echo "+ on accepte les ssh 22"
iptables -A INPUT -i $WAN_INTERFACE --protocol tcp --source-port 22 -m state --state ESTABLISHED -j ACCEPT
iptables -A OUTPUT -o $WAN_INTERFACE --protocol tcp --destination-port 22 -m state --state NEW,ESTABLISHED -j ACCEPT
echo "+ on accepte le pop de gmail 995"
iptables -A INPUT -i $WAN_INTERFACE --protocol tcp --source-port 995 -m state --state ESTABLISHED -j ACCEPT
iptables -A OUTPUT -o $WAN_INTERFACE --protocol tcp --destination-port 995 -m state --state NEW,ESTABLISHED -j ACCEPT
echo "+ on accepte le smtp de gmail 587"
iptables -A INPUT -i $WAN_INTERFACE --protocol tcp --source-port 587 -m state --state ESTABLISHED -j ACCEPT
iptables -A OUTPUT -o $WAN_INTERFACE --protocol tcp --destination-port 587 -m state --state NEW,ESTABLISHED -j ACCEPT
#MSN MSN MSN MSN MSN flute zut prout chier poil marche pas
echo "+ on accepte la connection a msn 1863"
iptables -A INPUT -i $WAN_INTERFACE --protocol tcp --source-port 1863 -m state --state RELATED,ESTABLISHED -j ACCEPT
iptables -A OUTPUT -o $WAN_INTERFACE --protocol tcp --destination-port 1863 -m state --state NEW,ESTABLISHED -j ACCEPT
echo "+ on accepte la connection a jabber 5223"
iptables -A INPUT -i $WAN_INTERFACE --protocol tcp --source-port 5223 -m state --state RELATED,ESTABLISHED -j ACCEPT
iptables -A OUTPUT -o $WAN_INTERFACE --protocol tcp --destination-port 5223 -m state --state NEW,ESTABLISHED -j ACCEPT
echo "+ on accepte la connection a icq 5190"
iptables -A INPUT -i $WAN_INTERFACE --protocol tcp --source-port 5190 -m state --state RELATED,ESTABLISHED -j ACCEPT
iptables -A OUTPUT -o $WAN_INTERFACE --protocol tcp --destination-port 5190 -m state --state NEW,ESTABLISHED -j ACCEPT
|