|
|
Riga 1: |
Riga 1: |
| ===Introduzione===
| | {{stub}} |
| Che tipo di modem ADSL bisogna comprare per avere piena compatibilità con GNU/Linux?
| |
| 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 è:
| | Uno dei primi passi da affrontare subito l' installazione della nostra Debian dovrebbe essere quello di accertarsi di quali servizi e demoni vengono lanciati dal sistema. Questa operazione permette un controllo migliore della sicurezza della nostra macchina ed una minore esposizione a rischi legati a intrusioni. |
| qualunque informazione troviate in giro, leggete la data in cui è stata riportata!
| |
|
| |
|
| Detto questo, vediamo cosa offre il mercato.
| | In questa breve guida vedremo come controllare i servizi attivi, come eliminare quelli non necessari e come rendere pi� sicuri quelli che intendiamo utilizzare. |
| 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.
| |
|
| |
|
| ===Modem ethernet===
| | Buona lettura & happy debian! |
| I modem ethernet sono in pratica dei mini computer che gestiscono autonomamente la connessione alla linea ADSL. Hanno una porta di rete a cui connetere il PC, e una presa telefonica per la linea ADSL.
| |
|
| |
|
| ===Modem-router=== | | =Concetti di base= |
| 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.
| | ==Servizi & Demoni== |
| 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.
| | In un sistema operativo si definisce "servizio" (o anche "demone") un processo in background che gira autonomamente, senza intervento da parte dell' utente, o comunque con una interazione ridotta al minimo. Un esempio di servizo è il server web Apache: il server viene controllato dal demone "httpd" che gira in background, resta in ascolto sulla porta indicata e serve le pagine richieste. |
| 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?=== | | =Strumenti= |
| Ora mettiamoci dal punto di vista di un PC che vogliamo connetere ad internet, e che quindi chiameremo interno.
| | GNU/Linux fornisce una nutrita schiera di programmi che ci permettono di intergire con i servizi attivi sulla nostra macchina. Di seguito riporto quelli pi� usati nell' amministrazione di un sistema Debian. |
|
| |
|
| 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.
| | ==netstat== |
| | Netstat � uno dei programmi pi� utilizzati ed utili: permette di elencare tutta una serie di informazioni utili (sockets aperti, routing tables, processi, ecc...). Per il nostro scopo utilizzeremo netstat per ottenere un elenco di tutte le connessioni di rete aperte sulla nostra macchina. Ottenere queste informazioni � il primo passo per conoscere nel dettaglio cosa succede all' interno del nostro sistema operativo. |
|
| |
|
| 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).
| | Ora cerchiamo tutte le connessioni di rete in ascolto (stato LISTEN) sul nostro sistema. |
| 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.
| | <pre># netstat -l |grep tcp |
| | tcp 0 0 *:netbios-ssn *:* LISTEN |
| | tcp 0 0 *:5900 *:* LISTEN |
| | tcp 0 0 *:www *:* LISTEN |
| | tcp 0 0 *:sieve *:* LISTEN |
| | tcp 0 0 *:ssh *:* LISTEN |
| | tcp 0 0 localhost.localdom:8118 *:* LISTEN |
| | tcp 0 0 *:ipp *:* LISTEN |
| | tcp 0 0 localhost.localdom:smtp *:* LISTEN |
| | tcp 0 0 *:microsoft-ds *:* LISTEN</pre> |
| | Ho scelto di limitare l' output alle sole connessioni in attesa di connessione. Potete anche provare ad utilizzare i comandi '''netstat -a''', '''netstat -l''', '''netstat -l |grep tcp''', ecc... |
|
| |
|
| Questo approccio ha il vantaggio di essere indipendente dal S.O., in quanto il grosso del lavoro viene fatto automaticamente dal modem in questione.
| | Le colonne da prendere in esame sono (in questo esempio) la terza e la quarta. La terza colonna riporta l' accoppiata indirizzo+porta su cui � un ascolto il servizio. |
| 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.
| | Se osserviamo la prima linea dell' output, la terza colonna indica come coppia indirizzo+porta il testo '''*:netbios-ssn''': questo significa che � attivo un servizio in ascolto per qualsiasi (*) indirizzo di rete configurato sulla macchina e che questo servizio � associato alla porta '''netbios-ssn'''. |
|
| |
|
| 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).
| | Nelle altre righe possiamo notare che, nella colonna degli indirizzi, oltre al "*" (che indica ''qualsiasi indirizzo'') compare anche ''localhost.localdomain''. Netstat tenta di risolvere gli indirizzi ip e reperisce questo hostname dal file '''/etc/hosts''', per cui localhost.localdomain corrisponde (nel mio esempio) all' indirizzo dell' interfaccia di loopback (127.0.0.1), come possiamo verificare con un semplice |
| | <pre>$ cat /etc/hosts |grep localhost.localdomain |
| | 127.0.0.1 localhost.localdomain localhost debby</pre> |
|
| |
|
| 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. | | ==lsof== |
| | ==dpkg== |
| | =Un esempio concreto= |
| | =Cenni ad altri strumenti= |
| | ==Livello rete== |
| | ==Livello applicazione== |
|
| |
|
|
| |
|
| I modem USB, diversamente dagli altri presentati prima, non sono dei computer, ma delle periferiche.
| | ---- |
| | | [[Utente:Keltik|Keltik]] 05:26, Giu 23, 2005 (EDT) |
| 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è il 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.
| |
| | |
| E' 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 interfacia di rete del nostro PC, e pertanto risulterà all'interno del firewall.
| |
| | |
| Detto tutto cio, a voi la scelta!
| |