PDA

View Full Version : Firewall + Router + 2 schede di rete.


teoB
29-10-2004, 10:58
Salve ragazzi, ho la seguente rete con il server linux che voglio faccia da firewall con due schede di rete, una collegata al router e una collegata all'hub e quindi alla rete interna:

+--------+
|Internet|
+----+---+
|
|
IP |pubblico
+----+------+
|Router ADSL+-------------+
+-----------+10.0.0.254 |
IPprivato |
|
|
|10.0.0.1| eth1
+---+----+
|Gateway |
|e server |
| Linux |
+---+----+-------
|192.168.1.254 |eth0 Ip Rete Privata
+-------+----------
|
|Hub/Switch
|
+------------+----------+------------- +------------
| |
|192.168.1.101| |192.168.1.102|
+---+----+ +---+----+-----
| client | | client |
+--------+ +--------------+



Ho qualche problema ha settare il firewall.
Nel file /etc/conf.d/net ho settato come gatway 10.0.0.254, ho settato nel file resolv.conf i dns e il server infatti esce in internet. Poi ho settato nel firewall la seguente regola:


iptables -A POSTROUTING -t nat -s 192.168.1.0/24 -o eth1 -j MASQUERADE



il problema è che i client vedono il server ma non escono in internet. Avete qualche idea su dove sbaglio?

Grazie in anticipo per l'aiuto.

honny
29-10-2004, 11:07
ho una configurazione molto simile alla tua e anche io :

iptables -t nat -A POSTROUTING -o ppp0 -j MASQUERADE
(ho modem adsl)

solo che poi sul server/firewall ho dovuto aggiungere questo, se no mi bloccava tutto :

echo 1 > /proc/sys/net/ipv4/ip_forward

bort_83
29-10-2004, 11:11
echo 1 > /proc/sys/net/ipv4/ip_forward

è la base per far si che le due interfacce possano comunicare...

cmq in rete trovi molti script per configurare la macchina per fare un firewall ben protetto...

teoB
29-10-2004, 12:54
Ho fatto tutte le prove , però purtroppo ancora non funziona.

Psycotic
29-10-2004, 14:01
hai guardato con route -n se e' tutto apposto?

casomai con traceroute vedi dove inceppano i pacchetti
se inceppano nel tuo server c'e' qualcosa che nn va' con iptables

_YTS_
29-10-2004, 16:53
controlla di non avere un DROP nella catena forward.

teoB
29-10-2004, 19:04
controlla di non avere un DROP nella catena forward.


nessu drop è settato tutto su accept , quello che mi chiedevo è la semplice regola

iptables -A POSTROUTING -t nat -s 192.168.1.0/24 -o eth1 -j MASQUERADE

basta dato che eth1 non è il gatway vero e propio ma l'intefaccia di rete a cui è attacata il router, non ci deve essere qualche altra regola da settare?

#!/bin/sh
29-10-2004, 21:54
Originariamente inviato da teoB
nessu drop è settato tutto su accept , quello che mi chiedevo è la semplice regola

iptables -A POSTROUTING -t nat -s 192.168.1.0/24 -o eth1 -j MASQUERADE

basta dato che eth1 non è il gatway vero e propio ma l'intefaccia di rete a cui è attacata il router, non ci deve essere qualche altra regola da settare?

Quella regola serve solamente a fare in modo che tutto il traffico che esce dalla lan venga visto da fuori con l'ip sorgente uguale a quello di eth0. Se su eth0 hai un ip statico usare masquerade è superfluo, è meglio:

iptables -A POSTROUTING -t nat -s 192.168.1.0/24 -o eth0 -J SNAT --to-source 10.0.0.1

Oltre a questo devi anche impostare l'ip forward (come ti è stato giustamente suggerito) altrimenti i pacchetti non possono fare il salto tra un'interfaccia e l'altra. Per vedere dove si trova il problema prova a fare:
tarceroute www.google.it
e vedi dove si fermano i pacchetti. Lancia il comando da un client.
Un'ultima considerazione: se il router fa nat allora aggiungere un altro nat sulla macchina con linux non è che sia di grande utilità.

teoB
30-10-2004, 14:36
Grazie a tutti ragazzi per le indicazioni date, alla fine ho risolto con la seguente riga di firewall:
iptables -A POSTROUTING -t nat -o eth1 -j MASQUERADE

Saluti a tutti.