Debian e i Modem ADSL

Introduzione

Che tipo di modem ADSL bisogna comprare per avere piena compatibilità con GNU/Linux? E quanto è facile installare ognuno di questi modem su Debian? Questa è l'eterna domanda che tutti gli utenti GNU/Linux in procinto di acquistare uno di questi modem si sono fatti (o hanno fatto ad altri) almeno una volta.

Per rispondere a questa domanda bisogna innanzitutto considerare il fatto che in questo campo le cose cambiano molto rapidamente, quindi un ottimo consiglio sicuramente è:

qualunque informazione troviate in giro, leggete la data in cui è stata riportata!

Detto questo, vediamo cosa offre il mercato.

Al momento della stesura di questo documento ci sono sostanzialmente tre tipi di prodotti che possono connettere il vostro PC alla linea ADSL e quindi ad internet: i modem ethernet, i modem-router e i modem USB.

Tipi di Modem

Modem ethernet

I modem ethernet sono in pratica dei mini computer che gestiscono autonomamente la connessione alla linea ADSL. Hanno una porta di rete a cui connettere il PC, e una presa telefonica per la linea ADSL.

Modem-router

I modem-router sono molto simili ai modem ethernet: anch'essi sono dei mini computer che gestiscono autonomamente la connessione alla linea ADSL, ma sono più sofisticati. Possono avere diverse porte, ethernet, USB e anche wifi, e permettono quindi di condividere un'unica connessione tra più PC, ma anche l'interconnessione tra i vari PC di una rete interna. Di solito implementano anche un firewall (in commercio se ne trovano anche alcuni che contengono un kernel Linux).

ModemUSB

I modem USB sono molto diversi. Essi nascono dal principio secondo cui, per fabbricare un dispositivo, è molto più economico implementare delle funzioni via software che inserire dei pezzi di hardware in più. Per riprendere una frase letta in rete, questi modem "hanno dentro meno elettronica del mio posacenere", ma non date giudizi affrettati perché, come vedremo, questo fatto non è necessariamente negativo.

Quale delle tre?

Ora mettiamoci dal punto di vista di un PC che vogliamo connettere ad internet, e che quindi chiameremo interno.

Qualunque Sistema Operativo stiamo usando, scartiamo a priori i modem-router con connessioni USB in quanto aggiungono la necessità di installare un driver senza trarre da ciò il benché minimo beneficio.

Poiché i modem-router ethernet (e wifi) e i modem ethernet sono dei mini computer, qualunque PC con qualunque Sistema Operativo li riconosce come tali e li identifica tramite l'interfaccia di rete interna (cioè quella a cui è connesso il nostro PC). Per connettersi ad internet sarà allora sufficiente inserire come gateway l'indirizzo ip di questa interfaccia di rete, e poi lanciare il programma che si occupa di stabilire la connessione con il provider, su GNU/Linux di solito pppd.

Questo approccio ha il vantaggio di essere indipendente dal S.O., in quanto il grosso del lavoro viene fatto automaticamente dal modem in questione. Dal punto di vista della sicurezza, però questi modem presentano qualche problema intrinseco.

Consideriamo un modem ethernet: dal momento che questi modem non implementano firewall di sorta, potremmo pensare di proteggerci da internet attivando un firewall sul nostro PC. In questo modo, però, il firewall risulta essere tra il nostro PC e il modem, che, come ricorderemo, è un computer connesso a internet e presenta due interfacce: una interna che vediamo solo noi, ed una esterna che noi non vediamo ma che risulta visibile da tutto il resto del mondo.

Quell'interfaccia è identificata dal numero IP che il nostro provider ci ha fornito per la connessione ad internet cioè il numero che al momento rappresenta la nostra identità in internet. Questo dà la possibilità, a un eventuale malintenzionato, di "rubare" la nostra identità e compiere azioni arbitrarie spacciandosi per noi (per esempio pagare qualcosa tramite addebito in bolletta telefonica, o anche attaccare altri computer in internet).

Un modem-router da questo punto di vista è più sicuro, visto che il firewall che implementa protegge anche il numero IP. Sfortunatamente un firewall implementato in questo modo di solito è poco flessibile (oppure molto costoso!) e rende la vita decisamente difficile a chi per esempio vuole usare programmi di file sharing, o a chi vorrebbe utilizzare features avanzate come DNAT o SNAT.

I modem USB, diversamente dagli altri presentati prima, non sono dei computer, ma delle periferiche.

Questo significa da un lato che sarà indispensabile, per farli funzionare, avere un driver apposito (leggi: un modulo per il kernel), un programma in grado di gestire il modem tramite il driver, e, quasi sempre, anche un firmware; cioè un programma che fa funzionare il modem e che deve essere reso disponibile per il modem stesso al momento del boot, visto che questo non dispone di una memoria statica interna.

È evidente che tutto questo si traduce in una procedura di installazione decisamente più laboriosa, peraltro possibile solo per quei modem per cui esistono dei driver per Linux. D'altro canto, però, nel caso il nostro modem sia supportato, potremo godere appieno di tutta la flessibilità e sicurezza di iptables, il firewall implementato all'interno del kernel Linux. Infatti, dal momento che un modem USB risulta essere una periferica, una volta installato esso diverrà a tutti gli effetti una interfaccia di rete del nostro PC, e pertanto risulterà all'interno del firewall.

Detto tutto ciò, a voi la scelta!

Installazione di Debian

Una delle modalità più diffuse di installazione di Debian è il net-install (vedere la guida Note sull'installazione di Debian per ulteriori dettagli). In questo tipo di installazione è preferibile che il modem sia supportato dal net-install senza bisogno di scaricare pacchetti aggiuntivi. In caso contrario la procedura di installazione diventa più laboriosa perché è necessario disporre di un secondo sistema connesso ad internet per scaricare i pacchetti aggiuntivi necessari, oppure per condividere la connessione tramite una normale scheda di rete (per un esempio pratico vedere: Installare i driver eagle-adsl).

Nel caso di modem-router ethernet o di modem ethernet, come visto, la connessione non richiede driver particolari dato che il modem è una interfaccia di rete standard.

Nel caso dei modem usb, invece, bisogna stare attenti al particolare tipo di modem usato. Se infatti i driver per il modem non sono inclusi nel net-install bisognerà scaricare i pacchetti aggiuntivi tramite una seconda connessione (e se è richiesta la compilazione di un modulo scaricare tutti i pacchetti necessari è abbastanza scomodo, a meno di non disporre di una connessione ethernet provvisoria). Ultimamente sono stati inclusi nel kernel Linux i driver per alcuni di questi modem, quindi la loro procedura di installazione non necessita di ricompilazione del kernel. Tra i driver già inclusi nel kernel Linux c'è quello per l'Alcatel Speedtouch (dal 2.6.8) e quello per i modem che usano il chipset Conexant e che sono supportati dal progetto Accessrunner (dal 2.6.13). Per vedere se il modem posseduto è supportato e per conoscere la procedura di installazione vedere Installare i driver conexant accessrunner.

Inoltre, qualora fosse necessario reperire il firmware del modem, si potrebbe usare quello presente nel cd dei driver del modem per Windows.

Trovate informazioni riguardo il net-install tramite connessione ppp(oe) nelle Faq del Debian Installer (vedere in particolare: Question 26: How do I use netinst over ppp(oe)?).