#! /bin/sh int=bond0 ext=eth2 # Activation du forwarding echo 1 > /proc/sys/net/ipv4/ip_forward /sbin/iptables -t filter -A INPUT -j LOG --log-prefix "[FW] " /sbin/iptables -F /sbin/iptables -X /sbin/iptables -Z /sbin/iptables -t nat -F /sbin/iptables -t nat -X /sbin/iptables -t nat -Z /sbin/iptables -F INPUT /sbin/iptables -F OUTPUT /sbin/iptables -F FORWARD /sbin/iptables -P INPUT DROP /sbin/iptables -P OUTPUT ACCEPT /sbin/iptables -P FORWARD DROP /sbin/iptables -A INPUT -i lo -j ACCEPT /sbin/iptables -A OUTPUT -o lo -j ACCEPT /sbin/iptables -A INPUT -i $int -j ACCEPT /sbin/iptables -A OUTPUT -o $int -j ACCEPT /sbin/iptables -A INPUT -i $ext -m state --state ESTABLISHED,RELATED -j ACCEPT /sbin/iptables -A FORWARD -i $int -j ACCEPT /sbin/iptables -A FORWARD -o $int -j ACCEPT /sbin/iptables -t nat -A POSTROUTING -o $ext -j MASQUERADE /sbin/iptables -t nat -A PREROUTING -i $ext -p tcp -d 80.80.80.90 --dport 80 -j DNAT --to-destination 192.168.0.1:80 /sbin/iptables -t nat -A PREROUTING -i $int -p tcp -d 80.80.80.80 --dport 80 -j DNAT --to-destination 192.168.0.200:80 /sbin/iptables -t nat -A PREROUTING -i $int -p tcp -d 80.80.80.80 --dport 25 -j DNAT --to-destination 192.168.0.100:25 /sbin/iptables -t nat -A PREROUTING -i $int -p tcp -d 80.80.80.80 --dport 110 -j DNAT --to-destination 192.168.0.100:110 /sbin/iptables -t nat -A PREROUTING -i $ext -p tcp -d 80.80.80.80 --dport 80 -j DNAT --to-destination 192.168.0.200:80 /sbin/iptables -t nat -A PREROUTING -i $ext -p tcp -d 80.80.80.80 --dport 25 -j DNAT --to-destination 192.168.0.100:25 /sbin/iptables -t nat -A PREROUTING -i $ext -p tcp -d 80.80.80.80 --dport 110 -j DNAT --to-destination 192.168.0.100:110 /sbin/iptables -t nat -A PREROUTING -i $int -p tcp -d 80.80.80.90 --dport 80 -j DNAT --to-destination 192.168.0.1:80 /sbin/iptables -t nat -A POSTROUTING -o $int -p tcp --dport 80 -s 192.168.0.0/24 -j MASQUERADE /sbin/iptables -t nat -A PREROUTING -i $int -p tcp --dport 80 -j REDIRECT --to-port 3128 /sbin/iptables -t nat -A PREROUTING -i $ext -p tcp -d 80.80.80.90 --dport 80 -j REDIRECT --to-port 3128 /sbin/iptables -A INPUT -p tcp -i $ext --dport 21 -j ACCEPT /sbin/iptables -A INPUT -p udp -i $ext --dport 21 -j ACCEPT #Port SSH2 /sbin/iptables -A INPUT -m state --state NEW -p tcp --dport 22 -j ACCEPT #Bind9 autorisé la connection /sbin/iptables -A INPUT -m state --state NEW -p tcp --dport 53 -j ACCEPT /sbin/iptables -A OUTPUT -o $ext -p udp --sport 1024: --dport 53 -m state --state ! INVALID -j ACCEPT /sbin/iptables -A INPUT -i $ext -p udp --sport 1024 --dport 53 -m state --state RELATED,ESTABLISHED -j ACCEPT /sbin/iptables -A INPUT -p tcp --dport 53 -j ACCEPT /sbin/iptables -A INPUT -p udp --dport 53 -j ACCEPT /sbin/iptables -A INPUT -p tcp --dport 53 -j ACCEPT /sbin/iptables -A INPUT -p udp --dport 53 -j ACCEPT #/sbin/iptables -A FORWARD -m state --state NEW -i $int -p tcp -s 192.168.0.0/24 --sport 1024: -d 195.238.3.118 --dport 110 --syn -j ACCEPT /sbin/iptables -A FORWARD -m state --state NEW -i $int -p tcp -s 192.168.0.0/24 --sport 1024: -d 195.238.3.131/24 --dport 25 --syn -j ACCEPT #/sbin/iptables -t nat -A POSTROUTING -o $ext -p tcp -s 192.168.0.0/24 --sport 1024: -d 195.238.3.118 --dport 110 -j MASQUERADE /sbin/iptables -t nat -A POSTROUTING -o $ext -p tcp -s 192.168.0.0/24 --sport 1024: -d 195.238.3.131 --dport 25 -j MASQUERADE /sbin/iptables -A FORWARD -m state --state NEW -i eth0 -p udp -s 192.168.0.0/24 --sport 1024: -d 194.88.127.7 --dport 53 -j ACCEPT /sbin/iptables -A FORWARD -m state --state NEW -i eth0 -p udp -s 192.168.0.0/24 --sport 1024: -d 62.112.0.7 --dport 53 -j ACCEPT /sbin/iptables -t nat -A POSTROUTING -p udp -s 192.168.0.0/24 --sport 1024: -d 194.88.127.7 --dport 53 -j MASQUERADE /sbin/iptables -t nat -A POSTROUTING -p udp -s 192.168.0.0/24 --sport 1024: -d 62.112.0.7 --dport 53 -j MASQUERADE /sbin/iptables -A INPUT -p tcp --tcp-flags ALL NONE -j DROP /sbin/iptables -A INPUT -p tcp --tcp-flags SYN,FIN SYN,FIN -j DROP /sbin/iptables -A INPUT -p tcp --tcp-flags SYN,RST SYN,RST -j DROP /sbin/iptables -A INPUT -p tcp --tcp-flags FIN,RST FIN,RST -j DROP /sbin/iptables -A INPUT -p tcp --tcp-flags ACK,FIN FIN -j DROP /sbin/iptables -A INPUT -p tcp --tcp-flags ACK,PSH PSH -j DROP /sbin/iptables -A INPUT -p tcp --tcp-flags ACK,URG URG -j DROP /sbin/iptables -A INPUT -i eth2 -f -p icmp -j DROP /sbin/iptables -A INPUT -i eth2 -p icmp --icmp-type 4 -j ACCEPT /sbin/iptables -A OUTPUT -o eth2 -p icmp --icmp-type 4 -j ACCEPT /sbin/iptables -A INPUT -i eth2 -p icmp --icmp-type 12 -j ACCEPT /sbin/iptables -A OUTPUT -o eth2 -p icmp --icmp-type 12 -j ACCEPT /sbin/iptables -A INPUT -i eth2 -p icmp --icmp-type 3 -j ACCEPT /sbin/iptables -A OUTPUT -o eth2 -p icmp --icmp-type fragmentation-needed -j ACCEPT /sbin/iptables -t filter -A INPUT -i $ext -p icmp -j LOG /sbin/iptables -t filter -A INPUT -i $ext -p icmp -j DROP /sbin/iptables -A INPUT -p icmp -j DROP