Come condividere la connessione Internet con Linux

di Luca Bove (PuntoWeb.Net Srl)

Avete una connessione ADSL o una flat? Beh se siete contenti del servizio che il vostro provider vi fornisce e avete intenzione di condividerlo con il network casalingo in modo che tutti i computer possano accedere ad Internet? Se Linux e' installato su uno dei vostri computer l' operazione non si presenta difficile. Nell'articolo che segue mi appresto a descrivere come condividere una connessione Internet con tutta la tua rete.

--- Requisiti ---
Per configurare un server Linux allo scopo di condividere la vostra connessione Internet, avete bisogno di due schede di rete installate. Una scheda di rete sara' connessa alla rete e l'altra sara' attaccata alla connessione (ad esempio al modem xDSL). Le istruzioni di cui sotto sono state testate su di una distribzione Linux Mandrake 7.2, ma dovrebbe lavorare su tutte le ultime distribuzioni.

--- Installazione ---
Iniziamo a configurare il nostro server Linux. Prima di tutto abbiamo bisogno di avere i nostro indirizzi IP assegnati alle schede di rete sul server. Si assumera' che l'attacco alla LAN sia eth0 e quello al modem Internet sia eth1. Eseguite il comando "netconf" e su eth0 specificate il seguente indirizzo: 192.168.0.1 (il resto dei campi si dovrebbero riempire automaticamente).
Successivamente specificate eth1 per ottenere il suo indirizzo IP dal server DHCP o specificate l'informazione sull'indirizzo che vi è stato dato nel caso di indirizzo statico. A questo punto agggiungiamo la seguente riga in cima nel file '/etc/rc.d/rc.local':

/etc/rc.d/rc.firewall

Il passo seguente è configurare un file 'rc.firewall'. Di seguito c'é un file 'rc.firewall' base utilizzato nella prova. Potete semplicemente fare un cut e paste e copiarlo come rc.firewall sotto la directory /etc/rc.d .

/sbin/depmod -a
/sbin/modprobe ip_masq_ftp
/sbin/modprobe ip_masq_raudio
/sbin/modprobe ip_masq_irc
/sbin/modprobe ip_masq_quake 26000,27000,27910
echo "1" > /proc/sys/net/ipv4/ip_forward
echo "1" > /proc/sys/net/ipv4/ip_dynaddr
ipchains -M -S 7200 10 60
ipchains -A input -j ACCEPT -i eth1 -s 0/0 68 -d 0/0 67 -p udp ipchains -P forward DENY


#PER ABILITARE TUTTE LE MACCHINE AD INTERNET
ipchains -A forward -s 192.168.0.0/24 -j MASQ

#PER ABILITARE SOLO UNA MACCHINA SPECIFICA AD INTERNET #ipchains -A forward -s 192.168.0.10/32 -j MASQ

Una volta salvato sotto la directory /etc/rc.d, semplicemente digitate il seguente comando:

# chmod 700 /etc/rc.d/rc.firewall

A questo punto c'é da abilitare l'IP forwarding. Per fare cio' bisogna editare il file '/etc/sysconfig/network' in modo che la riga FORWARD_IPV4 sia uguale a true.

Va poi effettuato il reboot. Una volta ripartiti digitate il seguente comando:

# ipchains -L

dovrebbe visualizzare le vostre regole per il forwarding. A questo punto abbiamo configurato il server in modo da condividere la connessione ad Internet.

--- I computer Client ---

Per configurare i computer client, sotto Windows, dovete andare in "Risorse di Rete" o, se avete la versione inglese di WIndows, "Network Neighborhood" e caricare i servizi standard di rete e i servizi relativi ai protocolli TCP/IP (vi si accede col tasto destro del mouse).

Alla voce "TCP/IP" bisogna andare su Proprietà e specificare un indirizzo IP del tipo 192.168.0.x (dove x è un numero unico per quella macchina) e netmask 255.255.255.0.
Poi come "Gateway" occorre specificare che punta al server Linux (ricordo che era settato a 192.168.0.1). Bisogna andare in "Configurazione DNS", attivare il DNS e specificare l'hostname e il domain name del server Linux. Nella voce "Ordine di ricerca server DNS" va specificato il DNS del server dell'ISP.
Non resta che effettuare il reboot della macchina e anche il vostro computer client avrà l'accesso ad Internet.

Riferimenti:
http://www.osfaq.com/article.php3?sid=59

Per commentare e discutere l'articolo clicca qui

AUTORE DEL TESTO
Luca Bove (PuntoWeb.Net Srl)

Pubblicato il: 21/11/2001