All pastes #240263 Raw Edit

Sans nom

public shellscript v1 · immutable
·published 2006-11-05 18:06 UTC
rendered paste body
#!/bin/sh################################################################################ Variables globales################################################################################ Paramètrage du réseau local (LAN = Local Area Network)LAN_INTERFACE=ath0           ; # Interface réseau interneLAN_IP=192.168.1.2            ; # Adresse réseau interneLAN_NETWORK=192.168.1.0/24    ; # Réseau interneLAN_BROADCAST=192.168.1.255   ; # Adresse de broadcast interne# Paramètrage de la connexion Internet (WAN = Wild Area Network = Réseau Large)WAN_INTERFACE=eth0            ; # Interface réseau externe (Internet)WAN_IP=81.56.20.162               ; # Adresse réseau externe (Internet)WAN_NETWORK=0.0.0.0/0        ; # Réseau externe (Internet)PF_IP=192.168.1.10    ; # Adresse IP du serveur sur le LANPORT_TCP=34909PORT_UDP=27990############################################################################################################################################################### A PARTIR DE CE POINT, VOUS N'AVEZ PLUS BESOIN DE CONFIGURER CE SCRIPT!!!############################################################################################################################################################################################################################################## Initialisation de Netfilter################################################################################ Initialise la table Filter (par défaut tout les échanges sont refusés)iptables -t filter -Fiptables -t filter -Xiptables -t filter -P INPUT   DROPiptables -t filter -P FORWARD DROPiptables -t filter -P OUTPUT  DROP# Initialise la table NAT (par défaut tout les échanges sont activés)iptables -t nat -Fiptables -t nat -X                                                                                          iptables -t nat -P PREROUTING  ACCEPTiptables -t nat -P OUTPUT      ACCEPTiptables -t nat -P POSTROUTING ACCEPT# Initialise la table Mangle (par défaut tout les échanges sont activés)iptables -t mangle -Fiptables -t mangle -Xiptables -t mangle -P PREROUTING  ACCEPTiptables -t mangle -P INPUT       ACCEPTiptables -t mangle -P FORWARD     ACCEPTiptables -t mangle -P OUTPUT      ACCEPTiptables -t mangle -P POSTROUTING ACCEPT################################################################################ Règles du localhost# On NE fait PAS de restriction aux adresses IP source / destination 127.0.0.0###############################################################################iptables -t filter -A OUTPUT -o lo -p all -j ACCEPTiptables -t filter -A INPUT  -i lo -p all -j ACCEPT################################################################################ Règles de connexion au reseau local# Tout est autorisé################################################################################ Connexions firewall <-> réseauiptables -t filter -A OUTPUT -o $LAN_INTERFACE -s $LAN_IP -d $LAN_NETWORK -p all -j ACCEPTiptables -t filter -A INPUT -i $LAN_INTERFACE -s $LAN_NETWORK -d $LAN_IP -p all -j ACCEPT# Connexions firewall <-> broadcast réseauiptables -t filter -A OUTPUT -o $LAN_INTERFACE -s $LAN_IP -d $LAN_BROADCAST -p all -j ACCEPTiptables -t filter -A INPUT  -i $LAN_INTERFACE -s $LAN_BROADCAST -d $LAN_IP -p all -j ACCEPT################################################################################ Règles de connexion à Internet# Seul les connexions initialisés par la machine sont autorisées# C'est le suivit de connexion###############################################################################iptables -t filter -A OUTPUT -o $WAN_INTERFACE -s $WAN_IP -d $WAN_NETWORK -p all -m state --state ! INVALID -j ACCEPTiptables -t filter -A INPUT  -i $WAN_INTERFACE -s $WAN_NETWORK -d $WAN_IP -p all -m state --state RELATED,ESTABLISHED -j ACCEPT################################################################################ Règles pour le port forwarding###############################################################################iptables -t filter -A FORWARD -i $WAN_INTERFACE -o $LAN_INTERFACE -s $WAN_NETWORK -d $LAN_NETWORK -p tcp -m multiport --dport $PORT_TCP -m state --state !INVALID -j ACCEPTiptables -t filter -A FORWARD -i $LAN_INTERFACE -o $WAN_INTERFACE -s $LAN_NETWORK -d $WAN_NETWORK -p tcp -m multiport --sport $PORT_TCP -m state --state ESTABLISHED,RELATED -j ACCEPTiptables -t filter -A FORWARD -i $WAN_INTERFACE -o $LAN_INTERFACE -s $WAN_NETWORK -d $LAN_NETWORK -p udp --dport $PORT_UDP -m state --state ! INVALID -j ACCEPTiptables -t filter -A FORWARD -i $LAN_INTERFACE -o $WAN_INTERFACE -s $LAN_NETWORK -d $WAN_NETWORK -p udp --sport $PORT_UDP -m state --state ESTABLISHED,RELATED -j ACCEPTiptables -t nat -A PREROUTING -i $WAN_INTERFACE -s $WAN_NETWORK -d $WAN_IP -p tcp -m multiport --dport $PORT_TCP -j DNAT --to-destination $PF_IPiptables -t nat -A POSTROUTING -o $LAN_INTERFACE -s $WAN_NETWORK -d $PF_IP -p tcp -m multiport --dport $PORT_TCP -j SNAT --to-source $LAN_IPiptables -t nat -A PREROUTING -i $WAN_INTERFACE -s $WAN_NETWORK -d $WAN_IP -p udp --dport $PORT_UDP -j DNAT --to-destination $PF_IPiptables -t nat -A POSTROUTING -o $LAN_INTERFACE -s $WAN_NETWORK -d $PF_IP -p udp --dport $PORT_UDP -j SNAT --to-source $LAN_IP################################################################################ Règles pour l'IP masquerading###############################################################################iptables -t filter -A FORWARD -i $LAN_INTERFACE -o $WAN_INTERFACE -s $LAN_NETWORK -d $WAN_NETWORK -p all -m state --state ! INVALID -j ACCEPTiptables -t filter -A FORWARD -i $WAN_INTERFACE -o $LAN_INTERFACE -s $WAN_NETWORK -d $LAN_NETWORK -p all -m state --state ESTABLISHED,RELATED -j ACCEPTiptables -t nat -A POSTROUTING -o $WAN_INTERFACE -s $LAN_NETWORK -d $WAN_NETWORK -p all -j MASQUERADE