Ok, lo ammatto: oggi proprio sto c@2zeggiando... qualche buon anima può controllarmi questo script?
#!/bin/sh
###################################
# 1.5 configurazione iptables #
###################################
modprobe ip_tables
modprobe iptable_nat
modprobe ipt_MASQUERADE
modprobe ipt_REDIRECT
modprobe ipt_REJECT
modprobe ipt_state
###################################
# 4.1 imposta le policy #
###################################
# 4.1.0 resetta le policy eventualmente presenti
iptables -F
iptables -X
# 4.1.1 imposta le policy sulle categorie di catene
iptables -P INPUT DROP
iptables -P FORWARD DROP
iptables -P OUTPUT DROP
# 4.1.2 creazione catene personalizzate
iptables -N WanToLan #da eth0 a eth1 (Wan --> Lan)
iptables -N LanToWan #da eth1 a eth0 (Lan --> Wan)
# 4.1.3 catene garantite
# regole di FORWARD applicate alle catene personalizzate
iptables -A FORWARD -i eth1 -o eth0 -j LanToWan
iptables -A FORWARD -i eth0 -o eth1 -j WanToLan
# eth0: garantiamo il traffico dalla Wan alla Lan bloccando tutto
# il traffico con destinazione <> dalla SubnetMask della LAN
iptables -A WanToLan -d ! 192.168.0.0/24 -j DROP
iptables -A WanToLan -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A WanToLan -p tcp -j REJECT --reject-with tcp-reset
# eth1: garantiamo il traffico dalla Lan alla Wan bloccando
# tutto il traffico che non proviene dalla stessa SubnetMask
# e garantiamo solo quello considerato sicuro
iptables -A LanToWan -s ! 192.168.0.0/24 -j DROP
iptables -A LanToWan -p tcp --dport 21 -j ACCEPT
iptables -A LanToWan -p tcp --dport 25 -j ACCEPT
iptables -A LanToWan -p tcp --dport 80 -j ACCEPT
iptables -A LanToWan -p tcp --dport 110 -j ACCEPT
iptables -A LanToWan -p tcp --dport 143 -j ACCEPT
iptables -A LanToWan -p tcp --dport 443 -j ACCEPT
iptables -A LanToWan -p tcp --dport 993 -j ACCEPT
iptables -A LanToWan -p tcp --dport 995 -j ACCEPT
iptables -A LanToWan -m state --state ESTABLISHED,RELATED,NEW -j ACCEPT
iptables -A LanToWan -p tcp -j REJECT --reject-with tcp-reset
# traffico dati che passa per il firewall: garantiamo il traffico sulla loopback
iptables -A INPUT -i lo -j ACCEPT
# garantiamo il traffico 'tcp' e 'udp' sulle porte
# in entrata e quello generato da noi
iptables -A INPUT -p tcp --dport 21 -j ACCEPT
iptables -A INPUT -p tcp --dport 25 -j ACCEPT
iptables -A INPUT -p tcp --dport 80 -j ACCEPT
iptables -A INPUT -p tcp --dport 110 -j ACCEPT
iptables -A INPUT -p tcp --dport 143 -j ACCEPT
iptables -A INPUT -p tcp --dport 443 -j ACCEPT
iptables -A INPUT -p tcp --dport 993 -j ACCEPT
iptables -A INPUT -p tcp --dport 995 -j ACCEPT
iptables -A INPUT -p tcp --dport 8245 -j ACCEPT
iptables -A INPUT -p tcp --dport 10000 -j ACCEPT
iptables -A INPUT -p udp --dport 110 -j ACCEPT
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A INPUT -p tcp -j REJECT --reject-with tcp-reset
# garantiamo il traffico in uscita generato da noi
iptables -A OUTPUT -m state --state ESTABLISHED,RELATED,NEW -j ACCEPT
###################################
# 4.2 abilitazione tabella nat #
###################################
iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -o eth0 -j MASQUERADE
iptables -t nat -A POSTROUTING -s 127.0.0.1 -o eth0 -j MASQUERADE
# abilita la tabella di routing
ip route add default via 10.0.0.1
# Abilitazione del forwarding
echo 1 > /proc/sys/net/ipv4/ip_forward
Ottimizzazione dello script: La parte scritta in rosso la si può eliminare?
Note: nella parte scritta in verde ho inserito l'ip della eth0; va scritto l'ip del router???