Newsgroup: it.comp.os.linux.iniziare
Titolo: firewall

Mi sto scervellando per capire quali regole devo mettere al mio firewall.
Ho una piccola rete (192.168.0.x) con un server con due schede
192.168.0.1, per il locale, e una che da su internet, diciamo 111.111.111.111
questo server fa tutto:
pop,smtp,http,dns,dhcp, e fa da proxy per le altre macchine che devono accedere
a internet, e, per finire, fa firewall.
i servizi accessibili dall'esterno sono http, più gli ovvii smtp e dns 
il proxy ascolta su 8080 e si esce su internet solo attraverso questo (squid)
ho così impostato le regole:
per l'output: accetta tutto
per il forward: nega tutto (tanto si passa via proxy)
per l'input:
accetta connessioni provenienti da 127.0.0.1 (-s 127.0.0.1 -j ACCEPT)
accetta connessioni provenienti da 192.168.0.x
accetta connessioni provenienti da 111.111.111.111
accetta connessioni su http, smtp, domain (-p tcp -dport http -j ACCEPT)
se ora però aggiungo la regola che nega tutto il resto non si va su internet
se ci aggiung anche un 
nega connessioni per le porte da 0 a 10000, allora si va tranquillamente.
in fondo questa regola mi serve perchè per una volta che non l'ho messa da
fuori mi si sono agganciati al proxy e mi hanno fatto fare un giga di traffico
al giorno (immagina quando arriva la bolletta, al mio principale, che gli dice
che tra sabato e domenica abbiamo fatto due giga di traffico) tra l'altro è
tutto spam e, i furbi, per non farsi accorgere subito, lo fanno dalle 18 alle
09, e dalle 13 alle 14... immaginate perchè, considerate pure che si paga a
qunatità di traffico... traete le conclusioni.
Dicevo...
a quest'ultima poi, ho messo: accetta tutto il resto, però con un bel log
così ho visto cosa è che non devo bloccare per poter navigare.
Il messages mostra qualcosa tipo:
kernel: packet log input ACCEPT eth1 PROTO=
216.32.114.120:80
 
111.111.111.111:36942
 L=228 .......
in cui 36942 è variabile.
Che regole devo fissare per fare una protezione buona senza negare 
l'indispensabile ai colleghi?
Matteo


I'm not prejudiced, I hate everyone equally.


Bene (anche se conosco il flag syn solo per sentito dire e non so quando devo
metterlo e quando no)
Questo è il mio firewall:
1) ipchains -A input -s 202.181.231.118    -j DENY
2) ipchains -A input -s 127.0.0.1          -j ACCEPT
3) ipchains -A input -s 
192.168.0.0/24
     -j ACCEPT
4) ipchains -A input -s 111.111.111.111    -j ACCEPT
5) ipchains -A input  -i eth1 -p tcp ! --syn --sport 80 -d 111.111.111.111 \
		--dport 1024:65535 -j ACCEPT
7) ipchains -A input -i eth1 -p tcp ! --syn --sport ftp -d 111.111.111.111 \
		--dport 1024:65535 -j ACCEPT
8) ipchains -A input  -i eth1 -p tcp ! --syn --sport 443 -d 111.111.111.111 \
		--dport 1024:65535 -j ACCEPT
9) ipchains -A input  -p tcp --dport http -j ACCEPT
10) ipchains -A input  -p tcp --dport domain        -j ACCEPT
11) ipchains -A input  -p tcp --dport smtp          -j ACCEPT
Come ultima regola dovrei mettere
ipchains -A input    -j  DENY
A questo punto però il dns non mi risolve i nomi
se aggiungo -l (log)
nel log vedo i DENY. e non sono riuscito a creare una regola che me li accetti
Matteo

 Matteo
ciao ... 
P.S.
leggiti il FIREWALL-HOWTO per maggiori informazioni, altrimenti
non ne verrai mai a capo ... se non sai bene quello che stai facendo,
rischi di brutto ...


 al giorno (immagina quando arriva la bolletta, al mio principale, che gli dic
Occhio: il firewall e' un di piu', il primo passo e' configurare
correttamente i servizi, in modo che ci accedano solo gli utenti
autorizzati. Fossi in te non lascerei la macchina connessa ad internet
prima di aver verificato che i servizi siano ben configurati. 
Ciao
  Andrea
-- 
Sognatore e' un uomo coi piedi saldamente ancorati sulle nuvole

 	--dport 1024:65535 -j ACCEPT
devi aggiungere anche ...
ipchains -A input -p udp --sport 53 -d 111.111.111.111 \
 	--dport 1024:65535 -j ACCEPT
-- 


 11) ipchains -A input  -p tcp --dport smtp          -j ACCEPT
Mi sembrano la copia di quelle prima (dopo le mie correzioni) ma meno
specifiche...
