par splyit » 14 Mai 2002 14:37
Bon ben vla mon script. je pense que ca peut te filer un coup de main.
<BR>
<BR>echo ' ----------------------------------------------------'
<BR>echo ' Firewall'
<BR>echo ' ----------------------------------------------------'
<BR>
<BR>#activation du forwarding entre interface
<BR>echo 1 > /proc/sys/net/ipv4/ip_forward
<BR>
<BR># protection contre les requetes ICMP foireuses
<BR>echo 'IP PROTECTION'
<BR>echo 1 > /proc/sys/net/ipv4/icmp_echo_ignore_broadcasts
<BR>echo 1 > /proc/sys/net/ipv4/icmp_ignore_bogus_error_responses
<BR>for f in /proc/sys/net/ipv4/conf/*/rp_filter; do
<BR> echo 1 > $f
<BR>done
<BR>
<BR># Insertion des modules FTP
<BR>echo 'INSERTING MODULES'
<BR>insmod ip_nat_ftp
<BR>insmod ip_conntrack_ftp
<BR>
<BR># Cleaning des regles existantes
<BR>echo 'FLUSHING'
<BR>iptables -F
<BR>iptables -X
<BR>
<BR># definition des politiques IP
<BR>echo 'POLICY'
<BR>iptables -P INPUT DROP
<BR>iptables -P OUTPUT ACCEPT
<BR>iptables -P FORWARD ACCEPT
<BR>
<BR># Translation d'adresse vers le reseau interne
<BR>echo 'MASQUERADE'
<BR>iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
<BR>
<BR># regles de base : DROP
<BR>echo 'RULES'
<BR>iptables -N firewall
<BR>iptables -A firewall -j DROP
<BR>iptables -N dropwall
<BR>iptables -A dropwall -j DROP
<BR>iptables -N badflags
<BR>iptables -A badflags -j DROP
<BR>iptables -N silent
<BR>iptables -A silent -j DROP
<BR>
<BR>#protection contre les flags TCP foireux
<BR>echo 'TCP FLAGS'
<BR>iptables -A INPUT -i lo -j ACCEPT
<BR>iptables -A INPUT -p tcp --tcp-flags ALL FIN,URG,PSH -j badflags
<BR>iptables -A INPUT -p tcp --tcp-flags ALL ALL -j badflags
<BR>iptables -A INPUT -p tcp --tcp-flags ALL SYN,RST,ACK,FIN,URG -j badflags
<BR>iptables -A INPUT -p tcp --tcp-flags ALL NONE -j badflags
<BR>iptables -A INPUT -p tcp --tcp-flags SYN,RST SYN,RST -j badflags
<BR>iptables -A INPUT -p tcp --tcp-flags SYN,FIN SYN,FIN -j badflags
<BR>
<BR># Refirection de Ports vers les daemon locaux
<BR>echo 'PORT AUTH'
<BR>iptables -A INPUT -i eth0 -d 0/0 -p tcp --dport 21 -j ACCEPT
<BR>iptables -A INPUT -i eth0 -d 0/0 -p tcp --dport 22 -j ACCEPT
<BR>iptables -A INPUT -i eth0 -d 0/0 -p tcp --dport 25 -j ACCEPT
<BR>iptables -A INPUT -i eth0 -d 0/0 -p tcp --dport 80 -j ACCEPT
<BR>iptables -A INPUT -i eth0 -d 0/0 -p tcp --dport 110 -j ACCEPT
<BR>iptables -A INPUT -i eth0 -d 0/0 -p tcp --dport 143 -j ACCEPT
<BR>iptables -A INPUT -i eth1 -d 0/0 -p tcp --dport 21 -j ACCEPT
<BR>iptables -A INPUT -i eth1 -d 0/0 -p tcp --dport 22 -j ACCEPT
<BR>iptables -A INPUT -i eth1 -d 0/0 -p tcp --dport 25 -j ACCEPT
<BR>iptables -A INPUT -i eth1 -d 0/0 -p tcp --dport 80 -j ACCEPT
<BR>iptables -A INPUT -i eth1 -d 0/0 -p tcp --dport 110 -j ACCEPT
<BR>iptables -A INPUT -i eth1 -d 0/0 -p tcp --dport 143 -j ACCEPT
<BR>
<BR># bloacage du port 137 (broadcast windows) et autre
<BR>echo 'OTHERS'
<BR>iptables -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
<BR>iptables -A INPUT -p udp --sport 137 --dport 137 -j silent
<BR>iptables -A INPUT -j dropwall
<BR>
<BR>echo '--------'
<BR>echo 'ALL DONE'
<BR>echo '--------'
<BR>
<BR>
<BR>Voila !
<BR>@+
Nico