Configurazione LAN con modem/router WiMAX+hub e iptables

Postate qui per tutte le discussioni legate alla sicurezza di Linux/Slackware

Moderatore: Staff

Regole del forum
1) Citare sempre la versione di Slackware usata, la versione del Kernel e magari anche la versione della libreria coinvolta. Questi dati aiutano le persone che possono rispondere.
2) Specificare se discussione/suggerimento o richiesta d'aiuto.
3) Leggere attentamente le risposte ricevute.
4) Scrivere i messaggi con il colore di default, evitare altri colori.
5) Scrivere in Italiano o in Inglese, se possibile grammaticalmente corretto, evitate stili di scrittura poco chiari, quindi nessuna abbreviazione tipo telegramma o scrittura stile SMS o CHAT.
6) Appena registrati è consigliato presentarsi nel forum dedicato.

La non osservanza delle regole porta a provvedimenti di vari tipo da parte dello staff, in particolare la non osservanza della regola 5 porta alla cancellazione del post e alla segnalazione dell'utente. In caso di recidività l'utente rischia il ban temporaneo.
Rispondi
banjoman
Linux 0.x
Linux 0.x
Messaggi: 3
Iscritto il: mar 24 apr 2012, 0:00
Nome Cognome: Max Mazza
Slackware: 9.1
Kernel: 2.4.22
Desktop: console

Configurazione LAN con modem/router WiMAX+hub e iptables

Messaggio da banjoman »

Ciao a tutti,
e' la prima volta che scrivo su questo forum, e mi sono deciso a farlo perche' da un paio di giorni mi sto scontrando con un problema che mi sta facendo perdere ore di sonno e lavoro notturno.

Avendo installato da poco un modem WiMAX di ARIA (Huawei) che con mia soddisfazione funziona molto bene, dopo una settimana di utilizzo di prova collegato direttamente a uno dei miei pc casalinghi, ho deciso di inserirlo nella mia LAN domestica e rendere disponibile la connessione intenet a tutti.

Non sono uno sprovveduto di linux e LAN/WAN in genere (uso slackware dal 1992) , e pensavo che la cosa mi avrebbe richiesto solo un paio d'ore di smanettamento su linux.

Ho appunto un pc ove e' installato linux 2.4.22, vecchiotto ma adattissimo per fargli fare da router/firewall, non fidandomi completamente del firewall integrato nel modem/router che, beninteso, ha drasticamente diminuto gli alert di ZoneAlarm (il mio server principale e' su WinXP) da qualche centinaio la settimana a zero.

La mia rete e' sempre stata, da anni, una classica 192.168.0.0. Indirizzi statici e nessun DHCP, tanto per restare sul sicuro.
Il modem/router mi mette a disposizione due porte, e mi e' stato fornito preimpostato all'indirizzo 192.168.2.1.
La cosa ovvia per me e' stato impostare tutta la baracca cosi':

+ MODEM/ROUTER WiMAX Huawei BM2023w (192.168.2.1)
|
|___________
|eth1 (192.168.2.3 - gateway 192.168.2.3, default gateway 192.168.2.1)
| | FIREWALL /GATEWAY con Slackware 9.2 kernel 2.4.22
|eth0 (192.168.0.3 - gateway 192.168.0.3, default gateway 192.168.2.1)
|------------|
|
|
--------------
| | switch 8 porte d-link
| |
|___________|
|
|------- PC1 (WinXP, 192.168.0.1 - default gateway 192.168.2.3 - dns 1 dns 2)
|------- PC2 (WinXP, 192.168.0.2 - default gateway 192.168.2.3 - dns 1 dns 2)
|------- PC3 (WinXP, 192.168.0.4 - default gateway 192.168.2.3 - dns 1 dns 2)
|------- Laser printerPC3 (192.168.0.57)
|------- ecc. ecc..

Le iptables, per restare sul semplice (sapendo che perlomeno un firewall c'e', quello del router) le ho lasciate azzerate, come mostra il comando iptables --list':

Chain INPUT (policy ACCEPT)
target prot opt source destination

Chain FORWARD (policy ACCEPT)
target prot opt source destination

Chain OUTPUT (policy ACCEPT)
target prot opt source destination

Il routing l'ho configurato a mano (e poi salvato in rc.local), e digitando il comando route appare cosi':

Kernel IP routing table
Destination Gateway Genmask Flags MSS Window irtt Iface
192.168.0.3 0.0.0.0 255.255.255.255 UH 0 0 0 eth0
192.168.2.3 0.0.0.0 255.255.255.255 UH 0 0 0 eth1
192.168.2.0 192.168.2.3 255.255.255.0 UG 0 0 0 eth1
192.168.2.0 0.0.0.0 255.255.255.0 U 0 0 0 eth1
192.168.0.0 192.168.0.3 255.255.255.0 UG 0 0 0 eth0
192.168.0.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0
127.0.0.0 0.0.0.0 255.0.0.0 U 0 0 0 lo
0.0.0.0 192.168.2.1 0.0.0.0 UG 0 0 0 eth1

Le interfacce sono cosi' configurate:
eth0 Link encap:Ethernet HWaddr 00:04:76:94:00:6E
inet addr:192.168.0.3 Bcast:192.168.0.255 Mask:255.255.255.0
UP BROADCAST MULTICAST MTU:1500 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:55 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:100
RX bytes:0 (0.0 b) TX bytes:8195 (8.0 Kb)
Interrupt:10 Base address:0x6000

eth1 Link encap:Ethernet HWaddr 00:E0:4C:77:26:06
inet addr:192.168.2.3 Bcast:192.168.2.255 Mask:255.255.255.0
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:248 errors:0 dropped:0 overruns:0 frame:0
TX packets:382 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:100
RX bytes:79598 (77.7 Kb) TX bytes:37268 (36.3 Kb)
Interrupt:11 Base address:0x4000

lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
UP LOOPBACK RUNNING MTU:16436 Metric:1
RX packets:17 errors:0 dropped:0 overruns:0 frame:0
TX packets:17 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:1696 (1.6 Kb) TX bytes:1696 (1.6 Kb)

Il forwarding e' stato ovviamente attivato: cat /proc/sys/net/ipv4/ipforward mi restituisce 1.

Lavorando sul pc linux mi funziona tutto, navigo, pingo sia verso l'esterno che verso la LAN interna.
QUando vado su un pc della LAN interna (la 192.168.0.0) invece succede questo: posso pingare solo fino a 192.168.2.3, che sarebbe la NIC eth1 che fa anche da gateway, ma se provo a pingare 192.168.2.1 mi giunge inesorabile un timeout.

Se rivoluziono la rete, collegando direttamente il modem/router allo switch/hub e configurando TUTTI i pc (linux o win che siano) per operare sulla net 192.168.2.0, gateway 192.168.2.1, dns 192.168.2.1 funziona tutto a meraviglia.

E perche' non la tieni cosi', direte voi. Beh, innanzitutto perche' volevo togliermi il piacere di provare cose nuove con linux. E anche per non stravolgere la mia LAN domestica che era su tutt'altro indirizzo (vi sono anche stampati in rete, scanner e un access point wifi).
Insomma, credevo fosse una cosa banale e mi ritrovo con un sistema che mi fa arrivare solo fino a eth1 (192.168.2.3) e poi puff... il nulla....

Mi e' sorto il sospetto che forse devo configurare in qualche modo iptables. Non le ho mai usate in vita mai. Sbaglio qualcosa?

Sono sicuro che la soluzione e' banale e sono io che sto perdendomi dentro una cavolata, ma mi vedo costretto a chiedervi aiuto perche' sono troppe notti che ci impazzisco.

Max

Avatar utente
krisis
Linux 4.x
Linux 4.x
Messaggi: 1120
Iscritto il: mar 25 gen 2005, 0:00
Distribuzione: debian
Località: Roma

Re: Configurazione LAN con modem/router WiMAX+hub e iptables

Messaggio da krisis »

Se la netmask delle tue subnet è 255.255.255.0 non puoi uscire dalla tua lan perchè il default gateway è in una subnet diversa. I tuoi pc non sanno letteralmente come arivarci.
La comunicazione fra pc della stessa lan funziona perchè se ne occupa ethernet di inoltrare i frame.

La comunicazione funziona così : pc1 vuole collegarsi a slacky.eu , frammenta ed incapsula i dati in un segmento con porta sorgente superiorore a 1023 e porta destinazione 80 che viene poi incapsulato in un pacchetto con ip sorgente pc1 e ip destinazione slacky.eu , il pacchetto verrà quindi incapsulato in un frame con mac sorgente pc1 e mac destinazione default gateway.Il mac del default gateway viene ricavato da una richiesta arp in broadcast che non supera i limiti del tuo segmento di lan e quindi dal punto di vista del frame il gateway si trova in un mondo diverso e separato che non può essere raggiunto .

Imposta la rotta di default dei tuoi pc ed apparati su 192.168.0.3 ed imposta il masquerading con iptables e tutto funzionerà.
Se ne vuoi sapere di più devi comprati un libro di basi di reti informatiche perchè spiegare tutto in un post è impossibile. :)

Il dhcp non è un problema di sicurezza e se hai voglia di imparare cose nuove potresti mettere un captive portal dietro il wifi per aumentare il senso di sicurezza.

banjoman
Linux 0.x
Linux 0.x
Messaggi: 3
Iscritto il: mar 24 apr 2012, 0:00
Nome Cognome: Max Mazza
Slackware: 9.1
Kernel: 2.4.22
Desktop: console

Re: Configurazione LAN con modem/router WiMAX+hub e iptables

Messaggio da banjoman »

Uhmm...
si', potresti avere ragione. Pero' io mi ricordo, nei miei vari esperimenti notturni, che avevo impostato, sui pc Win, come default gateway sia 192.168.2.3 sia 192.168.0.3.
In ambedue i casi il risultato era identico: pingando 192.168.2.1 mi dava timeout e 100% packet loss.

Mi sembra di ricordare pero' (l'ultima volta ho fatto le 4 del mattino a furia di sperimentare), che impostando il default gateway su 192.168.0.3 il messaggio di ping cambiava in "host unreachable". Ma molto probabilmente avevo smanettato malamente con route.

Insomma, a farla breve, se io da pc1 pingo 192.168.2.3 e mi risponde correttamente, ne deduco che riesco a passare da una LAN alltra,no? E allora perche' se pingo il maledetto 192.168.2.1 questo invece non mi risponde manco a sparargli?

Tra le altre cose, leggendo qua e la' nei vari forum, specie americani, ho sentito citare spesso l'indirizzo IP 10.0.0.0 che sembra essere peculiare di questi modem/router.

Cosi' per curiosita' ho allora collegato il modem/router senza il pc linux in mezzo, in modo da poterlo nuovamente controllare. Pingandolo come 192.168.2.1 ovviamente mi rispondeva. Poi ho provato a pingare 10.0.2.1 e con mia sorpresa, mi ha risposto!
Premesso che nello scarno manualetto incluso col box Aria/Huawei di tutto cio' non c'e' traccia, ne ho dedotto che, pingandolo come 10.0.2.1 ho letteralmente "scavalcato" il suo gateway/router interno (e quindi forse anche il firewall). O no?
A scanso di guai non ho insistito in altri esperimenti.

Tieni presente che il sw all'interno del box Huawei e' abbastanza sofisticato: gestisce firewall, filtri, DMZ, NAT, port trigger, port forwarding, UPnP, DDNS, PPTP VPN, L2TP VPN, IPsec VPN, DHCP (e relative impostazioni di static address) e altro ancora. Di tutto cio' pero' sul manuale non vi e' traccia, anzi, viene raccomandato di non toccare niente al di fuori delle impostazioni basiche, pena possibili blocchi del box e conseguente richiesta di assistenza tecnica.
In realta' io ci ho gia' smanettato, dato che so a che servono tutte quelle impostazioni (ad esempio ho abilitato il forwarding per le porte utilizzate da eMule per avere id alto). Era solo per informarti della "bestia" che uso per uscire su internet.

Se mi spieghi o mi dai un link su come impostare iptables con il masquerading magari ci riprovo. Non mi hai detto se le iptables cosi' come le ho configurate io (o meglio, azzerate) lasciano effettivamente transitare tutto (come se il firewall non esistesse) oppure se vanno aggiunte comunque regole esplicite. E' questo uno dei miei tanti dubbi su questo pastrocchio che sto cercando di realizzare.

Ulteriori consigli, osservazioni e suggerimenti sono sempre benvenuti.

Max

Avatar utente
krisis
Linux 4.x
Linux 4.x
Messaggi: 1120
Iscritto il: mar 25 gen 2005, 0:00
Distribuzione: debian
Località: Roma

Re: Configurazione LAN con modem/router WiMAX+hub e iptables

Messaggio da krisis »

Se la subnet della tua lan è 192.168.0.0 255.255.255.0 ed il tuo default gateway si trova nella subnet 192.168.1.0 255.255.255.0 i frame non potranno mai arrivargli.

Tu hai parecchia confusione in testa in merito alle reti :) è meglio se passi un po di tempo a studiarti le basi.
Non devi saper fare l'anding a mente ma quanto meno sapere che esiste la pila osi :)

La subnet 10.0.0.0 255.0.0.0 è una subnet di classe A per usi privati non ruotabile ( che brutta parola ) su internet,per i tuoi scopi equivale ad usare la 192.168.0.0 /16 (la subnet da cui tiri fuori le /24 ).
Credo che il tuo provider , alla stregua di fastweb , utilizzi un gigatesco nat per fare uscire i suoi clienti su internet.
Tu non hai scavalcato nulla ma dato che eri collegato direttamente all'apparato hai potuto pingarene l'exit interface . Se sistemi il default gateway come ti ho detto lo potrai fare anche dai pc della lan.

Togli tutte le regole di routing dal server rc.local , riesegui gli script di networking ( o riavvia la macchina ) per pulire la routing table ed aggiungi un unica rotta così

Codice: Seleziona tutto

route add default gw 192.168.2.1
Per le regole di iptables : senza masquerading non esce niente , cerca su google iptables maquerading o iptables nat.

Se invece non vuoi studiare allora abilita il dhcp sull'apparato , togli il server linux e collega direttamente lo switch.

banjoman
Linux 0.x
Linux 0.x
Messaggi: 3
Iscritto il: mar 24 apr 2012, 0:00
Nome Cognome: Max Mazza
Slackware: 9.1
Kernel: 2.4.22
Desktop: console

Re: Configurazione LAN con modem/router WiMAX+hub e iptables

Messaggio da banjoman »

Hai perfettamente ragione, ho molta confusione in testa :lol:
Sono d'accordo con te e mi ripassero' le basi (sono anni che non lavoravo piu sulle reti in linux :evil: ). Nel frattempo provo a configurare come hai detto tu, ripulendo la routing table e inserendo il masquerading.
Se non altro mi hai dato una base da cui partire.


Max

Rispondi