Newsgroup: it.comp.os.linux.iniziare
Titolo: Problema con il routing

Ciao a tutti.
Ho un problema con il mio pc che fa anche da router per la mia mini rete 
domestica su cui ho slack 10.1.
Lo script che parte all'avvio è il seguente:
#! /bin/bash
echo "1" > /proc/sys/net/ipv4/ip_forward
modprobe ip_tables
modprobe ip_conntrack
modprobe iptabe_nat
modprobe ipt_MASQUERADE
iptables -t nat -A POSTROUTING -d ! 
172.16.0.0/24
 -j MASQUERADE
iptables -A FORWARD -s 
172.16.0.0/24
 -j ACCEPT
iptables -A FORWARD -d 
172.16.0.0/24
 -j ACCEPT
iptables -A FORWARD -j DROP
ha sempre funzionato datempo immemorabile (dalla slack 9.1 e forse anche 
con qualche fedora o red hat ma non ricordo) e ora non funziona più.
Come al solito è avviato grazie ad una riga in /etc/rc.d/rc.local.
Ho provato infatti a lanciare:
# /etc/rc.d/rc.local restart
e mi ha dato un errore del tipo:
Can't locate module iptabe_nat
ma perché adesso?
Piccola nota. Da sabato scorso ho cambiato il modem di Alice con un 
router che ho comprato io della D-link, ma non ho avuto nessun problema 
nel fare il cambio.
Avevo uno scriptino che avviava la connessione ADSL all' avvio che ho 
cambiato in:
route add -net default gw 192.168.1.1
e la connessione funziona senza problemi.
Curiosamente oltre al fatto che non fa più da gateway (che mi scoccia 
non poco visto che in famiglia nessuno vuole usare Linux) non riesco a 
connettermi dalle macchine win con winscp a questo pc via ssh ... 
secondo voi cosa c'è che non va?
Io non ho cambiato nulla, come dicevo ho solo modificato lo script 
dell'adsl ma non c'entra niente, secondo me, con il routing, anche 
perché poi il router è direttamente collegato SOLO al pc on Linux non 
all' hub.
Ciao
-- 
oierpa
Don't follow me, I'm lost too!

 ma perché adesso?
]zac[
La domanda andrebbe negata (ribaltata).
P.S. sul mio sistema, ma credo che valga anche per molti altri, non è
necessario caricare i moduli con modprobe, ma può occuparsene direttamente
iptabe ehmm iptables ( :P ).

 
[cut]
Evidentemente c'è un mio errore di ortografia, che non è presente nello 
script, infatti ricontrollando è tutto giusto, ma non funziona lo stesso.
Se mi permetti un appunto, anche se so che dopo che lo leggerai non 
posterai più, fra tutti i modi che c'erano in natura per far notare 
l'errore credo tu abbia scelto il più sbagliato. Se lo script funzionava 
era abbastanza intuibile infatti che l'errore era mio nel riportarlo nel 
messaggio, non ci avevi pensato?


 Can't locate module iptabe_nat
il modulo si chiama iptable_nat e non iptabe_nat. Forse hai
accidentalmente modificato lo script.
Questo e' quanto ti serve per "chiudere" e proteggere il tuo server e
per condividere la connessione:
# programma di firewall
IPTABLES=/usr/sbin/iptables
# regole generali di firewall
$IPTABLES -P INPUT DROP
$IPTABLES -A INPUT -i lo -j ACCEPT
$IPTABLES -A INPUT -i $et -j ACCEPT
$IPTABLES -A INPUT ! -i lo -d 
127.0.0.0/8
 -j DROP
$IPTABLES -N Flood-Scan
$IPTABLES -A INPUT -p tcp -m tcp --syn -j Flood-Scan
$IPTABLES -A Flood-Scan -m limit --limit 1/s --limit-burst 20 -j RETURN
$IPTABLES -A Flood-Scan -j DROP
$IPTABLES -A INPUT -p tcp -m tcp ! --syn -m conntrack --ctstate NEW -j DROP
$IPTABLES -A INPUT -p tcp -m tcp --tcp-flags SYN,FIN SYN,FIN -j DROP
$IPTABLES -A INPUT -m conntrack --ctstate ESTABLISHED -j ACCEPT
$IPTABLES -A INPUT -m conntrack --ctstate RELATED -j ACCEPT
# lancia la condivisione connessione internet
# Load the NAT module (this pulls in all the others).
modprobe iptable_nat
# applica il MASQUERADE alla connessione
$IPTABLE -t nat -A POSTROUTING -o eth0 -j MASQUERADE
# Abilita il forwarding
echo 1 > /proc/sys/net/ipv4/ip_forward
# se vuoi aprire una porta in modo che sia accessibile dall'esterno
# (cioe' da Internet) fai cosi (esempio la porta 80, server web)
# ATTENZIONE: l'apertura delle porte ti espone agli attacchi
# quindi stai attento a cio' che fai.
$IPTABLES -A INPUT -p tcp -m tcp --dport 80 -j ACCEPT
# se vuoi ruotarla ad una macchina della tua rete interna, in modo
# che sia quest'ultima a rispondere alle richieste provenienti da
# internet (cioe' hai messo il server web su una macchina della tua
# rete locale, es. la 192.168.1.3) fai cosi':
$IPTABLES -t nat -A PREROUTING -p tcp -m tcp --dport 80 -j DNAT --to
$
192.168.1.3:80

 messaggio, non ci avevi pensato?
]zac[
Si, ma ho ritenuto estremamente improbabile che non venga usato il copia e 
incolla, ho ritenuto una prova valida che l'unico punto errato fosse errato
nella stessa identica maniera nel messaggio di errore, ho dato per scontato
che avessi riletto il messaggio prima di spedirlo è che fosse quasi
impossibile non accorgersi che in una lista di ipitables corretti (e in
colonna) ce ne era uno solo eratto).
Per il resto, libero di avere la reazione che vuoi a quella che per me era
solo umorismo/ironia/una battuta.

[cut]
Sei stato precisissimo, ora mi studio tutto e provo.
Grazie 1000!
P.S.: Per Giuseppe che ha risposto per primo al messaggio. A volte basta 
poco come ad esempio "forse hai modificato lo script involontariamente" 
invece che far notare un errore, riderci sopra senza poi dare 
indicazioni utili di nessun tipo, si produce lavoro anche mulinando le 
braccia al vento ... ma non serve a niente!


Giuseppe Della Bianca ha scritto:

la battuta ci sta sempre ma se non è fine a se stessa.
L'importante è arrivare ad un risultato. Se la battuta accompagna 
qualcosa di utile è ben accetta, in tal caso ha solo fatto notare un 
errore di scrittura fine a se stesso. Ripeto che lo script ha sempre 
funzionato, quindi se il mio pc lo digeriva senza problemi le 
alternative erano due: il pc ha imparato i miei errori di digitazione 
oppure lo script era giusto.
Posto che il mio pc non ha ancora imparato a leggere fra le righe mi 
aspettavo che lo facessero gli esseri umani. Spesso non rileggo con 
sufficinete attenzione i messaggi e questa è una mia pecca, ma credo che 
  soffermarsi solo su tali errori non sia produttivo, lo è se vengono 
giustamente fatti notare e poi si cerca una causa diversa del problema, 
tutto qui. Lo dico perché altre volte ho visto messaggi del genere e non 
li trovo corretti. Se infatti è certo che un problema sia originato da 
errori di digitazione ci si può sbizzarrire, ma se è appurato che così 
non è ... cerchiamo di far evolvere ciò che facciamo, badiamo un po' più 
alla sostanza, l'epoca degli amanuensi è finita da tempo, per fortuna.
