Voici le contenu du script qui regle notre firewall sur la gateway:
#!/bin/bash
#Nettoyage
iptables -F
iptables -t nat -F
#Bloc tout
iptables -P INPUT DROP
iptables -P OUTPUT DROP
iptables -P FORWARD DROP
#Accepte les réponses aux connections établies
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
#Accepte requete http en sortie
iptables -A OUTPUT -p tcp --destination-port 80 -j ACCEPT
#Accepte requete DNS en sortie
iptables -A OUTPUT -p udp --destination-port 53 -j ACCEPT
#Accepte que l on fasse un ping vers une autre machine
iptables -A OUTPUT -p icmp -j ACCEPT
#Accepte requete FTP en sortie
iptables -A OUTPUT -p udp --destination-port 21 -j ACCEPT
#Accepte requete SSH en sortie
iptables -A OUTPUT -p tcp --destination-port 22 -j ACCEPT
#Accepte les réponses aux connections établies
iptables -A OUTPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
#Transmet ce qui viens de l'exterieur lorsque la connection est deja etablie
iptables -A FORWARD -i eth0 -m state --state ESTABLISHED -j ACCEPT
#Transmet ce qui vient des machines local en http
iptables -A FORWARD -i eth1 -p tcp --destination-port 80 -j ACCEPT
iptables -A FORWARD -i eth2 -p tcp --destination-port 80 -j ACCEPT
#Transmet ce qui vient des machines local en dns
iptables -A FORWARD -i eth1 -p udp --destination-port 53 -j ACCEPT
iptables -A FORWARD -i eth2 -p udp --destination-port 53 -j ACCEPT
#Transmet ce qui vient des machines local en https
iptables -A FORWARD -i eth1 -p tcp --destination-port 443 -j ACCEPT
iptables -A FORWARD -i eth2 -p tcp --destination-port 443 -j ACCEPT
#Transmet ce qui vient des machines local en ftp
iptables -A FORWARD -i eth1 -p tcp --destination-port 21 -j ACCEPT
iptables -A FORWARD -i eth2 -p tcp --destination-port 21 -j ACCEPT
#Transmet les requete icmp qui viennent des machines local
iptables -A FORWARD -i eth1 -p icmp -j ACCEPT
iptables -A FORWARD -i eth2 -p icmp -j ACCEPT
#Permet communication sécurisée https (hotmail) de cette machine
iptables -A OUTPUT -p tcp --destination-port 443 -j ACCEPT
#Pour avoir acces au server 172.16.0.42 sur dmz
iptables -A POSTROUTING -t nat -d 172.16.0.42 -j SNAT --to 172.16.0.206
#Rediriger vers server apache les requete http
iptables -A PREROUTING -t nat -d 172.16.0.206 -p tcp --destination-port 80 -j DNAT --to 172.16.16.2
#!/bin/bash
#Nettoyage
iptables -F
iptables -t nat -F
#Bloc tout
iptables -P INPUT DROP
iptables -P OUTPUT DROP
iptables -P FORWARD DROP
#Accepte les réponses aux connections établies
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
#Accepte requete http en sortie
iptables -A OUTPUT -p tcp --destination-port 80 -j ACCEPT
#Accepte requete DNS en sortie
iptables -A OUTPUT -p udp --destination-port 53 -j ACCEPT
#Accepte que l on fasse un ping vers une autre machine
iptables -A OUTPUT -p icmp -j ACCEPT
#Accepte requete FTP en sortie
iptables -A OUTPUT -p udp --destination-port 21 -j ACCEPT
#Accepte requete SSH en sortie
iptables -A OUTPUT -p tcp --destination-port 22 -j ACCEPT
#Accepte les réponses aux connections établies
iptables -A OUTPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
#Transmet ce qui viens de l'exterieur lorsque la connection est deja etablie
iptables -A FORWARD -i eth0 -m state --state ESTABLISHED -j ACCEPT
#Transmet ce qui vient des machines local en http
iptables -A FORWARD -i eth1 -p tcp --destination-port 80 -j ACCEPT
iptables -A FORWARD -i eth2 -p tcp --destination-port 80 -j ACCEPT
#Transmet ce qui vient des machines local en dns
iptables -A FORWARD -i eth1 -p udp --destination-port 53 -j ACCEPT
iptables -A FORWARD -i eth2 -p udp --destination-port 53 -j ACCEPT
#Transmet ce qui vient des machines local en https
iptables -A FORWARD -i eth1 -p tcp --destination-port 443 -j ACCEPT
iptables -A FORWARD -i eth2 -p tcp --destination-port 443 -j ACCEPT
#Transmet ce qui vient des machines local en ftp
iptables -A FORWARD -i eth1 -p tcp --destination-port 21 -j ACCEPT
iptables -A FORWARD -i eth2 -p tcp --destination-port 21 -j ACCEPT
#Transmet les requete icmp qui viennent des machines local
iptables -A FORWARD -i eth1 -p icmp -j ACCEPT
iptables -A FORWARD -i eth2 -p icmp -j ACCEPT
#Permet communication sécurisée https (hotmail) de cette machine
iptables -A OUTPUT -p tcp --destination-port 443 -j ACCEPT
#Pour avoir acces au server 172.16.0.42 sur dmz
iptables -A POSTROUTING -t nat -d 172.16.0.42 -j SNAT --to 172.16.0.206
#Rediriger vers server apache les requete http
iptables -A PREROUTING -t nat -d 172.16.0.206 -p tcp --destination-port 80 -j DNAT --to 172.16.16.2