[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Firewall howto corto e facile cercasi



On Wednesday 03 July 2002, at 16:40, MaX wrote:
[cut:iptables configuration]
> ... chi ha suggerimenti? link, o memorie?

links:
Documentazione ufficiale (howto in italiano & co.)
http://netfilter.samba.org (vado a memoria, potrei sbagliarmi)
Io sono partito da un documento ibm trovato su:
http://www-106.ibm.com/developerworks/linux/

Se ti puo` servire ti allego lo script che uso io per la connessione

Ciao, Andrea

-- 
(\___/) | Andrea Carosi, just another Linux user
(='.'=) | GnuPG ElG/DSA 2048/1024 key avaiable (ID: 0x1D1CE569)
(")_(") | Fingerprint: DB849F4C79E33F0FAFF9DC0B01B17CDA1D1CE569
#!/bin/sh

# Firewall script by Andrea Carosi, revision 1.14

for x in lo eth0 ippp0; do
        echo 1 >| /proc/sys/net/ipv4/conf/${x}/rp_filter
        done

if [ -f /proc/sys/net/ipv4/tcp_ecn ]; then
        echo 0 >| /proc/sys/net/ipv4/tcp_ecn
	fi

if [ -f /proc/sys/net/ipv4/icmp_echo_ignore_broadcasts ]; then
        echo 0 >| /proc/sys/net/ipv4/icmp_echo_ignore_broadcasts
	fi

if [ -f /proc/sys/net/ipv4/icmp_echo_ignore_all ]; then
        echo 1 >| /proc/sys/net/ipv4/icmp_echo_ignore_all
	fi

if [ -f /proc/sys/net/ipv4/tcp_syncookies ]; then
        echo 1 >| /proc/sys/net/ipv4/tcp_syncookies
	fi

if [ -f /proc/sys/net/ipv4/conf/all/accept_source_route ]; then
        echo 0 >| /proc/sys/net/ipv4/conf/all/accept_source_route
	fi

# Inizio regole del firewall
$IPTABLES -F
$IPTABLES -X
$IPTABLES -Z
$IPTABLES -t nat -F
$IPTABLES -P INPUT DROP
$IPTABLES -P FORWARD ACCEPT

# Ammessi tutti i pacchetti che non provengono da ippp0
$IPTABLES -A INPUT -i ! ippp0 -j ACCEPT

# Scarta a priori pacchetti malformati
# iptables -t nat -A PREROUTING -i ppp0 -m unclean -j DROP

# Masquerading
echo 1 >| /proc/sys/net/ipv4/ip_forward
$IPTABLES -t nat -A POSTROUTING -s 192.168.1.0/24 -o ippp0 -j MASQUERADE

# Permesse le connessioni esterne via ssh
# iptables -A INPUT -p tcp -i ippp0 --dport 22 -j ACCEPT

# Bloccato ident, con REJECT in quanto alcuni servizi vengono rallentati
# (ftp) se si usa DROP
$IPTABLES -A INPUT -p tcp -i ippp0 --dport 113 -j REJECT

# Ammessi tutti i pacchetti che hanno relazioni con connessioni gia`
# esistenti, visto che tutti i pacchetti NEW vengono bloccati in
# ingresso, solo quelle connessioni che iniziamo noi vengono permesse
# all'interno della rete
$IPTABLES -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT

# log di tutti i pacchetti rimasti
$IPTABLES -A INPUT -i ippp0 -m state --state NEW,INVALID -m limit --limit 5/minute -j LOG --log-prefix "firewall (stateful) -> "

# Opzione drop, netfilter non risponde a nessuna connessione che non 
# sia permessa, diventando "invisibile" (non proprio, ma la maggior
# parte degli scanner ci casca)
$IPTABLES -A INPUT -p tcp -i eth0 -j DROP

Attachment: pgph_jul6tVnC.pgp
Description: PGP signature


Reply to: