Linux per condividere l’accesso a Internet

Con una sola connessione si può navigare da più postazioni differenti; basta un vecchio PC come gateway per una piccola rete locale

Spesso si sente definire Linux come sistema operativo dedicato ai server per
Internet e in effetti questa è una delle applicazioni in cui maggiormente se ne
apprezzano potenza e affidabilità, soprattutto a confronto con i ben più costosi
sistemi Unix o Windows. Però pochi sanno che anche lo studio professionale, il
piccolo gruppo di lavoro e persino l'utente domestico possono beneficiare di un
server Linux in una piccola rete locale, principalmente come sistema per
scambiare file e gestire in comune stampanti, ma soprattutto per condividere
l'accesso a Internet. Si pensi per esempio ad uno studio tecnico in cui sono
presenti già alcune workstation oppure a un negozio o anche a una normale
abitazione, in cui si dispone di un paio di desktop e magari di un portatile. In
tutti questi casi potrebbe essere utile collegare tra loro i vari computer, sia
per scambiare documenti e per condividere periferiche sia per navigare in
Internet da ogni postazione.


Accesso singolo o via
LAN?

Va sottolineata a questo punto la differenza tra
l'accesso a Internet condiviso e quello multiplo tramite LAN. Nel primo caso si
stipula col proprio provider un normale contratto di accesso a Internet per un
computer singolo, mentre nel secondo caso si richiede l'accesso per un gruppo di
computer, a ciascuno dei quali viene solitamente assegnato un indirizzo IP che
lo identifica su Internet. Visivamente si può immaginare il singolo accesso come
un bocchettone a cui è collegato un solo computer, mentre quello via LAN come
una serie di diramazioni che escono dal canale principale per raggiungere le
varie postazioni. Quest'ultimo modello è tipicamente utilizzato dalle aziende
che dispongono di una rete locale di dimensioni medio grandi ed è decisamente
più costoso dell'accesso singolo, ragione per cui è generalmente improponibile
per i piccoli gruppi di lavoro. Ma grazie allo stratagemma della condivisione
dell'accesso, resa possibile dalla tecnologia dell'IP Masquerading (mascheratura
dell'indirizzo), è possibile fare in modo che più computer accedano
simultaneamente a Internet sfruttando un normale accesso con un singolo
indirizzo IP. Riprendendo l'esempio precedente, è come se un unico bocchettone
di accesso fosse collegato ad un singolo computer, a sua volta collegato ad un
gruppo di computer a cui fa da tramite verso il canale principale. Di fatto
l'accesso viene effettuato da una sola macchina, quella collegata al
bocchettone, anche se poi le informazioni vengono da questa inoltrate verso
altre postazioni “invisibili” alla Rete. In questo modo non si è costretti a
pagare al proprio provider il costo di un contratto per l'accesso via LAN.


Condividere conviene con ADSL

Ma come è facile immaginare la condivisione dell'accesso è realmente
vantaggiosa solo se si dispone di un canale veloce, prevalentemente ADSL,
altrimenti la navigazione attraverso un singolo accesso via modem risulta tanto
più lenta quanto più elevato è il numero di computer che condividono il canale.
In questo modo si crea una cosiddetta VPN (Virtual private network), all'interno
della quale ogni computer dispone di un proprio indirizzo che lo differenzia
dagli altri PC della rete locale ma che non ha alcun legame con gli indirizzi
dei computer di altre reti o di Internet. Quindi questa rete virtuale è di fatto
separata da Internet, con cui è collegata solo indirettamente attraverso il
singolo PC connesso al bocchettone di accesso, chiamato per questo motivo
gateway, che significa appunto “porta” o “entrata”. Va ricordato a questo punto
che la comunicazione da e verso Internet avviene attraverso lo scambio di
pacchetti di dati tra un client e un server. Ogni pacchetto scambiato contiene
oltre all'informazione vera e propria anche l'indirizzo del mittente e quello
del destinatario. Il compito del gateway è dunque quello di mascherare gli
indirizzi dei client della rete virtuale a cui appartiene sostituendoli col
proprio indirizzo, visto che questo è l'unico riconosciuto da Internet. E mentre
fa ciò il gateway deve sempre tenere traccia di tutti i pacchetti e degli
indirizzi dei vari client, in quanto successivamente dovrà smistare
opportunamente le informazioni restituite dai server. Insomma si tratta di una
specie di porta intelligente che non solo mette in comunicazione due ambienti
separati ma che sa anche instradare tutto ciò che vi passa attraverso.


Con Linux gateway fai-da-te...

Qui entra in gioco Linux, come sistema per realizzare un gateway a costo
quasi nullo con tanto di funzioni firewall per prevenire gli attacchi alla rete
locale da eventuali intrusi esterni. E per allestire un gateway basta un vecchio
computer, persino un 486 riesumato dalla cantina, un hub e qualche cavo di rete.
Tutte le funzioni per la gestione degli indirizzi e l'instradamento dei
pacchetti all'interno delle rete locale, oltre naturalmente alle comunicazioni
da e verso Internet, sono integrate in Linux. Per realizzare un vero e proprio
gateway Linux, quindi, dopo avere collegato tutti i PC all'hub per mezzo di cavi
Rj45 non incrociati, basta configurare la rete utilizzando il protocollo TCP/IP
su ciascun client (ovviamente dotato di scheda Ethernet). Si passa quindi a
configurare l'accesso a Internet sulla macchina Linux con i parametri forniti
dal proprio provider, per concludere attivando il firewall e la funzione IP
Masquerading. La procedura è spiegata nelle pagine successive. Il server è così
pronto e non resta che configurare i vari client. L'assegnazione degli indirizzi
IP ai client può essere effettuata manualmente in fase di installazione oppure
in modo automatico dal server ad ogni avvio del sistema tramite la funzione DHCP
(Dynamic host configuration protocol). In ogni caso si tratta di indirizzi
virtuali, cioè relativi unicamente alla propria rete. Solo il server dispone di
un secondo indirizzo IP, questo sì reale perchè abbinato all'accesso a Internet.
Ed è proprio questo indirizzo che va riportato nella configurazione TCP/IP di
tutti i client alla voce gateway. Alle voci DNS, vanno riportati gli indirizzi
dei Domain Name Server del proprio provider.


...mentre Windows XP fa-da-sè

Una soluzione simile è offerta anche da Windows e si chiama
semplicemente condivisione dell'accesso a Internet. Con Windows XP, a dire il
vero, è tutto più facile rispetto a Linux: dopo avere fisicamente installato la
rete, collegando server e client all'hub, e dopo avere configurato l'accesso a
Internet sul server, non resta altro da fare che lanciare dal Pannello di
Controllo una procedura automatica prima sul server e poi su ogni client. Non
c'è niente altro da fare e tutto avviene in pochi minuti senza che si debba
nemmeno sapere che cosa sia un gateway. Il rovescio della medaglia, oltre al
costo di Windows XP (che è comunque superiore a quello di Linux se non lo si
possiede già), è che questo sistema funziona solo in una rete Microsoft. Con
Linux, invece, qualunque client può essere collegato al gateway, sia esso Linux,
Windows, Unix o Macintosh. Inoltre Windows XP richiede un computer piuttosto
potente per funzionare a dovere, potenza che probabilmente risulta sprecata se
viene utilizzata solo per gestire le funzioni di gateway. Infine Windows XP
offre un firewall dalle funzioni di protezione basilari, mentre quello di Linux
ha un'impostazione molto più professionale seppur più complicata. Come sempre si
scontrano due filosofie, quella della semplicità a pagamento di Microsoft e
quella della potenza gratuita ma complessa di Linux.


Tutto quello che serve per costruire una rete
locale
L'hardware necessario per realizzare una rete locale
in cui condividere un singolo accesso a Internet dipende dal metodo che si vuole
utilizzare per attuare la condivisione. Se si decide di usare Linux per dedicare
un PC esclusivamente alla funzione di gateway è più che sufficiente un vecchio
computer, anche un glorioso 486, per svolgere al meglio questo compito. Se
invece si opta per la condivisione dell'accesso di Windows XP, allora è
necessario un computer piuttosto potente, preferibilmente di nuova generazione,
ma in questo caso il PC potrà essere utilizzato anche per altre operazioni e non
solo come gateway. Ma c'è una terza via, quella del gateway hardware, cioè un
vero e proprio dispositivo a se stante e non un software funzionante su un
server.


Le funzioni del router

Tecnicamente questo oggetto si chiama router, cioè “instradatore”, e svolge
da solo tutte le funzioni del gateway e del firewall. Un vantaggio innegabile di
questa soluzione è il fatto di poter godere della condivisione dell'accesso a
Internet senza l'obbligo di tenere sempre acceso e collegato il server
utilizzato come gateway. Il lato negativo è che viene richiesta una spesa
addizionale per l'acquisto del router. In ogni caso sarà necessario che tutti i
computer della LAN dispongano di una scheda di rete Ethernet. Poi servirà un
dispositivo esterno chiamato hub (se non integrato già nel router) a cui
andranno collegati il gateway e tutti i client tramite cavi Rj45 non incrociati.
In questo modo si realizza la connessione fisica tra tutti i componenti della
LAN. Rimane da collegare a Internet la rete locale e ciò si fa connettendo il
gateway, che può quindi essere il server Linux, il server Windows XP oppure il
router, al punto di accesso di cui si dispone. Si suppone in questo caso di
avere a disposizione una connessione ADSL, anche perchè con accessi più lenti
(modem o ISDN) la condivisione risulterebbe piuttosto penalizzata dalla già
scarsa velocità del canale ulteriormente suddivisa tra i vari client. Se come
gateway si è decisio di usare un router, allora bisogna acquistarne uno dotato
di modem ADSL integrato. Spesso, inoltre, in questi modelli sono già presenti le
porte per collegare i client che rendono di fatto inutile l'utilizzo di un hub
esterno. Se invece si è scelta la soluzione del gateway Linux o Windows XP,
allora bisogna distinguere due casi: se si dispone di un modem ADSL con
interfaccia Ethernet oppure di un modello interno o con interfaccia USB. Nel
primo caso sarà necessario che nel server sia presente una seconda scheda di
rete destinata al collegamento del modem, mentre nel secondo caso la scheda
Ethernet addizionale non sarà richiesta. Si completa così l'installazione fisica
della rete locale e rimane da impostare la configurazione logica dei vari
componenti.


La procedura di configurazione

Nel caso di server e client tutti funzionanti con Windows XP
penserà a tutto il sistema operativo con una procedura guidata, mentre nel caso
di gateway Linux bisognerà configurare in modo opportuno tutti i paramentri di
server e client (i dettagli nella parte pratica delle pagine seguenti). Anche
nel caso in cui si utilizzi un router bisognerà seguire una procedura di
configurazione manuale, solitamente eseguita via telnet oppure tramite browser
Web. In tutti i casi precedenti, quindi con Linux, con Windows XP o con un
router, la configurazione dei vari client può avvenire tramite DHCP (Dynamic
host configuration protocol), un servizio residente su un apposito server della
LAN che assegna automaticamente ai client tutti gli indirizzi necessari per il
corretto funzionamento della rete.


Il pinguino fa da gateway: accedere a Internet da Linux
La funzione
di gateway integrata in Linux insieme alla protezione avanzata del suo firewall
rendono questo sistema operativo ideale per trasformare anche un vecchio
computer in un vero e proprio gateway per condividere un singolo accesso a
Internet tra numerosi computer all'interno di una rete locale. Dopo avere
completato l'installazione fisica della rete come illustrato nelle pagine
precedenti, si deve procedere alla configurazione logica della LAN installando
su ogni client il protocollo TCP/IP e assegnando opportunamente gli indirizzi IP
a ogni computer (la stessa procedura vale per la configurazione dei client anche
nel caso si utilizzi come gateway un router). Va notato a questo punto che gli
indirizzi dei vari computer che formano la rete locale sono virtuali, cioè sono
riconosciuti unicamente all'interno della LAN e non al suo esterno. Un indirizzo
IP virtuale, quindi, non ha valore come indirizzo fisico su Internet ma solo
entro i confini della rete locale. Solitamente si utilizzano gli indirizzi che
vanno da 192.168.0.1 fino a 192.168.0.255. Il primo indirizzo viene normalmente
attribuito al gateway, sia esso il server Linux o un router, mentre i successivi
vengono assegnati ai vari client, magari lasciando liberi i primi dieci per
eventuali esigenze future (per esempio altri server o stampanti di rete). In
questo modo all'interno della rete privata virtuale si trova il gateway con
indirizzo 192.168.0.1 e i client con indirizzi a partire da 192.168.0.11. Il
gateway, inoltre, dispone di un secondo indirizzo Ip: questo però è di tipo
reale, in quanto è relativo alla connessione a Internet ed è assegnato dal
provider che fornisce l'accesso. Sarà questo l'indirizzo che comparirà
all'esterno della Lan tutte le volte che un client effettuerà una richiesta
verso un server Internet, in quanto il gateway si occupa proprio di mascherare
l'indirizzo del client della rete locale attraverso la tecnica dell'IP
Masquerading. Nella configurazione TCP/IP del gateway, quindi, saranno presenti
due indirizzi IP, uno relativo alla rete locale (192.168.0.1) e uno fornito dal
proprio provider relativo alla posizione del gateway stesso su Internet (per
esempio 213.215.111.111). Infine, sia nella configurazione del gateway sia in
quelle dei vari client, vanno specificati gli indirizzi dei server DNS primario
e secondario, anche questi forniti dal proprio Intenet provider, che
identificano i server dei nomi di dominio necessari per navigare sul Web. Mentre
il gateway va sempre configurato a mano dall'amministratore della rete, tutte
queste impostazioni possono essere evitate dal lato client se nella rete locale
si attiva un server DHCP (Dynamic host configuration protocol). In questo caso è
sufficiente impostare nel server tutte le informazioni relative alla rete locale
(il proprio indirizzo e l'intervallo di indirizzi disponibili) e configurare i
client in modo che ottengano automaticamente tutte le informazioni dal servizio
DHCP, che può risiedere sullo stesso server Linux che funge da gateway oppure su
un altro computer. La funzione vera e propria di gateway, (la già citata) Ip
Masquerading, si attiva in Linux semplicemente avviando il firewall, non prima
di averne opportunamente configurato i parametri di funzionamento. Ciò avviene
in modo diverso in base al software che si utilizza: uno dei firewall più
diffusi è gShield, disponibile per il download all'indirizzo http://muse.linuxmafia.org.


La configurazione del lato server e client


1
Prima di avviare il firewall bisogna modificare il relativo file
di configurazione. Per farlo si può utilizzare l'utility gShieldConf per il
setup da interfaccia grafica. Per attivare la condivisione dell'accesso bisogna
selezionare la voce IP Masquerading quindi lanciare lo script
/etc/firewall/gShield.rc per iniziare a condividere la connessione a Internet
con i client.





2
Per utilizzare da un qualunque client l'accesso a Internet condiviso
tramite un gateway Linux bisogna configurare opportunamente le proprietà TCP/IP
del client stesso. Nell'esempio la connessione alla LAN di un client Windows XP
attraverso il Pannello di Controllo.




3
In questo caso il client è Windows XP e offre i driver per l'accesso alle reti
Microsoft. Ma se nella rete locale si usa solo il protocollo TCP/IP per
condividere la connessione a Internet col gateway Linux allora si possono
ignorare le altre voci e impostare solo i parametri TCP/IP.



4
La configurazione degli indirizzi IP può essere impostata in modo automatico se
nella rete è presente un server DHCP. Altrimenti si devono impostare a mano
l'indirizzo Ip del client, del gateway e dei server DNS primario e secondario.


CONDIVIDI

LASCIA UN COMMENTO

Please enter your comment!
Please enter your name here