1
0
Fork 0
scripts-admin-quickndirty-p.../script_routage-wifi-public.sh

37 lines
1.3 KiB
Bash
Executable file

#!/bin/sh
### Routage ###
# activation du routage IP entre les interfaces
echo "1" > /proc/sys/net/ipv4/ip_forward
# Par défaut, on ne route rien
iptables -P FORWARD DROP
# On route tout ce qui n'est pas à destination du LAN+DMZ
iptables -t nat -A POSTROUTING -o eth0 -s 192.168.0.0/24 -j MASQUERADE
iptables -A FORWARD -i eth0 -o eth1 ! -s 192.168.0.0/16 -j ACCEPT
iptables -A FORWARD -i eth1 -o eth0 ! -d 192.168.0.0/16 -j ACCEPT
# On route aussi l'accès à l'interface web de la box wifi
iptables -t nat -A PREROUTING -i eth0 -s 192.168.2.0/24 -p tcp --dport 80 -j DNAT --to-destination 192.168.0.50
iptables -t nat -A POSTROUTING -o eth1 -d 192.168.0.50/24 -p tcp --dport 80 -j MASQUERADE
iptables -A FORWARD -i eth0 -o eth1 -s 192.168.2.0/24 -p tcp --dport 80 -m state --state NEW,ESTABLISHED -j ACCEPT
iptables -A FORWARD -i eth1 -o eth0 -d 192.168.2.0/24 -p tcp --sport 80 -m state --state ESTABLISHED -j ACCEPT
### Filtrage ###
# On filtre aussi les accès au routeur lui-même
iptables -P INPUT DROP
iptables -A INPUT -i lo -j ACCEPT
iptables -A INPUT -i eth0 -j ACCEPT
# Le côté public ne peut accéder qu'au serveur DNS
iptables -A INPUT -i eth1 -p udp --dport 53 -j ACCEPT
iptables -A INPUT -i eth1 -p tcp --dport 53 -j ACCEPT
# et au protocole ICMP
iptables -A INPUT -i eth1 -p icmp -j ACCEPT