#!/bin/sh echo "######################################################################################" echo "========== Initialisation ============================================================" echo "######################################################################################" echo "Mise a zero des regles Iptables" iptables --flush echo "Chargement du module ip_forward" echo "1" > /proc/sys/net/ipv4/ip_forward echo "Lancement du serveur DHCP sur l'interface Lan eth1" dhcpd3 eth1 echo "Declaration des interfaces reseaux" #Peripherique connecte au reseau local CONNEXION_LOCALE1="eth1" #Peripherique connecte a internet (ppp0 pour les modem et ethx pour les modem ethernet) CONNEXION_INTERNET="eth0" echo "######################################################################################" echo "========== Initialisation Terminee !!! ===============================================" echo "######################################################################################" echo "######################################################################################" echo "======================== REGLES ELEMENTAIRES =========================================" echo "Reinitialisation des regles" iptables -F iptables -P OUTPUT ACCEPT iptables -P INPUT ACCEPT iptables -P FORWARD ACCEPT iptables -t nat -F echo "Regles par defaut pour le firewall" echo "blocage des connexions entrantes" iptables -P INPUT DROP echo "Activation du forward" iptables -P FORWARD ACCEPT echo "Connexions sortantes autorisees" iptables -P OUTPUT ACCEPT echo "Accès total a l'interface de LoopBack" iptables -A INPUT -i lo -j ACCEPT echo "Aucune restriction dans le reseau Lan" iptables -A INPUT -i $CONNEXION_LOCALE1 -j ACCEPT iptables -A OUTPUT -o $CONNEXION_LOCALE1 -j ACCEPT echo "Ping de la mort qui tue" iptables -A FORWARD -p icmp --icmp-type echo-request -m limit --limit 1/s -j ACCEPT iptables -A INPUT -p icmp -j ACCEPT echo "######################################################################################" echo "========== Activation de la passerelle ===============================================" echo "Resolution de nom" iptables -A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT iptables -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT echo "Masquerading" echo "activation du nat pour le reseau local" iptables -t nat -A POSTROUTING -o $CONNEXION_INTERNET -j MASQUERADE iptables -A FORWARD -p tcp --tcp-flags SYN,RST SYN -j TCPMSS -o $CONNEXION_INTERNET --clamp-mss-to-pmtu echo "####################################################################" echo "========== Activation des regles pour chieur =================" echo "Amule (7561, 7571, 4672) " iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 7561 -j DNAT --to-destination 192.168.0.2:7561 iptables -t nat -A PREROUTING -i eth0 -p udp --dport 7571 -j DNAT --to-destination 192.168.0.2:7571 iptables -t nat -A PREROUTING -i eth0 -p udp --dport 4672 -j DNAT --to-destination 192.168.0.2:4672 #iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 4711 -j DNAT --to-destination 192.168.0.2:4711 #iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 4712 -j DNAT --to-destination 192.168.0.2:4712 echo "freephonie le telephone par ip (5060, 8000)" iptables -t nat -A PREROUTING -i eth0 -p udp --dport 5060 -j DNAT --to-destination 192.168.0.2:5060 iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 8000 -j DNAT --to-destination 192.168.0.2:8000 echo "freeplayer et multiposte pour freebox" iptables -t nat -A PREROUTING -s 212.27.38.253 -d 88.164.249.78 -j DNAT --to-destination 192.168.0.2 iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 8080 -j DNAT --to-destination 192.168.0.2:8080 iptables -t nat -A PREROUTING -i eth0 -p udp --dport 8080 -j DNAT --to-destination 192.168.0.2:8080 iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 8080 -j DNAT --to-destination 192.168.0.3:8080 iptables -t nat -A PREROUTING -i eth0 -p udp --dport 8080 -j DNAT --to-destination 192.168.0.3:8080 echo "####################################################################" echo "========== Activation des regles pour serverdeb =================" echo "Serveur ssh (22)" iptables -A INPUT -p tcp --dport 22 -j ACCEPT iptables -A INPUT -p tcp --dport 22 -m recent --update --seconds 60 --hitcount 4 --name SSH -j DROP iptables -A INPUT -p tcp --dport 22 -m recent --set --name SSH iptables -A INPUT -p tcp --dport 22 -j ACCEPT echo "Serveur FTP pour le partage de fichiers (21)" iptables -A INPUT -p tcp --dport 21 -j ACCEPT echo "Serveurs web Apache (80)" iptables -A INPUT -p tcp --dport 80 -j ACCEPT iptables -A INPUT -p tcp --dport 443 -j ACCEPT echo "Serveurs web Gnump3d (666)" iptables -A INPUT -p tcp --dport 666 -j ACCEPT echo "Stream Mp3 avec icecast2 (8888, 6600)" iptables -A INPUT -p tcp --dport 8888 -j ACCEPT iptables -A INPUT -p tcp --dport 6600 -j ACCEPT echo "serveur de mail (25)" iptables -A INPUT -p tcp --dport 25 -j ACCEPT echo "####################################################################" echo "==========serveur mldonkey==============================" echo "interface web" iptables -A INPUT -p tcp --dport 4080 -j ACCEPT echo "reseau Kad" iptables -A INPUT -p tcp --dport 20022 -j ACCEPT iptables -A INPUT -p udp --dport 20022 -j ACCEPT echo "reseau eDonkey2000" iptables -A INPUT -p tcp --dport 21042 -j ACCEPT iptables -A INPUT -p udp --dport 21046 -j ACCEPT echo "reseau BitTorrent" iptables -A INPUT -p tcp --dport 6882 -j ACCEPT echo "reseau Gnutella" iptables -A INPUT -p tcp --dport 6346 -j ACCEPT iptables -A INPUT -p udp --dport 6346 -j ACCEPT echo "reseau Gnutella2" iptables -A INPUT -p tcp --dport 6347 -j ACCEPT iptables -A INPUT -p udp --dport 6347 -j ACCEPT echo "trackmania (2350, 3450, 2355, 5000 )" iptables -A INPUT -p tcp --dport 2350 -j ACCEPT iptables -A INPUT -p tcp --dport 2355 -j ACCEPT iptables -A INPUT -p tcp --dport 3450 -j ACCEPT iptables -A INPUT -p tcp --dport 5000 -j ACCEPT echo "quake3 (27960)" iptables -A INPUT -p udp --dport 27960 -j ACCEPT echo "####################################################################" echo "========== Fin des règles de filtrage =================" #Fait par The Marauder (c) Copyright all right reserved (r)