Italiano English
Modifica History Actions

Differenze per "wndw/Capitolo8"

Differenze tra le versioni 8 e 20 (in 12 versioni)
Versione 8 del 2006-12-21 16:25:00
Dimensione: 32698
Autore: blaxwan
Commento:
Versione 20 del 2008-03-18 17:27:51
Dimensione: 35357
Autore: localhost
Commento: converted to 1.6 markup
Le cancellazioni sono segnalate in questo modo. Le aggiunte sono segnalate in questo modo.
Linea 6: Linea 6:
[[TableOfContents]] <<TableOfContents>>
Linea 23: Linea 23:
Though this might seem to suggest that you should hand-pick who is to be involved, that is not often the best approach. It is often best to find a local partner organization or a local manager, and work with them to find the right technical team. Values, history, local politics, and many other factors will be important to them, while remaining completely unfathomable to people who are not from that community. The best approach is to coach your local partner, to provide them sound criteria, make sure that they understand that criteria, and to set firm boundaries. Such boundaries should include rules about nepotism and patronage, though these rules must consider the local situation. It may be impossible to say that you cannot hire kin, but it is best to provide a means of checks and balances. Where a candidate is kin, there should be clear criteria and a second authority in deciding upon their candidacy. It is also important that the local partner is given this authority and is not undermined by the project organizers, thus compromising their ability to manage. They will be best able to judge who will work best with them. If they are well educated in this process, then your requirements should be satisfied. Anche se questo ci può far pensare che dovremmo scegliere personalmente chi coinvolgere, non è necessariamente questo l'approccio migliore. Spesso è meglio cercare un'organizzazione locale che possa fare da partner o un manager locale, e lavorare con loro per trovare il giusto team tecnico. Valori, storia, politiche locali e molti altri fattori saranno importanti per loro, anche se rimarranno completamente incomprensibili per le persone che non fanno parte di quella comunità. L'approccio migliore è di guidare i partner locali, fornirgli i criteri, assicurarsi che li abbiano compresi ed impostare chiari limiti e confini. Questi limiti dovrebbero comprendere regole riguardo patrocinio, nepotismo e favoritismo, anche se queste regole devono aver considerazione della situazione locale. Potrebbe risultare impossibile stabilire che non è possibile assumere parenti, potrebbe esser meglio fornire un sistema di controlli ed equilibri. Se a candidarsi è un parente, dovrebbero esserci criteri chiari ed una seconda autorità che decida riguardo la candidatura. Allo stesso tempo è importante che il partner locale non veda messa in discussione la sua capacità dagli organizzatori del progetto, compromettendo così la propria capacità di amministrazione. Saranno i più indicati a giudicare chi può lavorare meglio con loro stessi. Se vengono formati bene per questo processo, allora tutti i nostri requisiti dovrebbero esser soddisfatti.
Linea 25: Linea 25:
Troubleshooting and support of technology is an abstract art. The first time you look at an abstract painting, it may just look to you like a bunch of random paint splatters. After reflecting on the composition for a time, you may come to appreciate the work as a whole, and the "invisible" coherence becomes very real. The neophyte looking at a wireless network may see the antennas and wires and computers, but it can take a while for them to appreciate the point of the "invisible" network. In rural areas, it can often take a huge leap of understanding before locals will appreciate an invisible network that is simply dropped into their village. Therefore, a phased approach is needed to ease people into supporting technology systems. The best method is involvement. Once the participants are chosen and committed to the project, involve them as much as possible. Let them "drive". Give them the cable crimper or keyboard and show them how to do the work. Even if you do not have time to explain every detail and even if it will take longer, they need to be involved physically and see not only what has been done, but how much work was done. La soluzione dei problemi ed il supporto in ambito tecnologico sono un'arte astratta. La prima volta che vediamo un a pittura astratta ci appare come una serie di schizzi di vernice casuali. Dopo aver riflettuto sulla composizione per un pò di tempo, iniziamo ad apprezzare il lavoro nel suo complesso e la sua "invisibile" coerenza ci appare più chiara. Il neofita in una rete wireless può vedere le antenne, i cavi e i computer, ma può richiedergli un pò di tempo per capire che si tratta di una rete "invisibile". Nelle aree rurali, può spesso accadere che le persone debbano fare uno grosso sforzo di comprensione per apprezzare la rete invisibile che gli viene semplicemente piazzata nel villaggio. Per questo è necessario un'approccio graduale per avvicinare più facilmente le persone al supporto dei sistemi tecnologici. Il miglior metodo è il coinvolgimento. Una volta che sono stati scelti i partecipanti e si sono impegnati nel progetto bisogna coinvolgerli il più possibile. Lasciarli "guidare". Dar loro la crimpatrice o la tastiera e mostrargli come fare il lavoro. Anche se non c'è tempo per spiegare ogni dettaglio, anche se richiedesse più tempo, devono essere fisicamente coinvolti, non solo vedere il risultato di quel che è stato fatto ma anche quanto e che lavoro è stato eseguito.
Linea 27: Linea 27:
The scientific method is taught in virtually all western schools. Many people learn about it by the time they reach high-school science class. Simply put, you take a set of variables, then slowly eliminate those variables through binary tests until you are left with one or only a few possibilities. With those possibilities in mind, you complete the experiment. You then test to see if the experiment yields something similar to the expected result. If it did not, you re-calculate your expected result and try again. The typical agrarian villager may have been introduced to the concept, but likely will not have had the opportunity to troubleshoot complex problems. Even if they are familiar with the scientific method, they might not think to apply it to resolving real problems. Il metodo scientifico è insegnato in tutte le scuole occidentali. Molte persone lo imparano sin dal momento in cui arrivano alle lezioni di scienza alle scuole superiori. Prendere una serie di variabili, quindi lentamente eliminare le variabili tramite test binari fino a rimanere con una o poche possibilità. Con queste possibilità in mente, si completa l'esperimento. Dopodichè si testa per vedere se l'esperimento fornisce risultati simili a quanto atteso. In caso negativo si ricalcolano i risultati attesi e si prova ancora. Il contadino tipico potrebbe esser stato introdotto al concetto, ma probabilmente non avrà la possibilità di risolvere problemi complessi. Anche se ha familiarità con il metodo scientifico, potrebbe non pensare di applicarlo ai problemi reali.
Linea 29: Linea 29:
This method is very effective, although time consuming. It can be sped up by making logical assumptions. For example, if a long-running access point suddenly stops working after a storm, you might suspect a power supply related problem and thus skip most of the procedure. People charged with supporting technology should be taught how to troubleshoot using this method, as there will be times when the problem is neither known nor evident. Simple decision trees or flow charts can be made that test these variables, and try to eliminate the variables to isolate the problem. Of course, these charts should not be followed blindly. Questo metodo è molto efficiente, anche se lungo. Può essere velocizzato facendo assunzioni logiche. Ad esempio, se un access point che funziona da tempo a volte smette di funzionare dopo un temporale, si può sospettare di problemi legati all'alimentatore e saltare così la maggior parte della procedura di risoluzione dei problemi. Alle persone incaricate di supportare la tecnologia dovrebbe venir insegnato a risolvere i problemi con questo metodo dato che ci saranno occasioni in cui il problema non sarà nè noto nè evidente. Un semplice albero delle decisioni o un diagramma di flusso che testi queste variabili può essere stilato per eliminare le variabili ed isolare il problema. Ovviamente il diagramma non dovrebbe essere seguito ciecamente.
Linea 31: Linea 31:
It is often easier to teach this method using a non technological problem first. For example, have your student develop a problem resolution procedure on something simple and familiar, like a battery powered television. Start by sabotaging the television. Give them a battery that is not charged. Disconnect the aerial. Insert a broken fuse. Test the student, making it clear that each problem will show specific symptoms, and point the way as to how to proceed. Once they have fixed the television, have them apply this procedure to a more complicated problem. In a network, you can change an IP address, switch or damage cables, use the wrong SSID, or orient the antenna in the wrong direction. It is important that they develop a methodology and procedure to resolve these problems. Spesso è più semplice insegnare questo metodo usando dapprima un problema non tecnologico. Far sviluppare ai propri studenti una procedura di risoluzione dei probemi su qualcosa di semplice e familiare, ad esempio, una televisione alimentata a batterie. Iniziare sabotando la televisione dando loro una batteria non carica. Disconnettendo l'antenna. Inserendo un fusibile guasto. Testare gli studenti, spiegando bene che ogni problema mostrerà sintomi specifici e indirizzarli verso il modo in cui procedere. Una volta che hanno riparato il televisore, facciamoli applicare questa procedura ad un problema più complicato. In una rete possiamo cambiare un indirizzo IP, scambiare o rompere i cavi, usare l'SSID sbagliato o orientare l'antenna nella direzione sbagliata. E' importante che gli studenti sviluppino una metodologia e delle procedure per risolvere questi problemi.
Linea 33: Linea 33:
== Proper troubleshooting technique == == La tecnica corretta per la risoluzione dei problemi ==
Linea 35: Linea 35:
No troubleshooting methodology can completely cover all problems you will encounter when working with wireless networks. But often, problems come down to one of a few common mistakes. Here are a few simple points to keep in mind that can get your troubleshooting effort working in the right direction. Nessuna metodologia di risoluzione può coprire completamente tutti i problemi che si incontrano quando si lavora con le reti wireless. Ma, spesso, i problemi si riducono ad uno degli errori più comuni. Qui vengono elencati pochi semplici punti da tenere a mente per far lavorare nella giusta direzione i propri sforzi per la soluzione dei problemi.
Linea 37: Linea 37:
 * '''Don't panic. ''' If you are troubleshooting a system, that means that it was working at one time, probably very recently. Before jumping in and making changes, survey the scene and assess exactly what is broken. If you have historical logs or statistics to work from, all the better. Be sure to collect information first, so you can make an informed decision before making changes.
 * '''Is it plugged in?''' This step is often overlooked until many other avenues are explored. Plugs can be accidentally (or intentionally) unplugged very easily. Is the lead connected to a good power source? Is the other end connected to your device? Is the power light on? It may sound silly, but you will feel even sillier if you spend a lot of time checking out an antenna feed line only to realize that the AP was unplugged the entire time. Trust me, it happens more often than most of us would care to admit.
 * '''What was the last thing changed?''' If you are the only person with access to the system, what is the last change you made? If others have access to it, what is the last change they made and when? When was the last time the system worked? Often, system changes have unintended consequences that may not be immediately noticed. Roll back that change and see what effect it has on the problem.
 * '''Make a backup.''' This applies before you notice problems, as well as after. If you make a complicated software change to a system, having a backup means that you can quickly restore it to the previous settings and start again. When troubleshooting very complex problems, having a configuration that "sort-of" works can be much better than having a mess that doesn't work at all (and that you can't easily restore from memory).
 * '''The known good'''. This idea applies to hardware, as well as software. A '''''known good '''''is any component that you can replace in a complex system to verify that its counterpart is in good, working condition. For example, you may carry a tested Ethernet cable in a tool kit. If you suspect problems with a cable in the field, you can easily swap out the suspect cable with the known good and see if things improve. This is much faster and less error-prone than re-crimping a cable, and immediately tells you if the change fixes the problem. Likewise, you may also pack a backup battery, antenna cable, or a CD-ROM with a known good configuration for the system. When fixing complicated problems, saving your work at a given point lets you return to it as a known good, even if the problem is not yet completely solved.
 * '''Change one variable at a time.''' When under pressure to get a failed system back online, it is tempting to jump ahead and change many likely variables at once. If you do, and your changes seem to fix the problem, then you will not understand exactly what led to the problem in the first place. Worse, your changes may fix the original problem, but lead to more unintended consequences that break other parts of the system. By changing your variables one at a time, you can precisely understand what went wrong in the first place, and be able to see the direct effects of the changes you make.
 * '''Do no harm.''' If you don't fully understand how a system works, don't be afraid to call in an expert. If you are not sure if a particular change will damage another part of the system, then either find someone with more experience or devise a way to test your change without doing damage. Putting a penny in place of a fuse may solve the immediate problem, but it may also burn down the building.
 * '''Non andare in panico. ''' Se si risolvendo i problemi di un sistema, significa che il sistema ha lavorato una volta, probabilmente molto di recente. Prima di iniziare a fare modifiche bisogna analizzare la scena e stabilire esattamente cosa s'è rotto. Se si hanno a disposizione log storici o statistiche da cui partire sarà meglio. Bisogna assicurarsi primaditutto di raccogliere tutte le informazioni in modo da poter prendere decisioni informate prima di fare modifiche.
 * '''E' connesso?''' Questo passo viene spesso sorvolato fino a quando molte altre strade sono percorse. I connettori possono essere accidentalmente (o intenzionalmente) disconnessi molto faclimente. Il cavo è connesso ad una buona sorgente di corrente? L'altro capo è connesso al dispositivo? La spia di accensione è accesa? Può sembrare sciocco ma ci sentiremmo ancora più sciocchi dopo aver speso un sacco di tempo a controllare la linea di alimentazione di un'antenna per poi scoprire che l'AP era sconnesso dall'inizio. Accade molto più spesso di quanto saremmo disposti ad ammettere.
 * '''Cos'è l'ultima cosa che è cambiata?''' Se si è l'unici ad avere accesso al sistema, qual'è l'ultima modifica che abbiamo effettuato? Se vi hanno accesso anche altri, qual'è l'ultima modifica che hanno fatto e quando? Quand'è stata l'ultima volta che il sistema ha funzionato? Spesso le modifiche al sistema hanno conseguenze non intenzionali che possono non essere notate immediatamente. Si può annullare le ultime modifiche e vedere che effetto hanno sul problema.
 * '''Fare un backup.''' Questo si applica prima di aver notato un problema, ma anche dopo. Se si effettua un complesso cambio di software in un sistema, avere un backup significa che sarà possibile ripristinare velocemente le vecchie impostazioni e ricominciare. Quando si analizzano problemi molto complessi, avere una configurazione che "più o meno" funziona può essere molto meglio di avere un pasticcio che non funziona affatto (e che non si può facilmente ripristinare).
 * /!\ '''Quello buono''' /!\ . Quest'idea è applicabile all'hardware così come al software. Un '''''quello buono''''' è un componente che si può sostituire in un sistema complesso per verificare che la sua controparte è in buone condizioni di funzionamento. Ad esempio ci si può portare un cavo Ethernet testato nella nostra cassetta degli attrezzi. Se si sospettano problemi con un cavo sul campo, potremmo facilmente sostituire il cavo sospetto con quello buono e vedere se le cose migliorano. E' più semplice e meno a rischio di errori che crimpare di nuovo un cavo, e ci dice immediatamente se la sostituzione risolve il problema. Allo stesso modo, ci si può portare anche una batteria di backup, un cavo antenna o un CD-ROM con una configurazione valida per il sistema. Quando si risolvono problemi complicati, salvare il lavoro ad un certo punto ci permette di tornare ad una situazione stabile anche se il problema non è ancora del tutto risolto.
 * '''Cambiare una variabile alla volta.''' Quando si è sotto pressione per ripristinare un sistema guasto, si è tentati di saltare in avanti e cambiare molte variabili con una volta. Se si fa questo, e le modifiche sembrano risolvere il problema, non saremo mai in grado di capire esattamente cos'ha causato il problema inizialmente. O, ancor peggio, le modifiche potrebbero risolvere il problema originario e portare a conseguenze inaspettate che guastino altre parti del sistema. Modificando le variabili una alla volta, è possibile capire con precisione cos'è andato storto all'inizio e vedere gli effetti diretti delle modifiche effettuate.
 * '''Non fare danni.''' Se non si è capito appieno come funziona un sistema, non bisogna temere di chiamare un esperto. Se non si è sicuri se una particolare modifica danneggi un'altra parte del sistema, allora bisogna trovare qualcuno con più esperienza o escogitare un modo per testare le modifiche senza fare danni. Mettere un penny al posto di un fusibile può risolvere il problema nell'immediato, ma può anche far bruciare il palazzo.
Linea 45: Linea 45:
It is unlikely that the people who design your network will be on call twenty-four hours per day to fix problems when they arise. Your troubleshooting team will need to have good troubleshooting skills, but may not be competent enough to configure a router from scratch or crimp a piece of LMR-400. It is often much more efficient to have a number of backup components on-hand, and train your team to be able to swap out the entire broken part. This could mean having an access point or router pre-configured and sitting in a locked cabinet, plainly labeled and stored with backup cables and power supplies. Your team can swap out the failed component, and either send the broken part to an expert for repair, or arrange to have another backup sent in. Assuming that the backups are kept secure and are replaced when used, this can save a lot of time for everyone. Non è plausibile che le persone che progettano la rete restino a telefono 24 ore al giorno per risolvere i problemi quando arrivano. Il team di troubleshooting deve avere buone capacità di soluzione dei problemi ma potrebbe non essere competente abbastanza per configurare un router da zero o crimpare un pezzo di LMR-400. E' spesso molto più efficiente avere una serie di componenti di backup a portata di mano e addestrare il team a sostituire l'intera parte guasta. Questo può significare avere un access point o un router preconfigurati e chiusi in un armadietto, chiaramente etichettati e con i cavi e gli alimentatori di backup. Il team può sostituire il componente guasto e spedirlo ad un esperto per la riparazione, o fare in modo di farsi spedire un'altro componente di backup. Mantenendo al sicuro le componenti di backup e rimpiazzandole quando vengono usate si può far risparmiare un sacco di tempo a tutti.
Linea 47: Linea 47:
== Common network problems == == Problemi di rete comuni ==
Linea 49: Linea 49:
Often, connectivity problems come from failed components, adverse weather, or simple misconfiguration. Once your network is connected to the Internet or opened up to the general public, considerable threats will come from the network users themselves. These threats can range from the benign to the outright malevolent, but all will have impact on your network if it is not properly configured. This section looks at some common problems found once your network is used by actual human beings. Spesso i problemi di connettività sono causati da componenti guaste, maltempo o semplicemente cattive configurazioni. Una volta che la nostra rete è connessa ad Internet o aperta al pubblico, una considerevole serie di minacce arriveranno dagli stessi utenti della rete. Queste minacce spaziano dal benigno al totalmente maligno ma avranno tutte impatto sulla rete se non è correttamente configurata. Questa sezione riguarda alcuni problemi comunemente riscontrabili una volta che la rete venga usata dalla razza umana attuale.
Linea 51: Linea 51:
=== Locally hosted websites === === Siti ospitati localmente ===
Linea 53: Linea 53:
If a university hosts its website locally, visitors to the website from outside the campus and the rest of the world will compete with the university's staff for Internet bandwidth. This includes automated access from search engines that periodically '''''spider''''' your entire site. One solution to this problem is to use split DNS and mirroring. The university mirrors a copy of its websites to a server at, say, a European hosting company, and uses split DNS to direct all users from outside the university network to the mirror site, while users on the university network access the same site locally. Details about how to set this up are provided in chapter three. Se un'università ospita il suo sito web localmente, i visistatori del sito all'esterno del campus e nel resto del mondo si contenderanno la banda Internet con lo staff dell'università. A questi si aggiungono gli accessi automatici degli '''''spider''''' dei motori di ricerca che periodicamente scansioneranno l'intero sito. Una soluzione a questo problema è di usare uno split DNS ed un mirror. L'università replicherà una copia del suo sito su di un server, diciamo, di una compagnia di hosting Europea, ed utilizzerà uno split DNS per redirigere tutti gli utenti esterni alla rete universitaria verso il sito mirror, mentre gli utenti interni alla rete universitaria accederanno allo stesso sito localmente. I dettagli su come effettuare questa configurazione sono forniti nel capitolo tre.
Linea 55: Linea 55:
||<:>http://wiki.wndw.net/images/figures/en/figure-8.1.png||
||<:>''Figure 8.1: In Example 1, all website traffic coming from the Internet must traverse the VSAT. In Example 2, the public web site is hosted on a fast European service, while a copy is kept on an internal server for very fast local access. This improves the VSAT connection and reduces load times for web site users.''||
||<:>{{attachment:figure-8.1-ita.png}}||
||<:>''Figura 8.1: Nell'Esempio 1, tutto il traffico del sito web che proviene da Internet deve attraversare il VSAT. Nell'Esempio 2 il sito web pubblico è ospitato su un servizio Europeo e viene mantenuata una copia su di un server interno per accessi locali molto veloci. Questa configurazione migliora la connessione VSAT e riduce i tempi di caricamento per gli utenti del sito web.''||
Linea 58: Linea 58:
=== Open proxies === === Proxy aperti ===
Linea 60: Linea 60:
A proxy server should be configured to accept only connections from the university network, not from the rest of the Internet. This is because people elsewhere will connect and use open proxies for a variety of reasons, such as to avoid paying for international bandwidth. The way to configure this depends on the proxy server you are using. For example, you can specify the IP address range of the campus network in your Un server proxy dovrebbe esser configurato per accettare solo connessioni provenienti dalla rete dell'università, non dal resto di Internet. Questo per evitare che altre persone vi si connettano ed utilizzino il proxy aperto per una serie di scopi come l'evitare di pagare collegamenti internazionali. Il modo di configurarlo dipende dal tipo di proxy server che si utilizza. Ad esempio è possibile specificare il range di indirizzi IP utilizzati nella rete del campus. /!\ LA FRASE è INCOMPLETA NELLA VERSIONE ORIGINALE! /!\
Linea 62: Linea 62:
=== Open relay hosts === === /!\ Host a ritrasmissione aperta (Open relay hosts) /!\ ===
Linea 64: Linea 64:
An incorrectly configured mail server will be found by unscrupulous people on the Internet, and be used as a relay host to send bulk email and spam. They do this to hide the true source of the spam, and avoid getting caught. To test for an open relay host, the following test should be carried out on your mail server (or on the SMTP server that acts as a relay host on the perimeter of the campus network). Use '''''telnet''''' to open a connection to port 25 of the server in question (with some Windows versions of telnet, it may be necessary to type 'set local_echo' before the text is visible): Un server mail mal configurato sarà scovato dalle persone senza scrupoli di Internet e usato come macchina di ritrasmissione per /!\ email di massa /!\ e spam. Lo fanno per nascondere la vera sorgente dello spam ed evitare di essere scoperti. Per trovare host che inoltrano apertamente (open relay host n.d.t.) i test seguenti dovrebbero essere eseguiti sul vostro mail server (o sul server SMTP che lavora come relay host sul perimetro della rete del campus). Usare '''''telnet''''' per aprire una connessione alla porta 25 del server in questione (con alcune versioni di Windows telnet potrà esser necessario digitare 'set local_echo' per rendere visibile il testo):
Linea 70: Linea 70:
Then, if an interactive command-line conversation can take place (for example, as follows), the server is an open relay host: Quindi, se è possibile aprire una sessione da linea di comando (come nell'esempio che segue), il server è un host open relay:
Linea 79: Linea 79:
Instead, the reply after the first MAIL FROM should be something like: In caso contrario, la risposta al primo MAIL FROM dovrebbe essere qualcosa del tipo:
Linea 85: Linea 85:
An online tester is available at sites such as http://www.ordb.org/. There is also information about the problem at this site. Since bulk emailers have automated methods to find such open relay hosts, an institution that does not protect its mail systems is almost guaranteed to be found and abused. Configuring the mail server not to be an open relay consists of specifying the networks and hosts that are allowed to relay mail through them in the MTA (eg., Sendmail, Postfix, Exim, or Exchange). This will likely be the IP address range of the campus network. All'indirizzo http://www.ordb.org/ è disponibile anche un tester online. Il sito contiene anche informazioni su questa problematica. Dal momento che le i /!\ bulk emailers /!\ hanno sistemi automatizzati per trovare questi host open relay, un'organizzazione che non protegge il proprio sistema email ha quasi la certezza che il proprio server venga trovato ed abusato. Configurare un server mail per non essere un open relay host consiste nello specificare le reti e gli host che sono autorizzati ad inoltrare le email tramite il suo MTA (Sendmail, Postfix, Exim, o Exchange). Tipicamente si specifica il range di indirizzi della rete del campus.
Linea 89: Linea 89:
Bandwidth abuse through peer-to-peer (P2P) file-sharing programs such as Kazaa, Morpheus, WinMX and BearShare can be prevented in the following ways: L'abuso di banda dei programmi di scambio file su peer-to-peer (P2P) come Kazaa, Morpheus, WinMX e BearShare può essere prevenuto nei modi seguenti:
Linea 91: Linea 91:
 * '''Make it impossible to install new programs on campus computers.''' By not giving regular users administrative access to PC workstations, it is possible to prevent the installation of programs such as Kazaa. Many institutions also standardize on a desktop build, where they install the required operating system on one PC. They then install all the necessary applications on it, and configure these in an optimal way. The PC is also configured in a way that prevents users from installing new applications. A disk image of this PC is then cloned to all other PCs using software such as Partition Image (see http://www.partimage.org/) or Drive Image Pro (see http://www.powerquest.com/).
 * '''Blocking these protocols is not a solution.''' This is because Kazaa and other protocols are clever enough to bypass blocked ports. Kazaa defaults to port 1214 for the initial connection, but if that is not available it will attempt to use ports 1000 to 4000. If these are blocked, its uses port 80, making it look like web traffic. For this reason, ISPs don't block it but "throttle it", using a bandwidth-manager product (see chapter three).
 * '''If rate-limiting is not an option, change the network layout.''' If the proxy server and mail servers are configured with two network cards (as described in chapter three) and these servers are not configured to forward any packets, this would block all P2P traffic. It would also block all other types of traffic, such as Microsoft NetMeeting, SSH, VPN software, and all other services not specifically permitted by the proxy server. In low bandwidth networks it may be decided that the simplicity of this design will outweigh the disadvantages. Such a decision may be necessary, but shouldn't be taken lightly. Network administrators simply cannot predict how users will make innovative use of a network. By preemptively blocking all access, you will prevent users from making use of any services (even low-bandwidth services) that your proxy does not support. While this may be desirable in extremely low bandwidth circumstances, it should never be considered as a good access policy in the general case.
 * '''Rendere impossibile installare programmi nuovi sui computer del campus.''' Evitando di dare accessi amministrativi ad utenti normali delle workstation e PC, è possibile evitare l'installazione di programmi come Kazaa. Molte istituzioni standardizzano una configurazione tipo installando il sistema operativo e tutte le applicazioni necessarie su di un PC, e configuranole in modo ottimale. Il PC viene configurato anche in modo da impedire agli utenti di installare nuove applicazioni. L'immagine del disco di questo PC viene poi clonata verso tutti gli altri PC usando programmi come Partition Image (vedi http://www.partimage.org/) o Drive Image Pro (vedi http://www.powerquest.com/).
 * '''Bloccare questi protocolli non è una soluzione.''' Kazaa ed altri protocolli sono bravi abbastanza da attraversare porte bloccate. Kazaa utilizza normalmente la porta 1214 per la connessione iniziale ma se questa non è disponibile proverà ad usare le porte dalla 1000 alla 4000. Se anche queste sono bloccate, usa la porta 80, rendendosi simile al traffico web. Per questa ragione gli ISP non lo bloccano ma lo "moderano", usando dei prodotti di bandwidth-manager (vedi capitolo tre).
 * '''Se la moderazione non è un'opzione, cambia il layout di rete.''' Se il server proxy ed i server email sono configurati con due schede di rete (come descritto nel capitolo tre) e questi server non sono configurati per inoltrare nessun pacchetto, essi bloccheranno tutto il traffico P2P. Bloccheranno anche tutti gli altri tipi di traffico come Microsoft NetMeedting, SSH, programmi di VPN e tutti gli altri servizi non espressamente permessi dal server proxy. In reti con poca banda si può decidere che la semplicità di questa implementazione sia più importante degli svantaggi. Un decisione del genere potrebbe essere necessaria, ma non dovrebbe essere presa facilmente. Gli amministratori di rete semplicemente non possono prevedere che utilizzo innovativo gli utenti faranno di una rete. Bloccando categoricamente gli accessi, impediremo agli utenti di utilizzare ogni servizio (compreso quelli che occupano poca banda) che il proxy non supporta. Anche se questo può essere ideale in circostanze di banda estremamente piccola, non dovrebbe mai esser considerata una regola di accesso in generale.
Linea 95: Linea 95:
=== Programs that install themselves (from the Internet) === === Programmi che si installano da soli (tramite Internet) ===
Linea 97: Linea 97:
There are programs that automatically install themselves and then keep on using bandwidth - for example, the so-called Bonzi-Buddy, the Microsoft Network, and some kinds of worms. Some programs are spyware, which keep sending information about a user's browsing habits to a company somewhere on the Internet. These programs are preventable to some extent by user education and locking down PCs to prevent administrative access for normal users. In other cases, there are software solutions to find and remove these problem programs, such as Spychecker (http://www.spychecker.com/), Ad-Aware (http://www.lavasoft.de/), or xp-antispy (http://www.xp-antispy.de/). Esistono programmi che si installano da soli automaticamente e poi continuano ad usare banda come, ad esempio, il cosiddetto Bonzi-Buddy, il Microsoft Network ed alcuni tipi di worm. Alcuni di questi programmi sono spyware e continuano ad inviare informazioni sulle abitudini di navigazione dell'utente ad aziende da qualche parte in Internet. Questi programmi sono prevedibili in qualche caso con l'educazion dell'utente e bloccando il PC per prevenire accessi amministrativi per utenti normali. In altri casi, ci sono soluzioni software per trovare e rimuovere questi programmi problematici, come Spychecker (http://www.spychecker.com/), Ad-Aware (http://www.lavasoft.de/), o xp-antispy (http://www.xp-antispy.de/).
Linea 99: Linea 99:
=== Windows updates === === Aggiornamenti di Windows ===
Linea 101: Linea 101:
The latest Microsoft Windows operating systems assume that a computer with a LAN connection has a good link to the Internet, and automatically downloads security patches, bug fixes and feature enhancements from the Microsoft Web site. This can consume massive amounts of bandwidth on an expensive Internet link. The two possible approaches to this problem are: Gli ultimi sistemi operativi Microsoft Windows danno per scontato che un computer con una connessione LAN abbia un buon collegamento ad Internet e automaticamente scaricano patch di sicurezza, bug fix ed aggiornamenti dal sito Web della Microsoft. Questo può consumare la gran parte della banda a disposizione su collegamenti economici a Internet. I due approcci possibili a questo problema sono:
Linea 103: Linea 103:
 * '''Disable Windows updates on all workstation PCs. '''The security updates are very important for servers, but whether workstations in a protected private network such as a campus network need them is debatable.
 * '''Install a Software Update Server.''' This is a free program from Microsoft that enables you to download all the updates from Microsoft overnight on to a local server and distribute the updates to client workstations from there. In this way, Windows updates need not use any bandwidth on the Internet link during the day. Unfortunately, all client PCs need to be configured to use the Software Update Server for this to have an effect. If you have a flexible DNS server, you can also configure it to answer requests for windowsupdate.microsoft.com and direct the updater to your update server. This is only a good option for large networks, but can save untold amounts of Internet bandwidth.
 * '''Disabilitare Windows updates su tutti i PC e workstation. '''Gli aggiornamenti di sicurezza sono molto importanti per i server ma se per le workstation che risiedono in reti private e protette come una rete campus, il loro bisogno è dubbio.
 * '''Installare un server Software Update.''' E' un programma Microsoft gratuito che consente di scaricare tutti gli update dalla Microsoft di notte su di un server locale e da lì distribuirli a tutte le workstation client. In questo modo gli aggiornamenti di Windows non utilizzeranno alcuna banda Internet durante il giorno. Sfortunatamente, tutti i PC client devono essere configurati per usare il server Software Update locale affinchè questo abbia un effetto. Se si hanno a disposizione DNS server flessibili, si può anche configurarli per rispondere alle richieste per windowsupdate.microsoft.com e redirigerle verso il server di aggiornamento locale. Sembra solo un buon rimedio per grandi reti ma può risparmiare una quantità indicibile di banda Internet
Linea 106: Linea 106:
Blocking the Windows updates site on the proxy server is not a good solution because the Windows update service (Automatic Updates) keeps retrying more aggressively, and if all workstations do that, it places a heavy load on the proxy server. The extract below is from the proxy log (Squid access log) where this was done by blocking Microsoft's cabinet (.cab) files. Bloccare il sito di aggiornamento di Windows sul proxy server non è una buona soluzione perchè il servizio di aggiornamento di Windows (Aggiornamento Automatico) continua a riprovare sempre più aggressivamente, e se lo fanno tutte le workstation, il proxy server sarà pesantemente caricato. L'estratto seguente proviene dal log del proxy (log accessi di Squid) dove è stato impostato di bloccare i file cabinet di Microsoft (.cab).
Linea 108: Linea 108:
Much of the Squid log looks like this: Gran parte del log di Squid appare così:
Linea 122: Linea 122:
While this may be tolerable for a few PC clients, the problem grows significantly as hosts are added to the network. Rather than forcing the proxy server to serve requests that will always fail, it makes more sense to redirect the Software Update clients to a local update server. Anche se questo può essere tollerabile per pochi client, il problema cresce significativamente man manco che gli host si aggiungono alla rete. Invece che forzare un proxy a servire richieste che falliranno sempre, ha molto più senso redirigere i client Software Update verso un server di aggiornamento locale.
Linea 124: Linea 124:
=== Programs that assume a high bandwidth link === === Programmi che presuppongono una gran disponibilità di banda ===
Linea 126: Linea 126:
In addition to Windows updates, many other programs and services assume that bandwidth is not a problem, and therefore consume bandwidth for reasons the user might not predict. For example, anti-virus packages (such as Norton AntiVirus) periodically update themselves automatically and directly from the Internet. It is better if these updates are distributed from a local server. Oltre Windows updates, molti altri programmi e servizi fanno conto che la banda non sia un problema e, per questo, consumano banda per ragioni che l'utente non può prevedere. Ad esempio i pacchetti antivirus (come il Norton antivirus) si aggiorna periodicamente in modo automatico da Internet. Sarebbe meglio che questi aggiornamenti fossero distribuiti da un server locale.
Linea 128: Linea 128:
Other programs, such as the RealNetworks video player, automatically download updates and advertisements, as well as upload usage patterns back to a site on the Internet. Innocuous looking applets (like Konfabulator and Dashboard widgets) continually poll Internet hosts for updated information. These can be low bandwidth requests (like weather or news updates), or very high bandwidth requests (such as webcams). These applications may need to be throttled or blocked altogether. Altri programmi, come il video player RealNetworks, scaricano automaticamente aggiornamenti e pubblicità, ma fanno anche l'upload delle abitudini d'uso verso un sito su Internet. Applet dall'aspetto innocuo (come Konfabulator e Dashboard widgets) contattano continuamente degli host in Internet per avere informazioni aggiornate. Si può trattare di richieste con una piccola esigenza di banda (come gli aggiornamenti sul tempo o sulle notizie), o di richieste molto piò onerose (come le webcam). Potrebbe essere necessario moderare queste applicazioni o bloccarle del tutto.
Linea 130: Linea 130:
The latest versions of Windows and Mac OS X also have a time synchronization service. This keeps the computer clock accurate by connecting to time servers on the Internet. It is better to install a local time server and distribute accurate time from there, rather than to tie up the Internet link with these requests. Le ultime versioni di Windows e Mac OS X hanno anche un servizio di sincronizzazione del tempo. Connettendosi a time server su Internet, il servizio assicura la precisione dell'ora mostrata dall'orologio del computer. E' meglio installare un time server locale e distribuire il segnale orario esatto da lì invece che sprecare la banda verso Internet con queste richieste.
Linea 132: Linea 132:
=== Windows traffic on the Internet link === === Traffico Windows sul collegamento ad Internet ===
Linea 134: Linea 134:
Windows computers communicate with each other via '''''NetBIOS''''' and '''''Server Message Block''''' ('''''SMB'''''). These protocols work on top of TCP/IP or other transport protocols. It is a protocol that works by holding '''''elections''''' to determine which computer will be the '''''master browser'''''. The master browser is a computer that keeps a list of all the computers, shares and printers that you can see in '''''Network Neighbourhood''''' or '''''My Network Places'''''. Information about available shares are also broadcast at regular intervals. I computer Windows comunicano tra loro tramite il '''''NetBIOS''''' e il '''''Server Message Block''''' ('''''SMB'''''). Questi protocolli si lavorano sopra il TCP/IP o altri protocolli di trasporto. Si tratta di un protocollo che usa un processo di '''''elezione''''' per determinare quale computer sarà il '''''master browser'''''. Il master browser è un computer che mantiene la lista di tutti gli altri computer, condivisioni e stampanti che si possono vedere in '''''Risorse di Rete''''' o '''''Connessioni di Rete'''''. Le informazioni riguardo le condivisioni disponibili sono anche inviate a tutti (broadcast) ad intervalli regolari.
Linea 136: Linea 136:
The SMB protocol is designed for LANs and causes problems when the Windows computer is connected to the Internet. Unless SMB traffic is filtered, it will also tend to spread to the Internet link, wasting the organization's bandwidth. The following steps might be taken to prevent this: Il protocollo SMB è pensato per le LAN ed è fonte di problemi nel momento in cui il computer Windows è connesso ad Internet. Se il traffico SMB non è filtrato tenderà a propagarsi attraverso il collegamento ad Internet, sprecando la bandwidth dell'organizzazione. Le seguenti misure possono essere adottati per prevenire questo comportamento:
Linea 138: Linea 138:
 * '''Block outgoing SMB/NetBIOS traffic on the perimeter router or firewall.''' This traffic will eat up Internet bandwidth, and worse, poses a potential security risk. Many Internet worms and penetration tools actively scan for open SMB shares, and will exploit these connections to gain greater access to your network.
 * '''Install ZoneAlarm on all workstations (not the server)'''. A free version can be found at http://www.zonelabs.com/. This program allows the user to determine which applications can make connections to the Internet and which ones cannot. For example, Internet Explorer needs to connect to the Internet, but Windows Explorer does not. ZoneAlarm can block Windows Explorer from doing so.
 * '''Reduce network shares.''' Ideally, only the file server should have any shares. You can use a tool such as SoftPerfect Network Scanner (from http://www.softperfect.com/) to easily identify all the shares in your network.
 * '''Bloccare il traffico SMB/NetBIOS in uscita sul router o firewall perimetrale.''' Questo traffico consumerà la banda Internet e, ancora peggio, espone a potenziali rischi di sicurezza. Molti worm Internet e tool di penetrazione cercano attivamente di trovare condivisioni SMB aperte e di exploitare queste connessioni per avere un accesso alla nostra rete.
 * '''Installare ZoneAlarm su tutte le workstation (non il server)'''. Una versione gratuita la si può trovare all'indirizzo http://www.zonelabs.com/. Questo programma permette all'utente di scegliere quale applicazione può connettersi ad Internet e quale no. Internet Explorer, ad esempio, deve connettersi ad Internet ma Windows Explorer no. ZoneAlarm può impedire a Windows Explorer di farlo.
 * '''Ridurre le condivisioni di rete.''' Teoricamente solo il file server dovrebbe avere delle condivisioni. E' possibile usare programmi come SoftPerfect Network Scanner (http://www.softperfect.com/) per trovare facilmente tutte le condivisioni della nostra rete.



Soluzione dei problemi

L'organizzazione di una struttura di supporto alla rete diventa importante a seconda del tipo di apparecchiature utilizzate. Diversamente dalle connessioni su cavo, nelle reti wireless i problemi sono spesso invisibili e possono richiedere molto tempo e conoscenze in più per essere analizzati e risolti. Interferenze, vento e nuovi ostacoli fisici possono guastare una rete che ha funzionato per molto tempo. In questo capitolo dettaglieremo una serie di strategie utili per creare un team che possa supportare efficentemente la rete.

Formare un team

In ogni villaggio, famiglia o compagnia c'è qualcuno che ha interesse verso la tecnologia. Ci sono quelli che crimpano i cavi dell'antenna, cambiano il cavo della televisione o saldano un pezzo alla bicicletta. Queste persone saranno interessate alla rete e vorranno imparare quanto più possibile al riguardo. Anche se queste persone saranno risorse inestimabili, bisognerà evitare di impartire tutta la conoscenza specifica ad una sola persona. Se l'unico specialista perde interesse o trova un altro lavoro porterà la conoscenza via con se.

Ci sono anche molti giovani ambiziosi, teenager o adulti, che saranno interessati avendo anche il tempo di ascoltare, imparare e dare un aiuto con la rete. Saranno sicuramente di aiuto e impareranno velocemente ma il team del progetto deve porre l'attenzione su coloro che potranno supportare la rete per i prossimi mesi ed anni. I giovani possono spostarsi per l'università o trovare un lavoro, specialmente i più ambiziosi che tendono a farsi coinvolgere. Spesso i ragazzi hanno una piccola influenza sulla comunità mentre invece una persona più grande sarà probabilmente più capace di prendere decisioni che impatteranno positivamente la rete nel suo complesso. Anche se magari hanno meno tempo a disposizione per imparare e sembrano meno interessati, coinvolgere e formare persone più grandi può risultare fondamentale.

Quindi, una strategia chiave per formare un team di supporto, consiste nel bilanciare e distrubire la conoscenza su coloro che possono supportare la rete nel lungo termine. Bisogna coinvolgere i giovani, ma evitare di fargli accumulare l'uso e la conoscenza di questi sistemi. Bisogna trovare le persone che sono impegnate nella comunità, che vi siano radicate, che possano essere motivate ed insegnare a loro. Una strategia complementare è quella di suddividere in comparti le funzioni e i compiti e documentare tutte le metodologie e le procedure. In questo modo sarà più facile addestrare le persone, ed in caso sostituirle con un piccolo sforzo.

Per fare un esempio, una volta in un sito di progetto, il team di training ha selezionato un brillante neolaureato che era tornato nel suo villaggio. Questi era molto motivato ed ha imparato in fretta, per questo gli è stato insegnato più di quanto previsto, tanto che è diventato capace di affrontare una grande varietà di problemi, dal riparare un PC al sistemare i cavi Ethernet. Sfortunatamente, due mesi dopo il lancio del progetto, gli è stato offerto un impiego pubblico ed ha lasciato la comunità. Anche l'offerta di una paga migliore non è bastata a trattenerlo dato che la prospettiva di stabilità che l'impiego pubblico gli offriva era troppo appetibile. Tutta la conoscenza sulla rete e sul come supportarla è sparita con lui. Il team di training è dovuto tornare e ricominciare daccapo. La strategia successiva è stata di suddividere le funzioni e formare le persone che erano radicate permanentemente nella comunità: le persone con casa e figli, e con un lavoro stabile. Questo ha richiesto tre volte il tempo necessario a formare il neolaureato, ma in questo modo questa formazione potrà rimanere al servizio della comunità per molto più tempo.

Anche se questo ci può far pensare che dovremmo scegliere personalmente chi coinvolgere, non è necessariamente questo l'approccio migliore. Spesso è meglio cercare un'organizzazione locale che possa fare da partner o un manager locale, e lavorare con loro per trovare il giusto team tecnico. Valori, storia, politiche locali e molti altri fattori saranno importanti per loro, anche se rimarranno completamente incomprensibili per le persone che non fanno parte di quella comunità. L'approccio migliore è di guidare i partner locali, fornirgli i criteri, assicurarsi che li abbiano compresi ed impostare chiari limiti e confini. Questi limiti dovrebbero comprendere regole riguardo patrocinio, nepotismo e favoritismo, anche se queste regole devono aver considerazione della situazione locale. Potrebbe risultare impossibile stabilire che non è possibile assumere parenti, potrebbe esser meglio fornire un sistema di controlli ed equilibri. Se a candidarsi è un parente, dovrebbero esserci criteri chiari ed una seconda autorità che decida riguardo la candidatura. Allo stesso tempo è importante che il partner locale non veda messa in discussione la sua capacità dagli organizzatori del progetto, compromettendo così la propria capacità di amministrazione. Saranno i più indicati a giudicare chi può lavorare meglio con loro stessi. Se vengono formati bene per questo processo, allora tutti i nostri requisiti dovrebbero esser soddisfatti.

La soluzione dei problemi ed il supporto in ambito tecnologico sono un'arte astratta. La prima volta che vediamo un a pittura astratta ci appare come una serie di schizzi di vernice casuali. Dopo aver riflettuto sulla composizione per un pò di tempo, iniziamo ad apprezzare il lavoro nel suo complesso e la sua "invisibile" coerenza ci appare più chiara. Il neofita in una rete wireless può vedere le antenne, i cavi e i computer, ma può richiedergli un pò di tempo per capire che si tratta di una rete "invisibile". Nelle aree rurali, può spesso accadere che le persone debbano fare uno grosso sforzo di comprensione per apprezzare la rete invisibile che gli viene semplicemente piazzata nel villaggio. Per questo è necessario un'approccio graduale per avvicinare più facilmente le persone al supporto dei sistemi tecnologici. Il miglior metodo è il coinvolgimento. Una volta che sono stati scelti i partecipanti e si sono impegnati nel progetto bisogna coinvolgerli il più possibile. Lasciarli "guidare". Dar loro la crimpatrice o la tastiera e mostrargli come fare il lavoro. Anche se non c'è tempo per spiegare ogni dettaglio, anche se richiedesse più tempo, devono essere fisicamente coinvolti, non solo vedere il risultato di quel che è stato fatto ma anche quanto e che lavoro è stato eseguito.

Il metodo scientifico è insegnato in tutte le scuole occidentali. Molte persone lo imparano sin dal momento in cui arrivano alle lezioni di scienza alle scuole superiori. Prendere una serie di variabili, quindi lentamente eliminare le variabili tramite test binari fino a rimanere con una o poche possibilità. Con queste possibilità in mente, si completa l'esperimento. Dopodichè si testa per vedere se l'esperimento fornisce risultati simili a quanto atteso. In caso negativo si ricalcolano i risultati attesi e si prova ancora. Il contadino tipico potrebbe esser stato introdotto al concetto, ma probabilmente non avrà la possibilità di risolvere problemi complessi. Anche se ha familiarità con il metodo scientifico, potrebbe non pensare di applicarlo ai problemi reali.

Questo metodo è molto efficiente, anche se lungo. Può essere velocizzato facendo assunzioni logiche. Ad esempio, se un access point che funziona da tempo a volte smette di funzionare dopo un temporale, si può sospettare di problemi legati all'alimentatore e saltare così la maggior parte della procedura di risoluzione dei problemi. Alle persone incaricate di supportare la tecnologia dovrebbe venir insegnato a risolvere i problemi con questo metodo dato che ci saranno occasioni in cui il problema non sarà nè noto nè evidente. Un semplice albero delle decisioni o un diagramma di flusso che testi queste variabili può essere stilato per eliminare le variabili ed isolare il problema. Ovviamente il diagramma non dovrebbe essere seguito ciecamente.

Spesso è più semplice insegnare questo metodo usando dapprima un problema non tecnologico. Far sviluppare ai propri studenti una procedura di risoluzione dei probemi su qualcosa di semplice e familiare, ad esempio, una televisione alimentata a batterie. Iniziare sabotando la televisione dando loro una batteria non carica. Disconnettendo l'antenna. Inserendo un fusibile guasto. Testare gli studenti, spiegando bene che ogni problema mostrerà sintomi specifici e indirizzarli verso il modo in cui procedere. Una volta che hanno riparato il televisore, facciamoli applicare questa procedura ad un problema più complicato. In una rete possiamo cambiare un indirizzo IP, scambiare o rompere i cavi, usare l'SSID sbagliato o orientare l'antenna nella direzione sbagliata. E' importante che gli studenti sviluppino una metodologia e delle procedure per risolvere questi problemi.

La tecnica corretta per la risoluzione dei problemi

Nessuna metodologia di risoluzione può coprire completamente tutti i problemi che si incontrano quando si lavora con le reti wireless. Ma, spesso, i problemi si riducono ad uno degli errori più comuni. Qui vengono elencati pochi semplici punti da tenere a mente per far lavorare nella giusta direzione i propri sforzi per la soluzione dei problemi.

  • Non andare in panico. Se si risolvendo i problemi di un sistema, significa che il sistema ha lavorato una volta, probabilmente molto di recente. Prima di iniziare a fare modifiche bisogna analizzare la scena e stabilire esattamente cosa s'è rotto. Se si hanno a disposizione log storici o statistiche da cui partire sarà meglio. Bisogna assicurarsi primaditutto di raccogliere tutte le informazioni in modo da poter prendere decisioni informate prima di fare modifiche.

  • E' connesso? Questo passo viene spesso sorvolato fino a quando molte altre strade sono percorse. I connettori possono essere accidentalmente (o intenzionalmente) disconnessi molto faclimente. Il cavo è connesso ad una buona sorgente di corrente? L'altro capo è connesso al dispositivo? La spia di accensione è accesa? Può sembrare sciocco ma ci sentiremmo ancora più sciocchi dopo aver speso un sacco di tempo a controllare la linea di alimentazione di un'antenna per poi scoprire che l'AP era sconnesso dall'inizio. Accade molto più spesso di quanto saremmo disposti ad ammettere.

  • Cos'è l'ultima cosa che è cambiata? Se si è l'unici ad avere accesso al sistema, qual'è l'ultima modifica che abbiamo effettuato? Se vi hanno accesso anche altri, qual'è l'ultima modifica che hanno fatto e quando? Quand'è stata l'ultima volta che il sistema ha funzionato? Spesso le modifiche al sistema hanno conseguenze non intenzionali che possono non essere notate immediatamente. Si può annullare le ultime modifiche e vedere che effetto hanno sul problema.

  • Fare un backup. Questo si applica prima di aver notato un problema, ma anche dopo. Se si effettua un complesso cambio di software in un sistema, avere un backup significa che sarà possibile ripristinare velocemente le vecchie impostazioni e ricominciare. Quando si analizzano problemi molto complessi, avere una configurazione che "più o meno" funziona può essere molto meglio di avere un pasticcio che non funziona affatto (e che non si può facilmente ripristinare).

  • /!\ Quello buono /!\ . Quest'idea è applicabile all'hardware così come al software. Un quello buono è un componente che si può sostituire in un sistema complesso per verificare che la sua controparte è in buone condizioni di funzionamento. Ad esempio ci si può portare un cavo Ethernet testato nella nostra cassetta degli attrezzi. Se si sospettano problemi con un cavo sul campo, potremmo facilmente sostituire il cavo sospetto con quello buono e vedere se le cose migliorano. E' più semplice e meno a rischio di errori che crimpare di nuovo un cavo, e ci dice immediatamente se la sostituzione risolve il problema. Allo stesso modo, ci si può portare anche una batteria di backup, un cavo antenna o un CD-ROM con una configurazione valida per il sistema. Quando si risolvono problemi complicati, salvare il lavoro ad un certo punto ci permette di tornare ad una situazione stabile anche se il problema non è ancora del tutto risolto.

  • Cambiare una variabile alla volta. Quando si è sotto pressione per ripristinare un sistema guasto, si è tentati di saltare in avanti e cambiare molte variabili con una volta. Se si fa questo, e le modifiche sembrano risolvere il problema, non saremo mai in grado di capire esattamente cos'ha causato il problema inizialmente. O, ancor peggio, le modifiche potrebbero risolvere il problema originario e portare a conseguenze inaspettate che guastino altre parti del sistema. Modificando le variabili una alla volta, è possibile capire con precisione cos'è andato storto all'inizio e vedere gli effetti diretti delle modifiche effettuate.

  • Non fare danni. Se non si è capito appieno come funziona un sistema, non bisogna temere di chiamare un esperto. Se non si è sicuri se una particolare modifica danneggi un'altra parte del sistema, allora bisogna trovare qualcuno con più esperienza o escogitare un modo per testare le modifiche senza fare danni. Mettere un penny al posto di un fusibile può risolvere il problema nell'immediato, ma può anche far bruciare il palazzo.

Non è plausibile che le persone che progettano la rete restino a telefono 24 ore al giorno per risolvere i problemi quando arrivano. Il team di troubleshooting deve avere buone capacità di soluzione dei problemi ma potrebbe non essere competente abbastanza per configurare un router da zero o crimpare un pezzo di LMR-400. E' spesso molto più efficiente avere una serie di componenti di backup a portata di mano e addestrare il team a sostituire l'intera parte guasta. Questo può significare avere un access point o un router preconfigurati e chiusi in un armadietto, chiaramente etichettati e con i cavi e gli alimentatori di backup. Il team può sostituire il componente guasto e spedirlo ad un esperto per la riparazione, o fare in modo di farsi spedire un'altro componente di backup. Mantenendo al sicuro le componenti di backup e rimpiazzandole quando vengono usate si può far risparmiare un sacco di tempo a tutti.

Problemi di rete comuni

Spesso i problemi di connettività sono causati da componenti guaste, maltempo o semplicemente cattive configurazioni. Una volta che la nostra rete è connessa ad Internet o aperta al pubblico, una considerevole serie di minacce arriveranno dagli stessi utenti della rete. Queste minacce spaziano dal benigno al totalmente maligno ma avranno tutte impatto sulla rete se non è correttamente configurata. Questa sezione riguarda alcuni problemi comunemente riscontrabili una volta che la rete venga usata dalla razza umana attuale.

Siti ospitati localmente

Se un'università ospita il suo sito web localmente, i visistatori del sito all'esterno del campus e nel resto del mondo si contenderanno la banda Internet con lo staff dell'università. A questi si aggiungono gli accessi automatici degli spider dei motori di ricerca che periodicamente scansioneranno l'intero sito. Una soluzione a questo problema è di usare uno split DNS ed un mirror. L'università replicherà una copia del suo sito su di un server, diciamo, di una compagnia di hosting Europea, ed utilizzerà uno split DNS per redirigere tutti gli utenti esterni alla rete universitaria verso il sito mirror, mentre gli utenti interni alla rete universitaria accederanno allo stesso sito localmente. I dettagli su come effettuare questa configurazione sono forniti nel capitolo tre.

figure-8.1-ita.png

Figura 8.1: Nell'Esempio 1, tutto il traffico del sito web che proviene da Internet deve attraversare il VSAT. Nell'Esempio 2 il sito web pubblico è ospitato su un servizio Europeo e viene mantenuata una copia su di un server interno per accessi locali molto veloci. Questa configurazione migliora la connessione VSAT e riduce i tempi di caricamento per gli utenti del sito web.

Proxy aperti

Un server proxy dovrebbe esser configurato per accettare solo connessioni provenienti dalla rete dell'università, non dal resto di Internet. Questo per evitare che altre persone vi si connettano ed utilizzino il proxy aperto per una serie di scopi come l'evitare di pagare collegamenti internazionali. Il modo di configurarlo dipende dal tipo di proxy server che si utilizza. Ad esempio è possibile specificare il range di indirizzi IP utilizzati nella rete del campus. /!\ LA FRASE è INCOMPLETA NELLA VERSIONE ORIGINALE! /!\

/!\ Host a ritrasmissione aperta (Open relay hosts) /!\

Un server mail mal configurato sarà scovato dalle persone senza scrupoli di Internet e usato come macchina di ritrasmissione per /!\ email di massa /!\ e spam. Lo fanno per nascondere la vera sorgente dello spam ed evitare di essere scoperti. Per trovare host che inoltrano apertamente (open relay host n.d.t.) i test seguenti dovrebbero essere eseguiti sul vostro mail server (o sul server SMTP che lavora come relay host sul perimetro della rete del campus). Usare telnet per aprire una connessione alla porta 25 del server in questione (con alcune versioni di Windows telnet potrà esser necessario digitare 'set local_echo' per rendere visibile il testo):

telnet mail.uzz.ac.zz 25

Quindi, se è possibile aprire una sessione da linea di comando (come nell'esempio che segue), il server è un host open relay:

MAIL FROM: spammer@waste.com 
250 OK - mail from <spammer@waste.com> 
RCPT TO: innocent@university.ac.zz 
250 OK - rcpt to spammer@waste.com 

In caso contrario, la risposta al primo MAIL FROM dovrebbe essere qualcosa del tipo:

550 Relaying is prohibited. 

All'indirizzo http://www.ordb.org/ è disponibile anche un tester online. Il sito contiene anche informazioni su questa problematica. Dal momento che le i /!\ bulk emailers /!\ hanno sistemi automatizzati per trovare questi host open relay, un'organizzazione che non protegge il proprio sistema email ha quasi la certezza che il proprio server venga trovato ed abusato. Configurare un server mail per non essere un open relay host consiste nello specificare le reti e gli host che sono autorizzati ad inoltrare le email tramite il suo MTA (Sendmail, Postfix, Exim, o Exchange). Tipicamente si specifica il range di indirizzi della rete del campus.

Peer-to-peer networking

L'abuso di banda dei programmi di scambio file su peer-to-peer (P2P) come Kazaa, Morpheus, WinMX e BearShare può essere prevenuto nei modi seguenti:

  • Rendere impossibile installare programmi nuovi sui computer del campus. Evitando di dare accessi amministrativi ad utenti normali delle workstation e PC, è possibile evitare l'installazione di programmi come Kazaa. Molte istituzioni standardizzano una configurazione tipo installando il sistema operativo e tutte le applicazioni necessarie su di un PC, e configuranole in modo ottimale. Il PC viene configurato anche in modo da impedire agli utenti di installare nuove applicazioni. L'immagine del disco di questo PC viene poi clonata verso tutti gli altri PC usando programmi come Partition Image (vedi http://www.partimage.org/) o Drive Image Pro (vedi http://www.powerquest.com/).

  • Bloccare questi protocolli non è una soluzione. Kazaa ed altri protocolli sono bravi abbastanza da attraversare porte bloccate. Kazaa utilizza normalmente la porta 1214 per la connessione iniziale ma se questa non è disponibile proverà ad usare le porte dalla 1000 alla 4000. Se anche queste sono bloccate, usa la porta 80, rendendosi simile al traffico web. Per questa ragione gli ISP non lo bloccano ma lo "moderano", usando dei prodotti di bandwidth-manager (vedi capitolo tre).

  • Se la moderazione non è un'opzione, cambia il layout di rete. Se il server proxy ed i server email sono configurati con due schede di rete (come descritto nel capitolo tre) e questi server non sono configurati per inoltrare nessun pacchetto, essi bloccheranno tutto il traffico P2P. Bloccheranno anche tutti gli altri tipi di traffico come Microsoft NetMeedting, SSH, programmi di VPN e tutti gli altri servizi non espressamente permessi dal server proxy. In reti con poca banda si può decidere che la semplicità di questa implementazione sia più importante degli svantaggi. Un decisione del genere potrebbe essere necessaria, ma non dovrebbe essere presa facilmente. Gli amministratori di rete semplicemente non possono prevedere che utilizzo innovativo gli utenti faranno di una rete. Bloccando categoricamente gli accessi, impediremo agli utenti di utilizzare ogni servizio (compreso quelli che occupano poca banda) che il proxy non supporta. Anche se questo può essere ideale in circostanze di banda estremamente piccola, non dovrebbe mai esser considerata una regola di accesso in generale.

Programmi che si installano da soli (tramite Internet)

Esistono programmi che si installano da soli automaticamente e poi continuano ad usare banda come, ad esempio, il cosiddetto Bonzi-Buddy, il Microsoft Network ed alcuni tipi di worm. Alcuni di questi programmi sono spyware e continuano ad inviare informazioni sulle abitudini di navigazione dell'utente ad aziende da qualche parte in Internet. Questi programmi sono prevedibili in qualche caso con l'educazion dell'utente e bloccando il PC per prevenire accessi amministrativi per utenti normali. In altri casi, ci sono soluzioni software per trovare e rimuovere questi programmi problematici, come Spychecker (http://www.spychecker.com/), Ad-Aware (http://www.lavasoft.de/), o xp-antispy (http://www.xp-antispy.de/).

Aggiornamenti di Windows

Gli ultimi sistemi operativi Microsoft Windows danno per scontato che un computer con una connessione LAN abbia un buon collegamento ad Internet e automaticamente scaricano patch di sicurezza, bug fix ed aggiornamenti dal sito Web della Microsoft. Questo può consumare la gran parte della banda a disposizione su collegamenti economici a Internet. I due approcci possibili a questo problema sono:

  • Disabilitare Windows updates su tutti i PC e workstation. Gli aggiornamenti di sicurezza sono molto importanti per i server ma se per le workstation che risiedono in reti private e protette come una rete campus, il loro bisogno è dubbio.

  • Installare un server Software Update. E' un programma Microsoft gratuito che consente di scaricare tutti gli update dalla Microsoft di notte su di un server locale e da lì distribuirli a tutte le workstation client. In questo modo gli aggiornamenti di Windows non utilizzeranno alcuna banda Internet durante il giorno. Sfortunatamente, tutti i PC client devono essere configurati per usare il server Software Update locale affinchè questo abbia un effetto. Se si hanno a disposizione DNS server flessibili, si può anche configurarli per rispondere alle richieste per windowsupdate.microsoft.com e redirigerle verso il server di aggiornamento locale. Sembra solo un buon rimedio per grandi reti ma può risparmiare una quantità indicibile di banda Internet

Bloccare il sito di aggiornamento di Windows sul proxy server non è una buona soluzione perchè il servizio di aggiornamento di Windows (Aggiornamento Automatico) continua a riprovare sempre più aggressivamente, e se lo fanno tutte le workstation, il proxy server sarà pesantemente caricato. L'estratto seguente proviene dal log del proxy (log accessi di Squid) dove è stato impostato di bloccare i file cabinet di Microsoft (.cab).

Gran parte del log di Squid appare così:

2003.4.2 13:24:17 192.168.1.21 http://windowsupdate.microsoft.com/ident.cab  *DENIED* Banned extension .cab GET 0 
2003.4.2 13:24:18 192.168.1.21 http://windowsupdate.microsoft.com/ident.cab *DENIED* Banned extension .cab GET 0 
2003.4.2 13:24:18 192.168.1.21 http://windowsupdate.microsoft.com/ident.cab *DENIED* Banned extension .cab HEAD 0 
2003.4.2 13:24:19 192.168.1.21 http://windowsupdate.microsoft.com/ident.cab *DENIED* Banned extension .cab GET 0 
2003.4.2 13:24:19 192.168.1.21 http://windowsupdate.microsoft.com/ident.cab *DENIED* Banned extension .cab GET 0 
2003.4.2 13:24:20 192.168.1.21 http://windowsupdate.microsoft.com/ident.cab *DENIED* Banned extension .cab GET 0 
2003.4.2 13:24:21 192.168.1.21 http://windowsupdate.microsoft.com/ident.cab *DENIED* Banned extension .cab GET 0 
2003.4.2 13:24:21 192.168.1.21 http://windowsupdate.microsoft.com/ident.cab *DENIED* Banned extension .cab GET 0 
2003.4.2 13:24:21 192.168.1.21 http://windowsupdate.microsoft.com/ident.cab *DENIED* Banned extension .cab HEAD 0 

Anche se questo può essere tollerabile per pochi client, il problema cresce significativamente man manco che gli host si aggiungono alla rete. Invece che forzare un proxy a servire richieste che falliranno sempre, ha molto più senso redirigere i client Software Update verso un server di aggiornamento locale.

Programmi che presuppongono una gran disponibilità di banda

Oltre Windows updates, molti altri programmi e servizi fanno conto che la banda non sia un problema e, per questo, consumano banda per ragioni che l'utente non può prevedere. Ad esempio i pacchetti antivirus (come il Norton antivirus) si aggiorna periodicamente in modo automatico da Internet. Sarebbe meglio che questi aggiornamenti fossero distribuiti da un server locale.

Altri programmi, come il video player RealNetworks, scaricano automaticamente aggiornamenti e pubblicità, ma fanno anche l'upload delle abitudini d'uso verso un sito su Internet. Applet dall'aspetto innocuo (come Konfabulator e Dashboard widgets) contattano continuamente degli host in Internet per avere informazioni aggiornate. Si può trattare di richieste con una piccola esigenza di banda (come gli aggiornamenti sul tempo o sulle notizie), o di richieste molto piò onerose (come le webcam). Potrebbe essere necessario moderare queste applicazioni o bloccarle del tutto.

Le ultime versioni di Windows e Mac OS X hanno anche un servizio di sincronizzazione del tempo. Connettendosi a time server su Internet, il servizio assicura la precisione dell'ora mostrata dall'orologio del computer. E' meglio installare un time server locale e distribuire il segnale orario esatto da lì invece che sprecare la banda verso Internet con queste richieste.

Traffico Windows sul collegamento ad Internet

I computer Windows comunicano tra loro tramite il NetBIOS e il Server Message Block (SMB). Questi protocolli si lavorano sopra il TCP/IP o altri protocolli di trasporto. Si tratta di un protocollo che usa un processo di elezione per determinare quale computer sarà il master browser. Il master browser è un computer che mantiene la lista di tutti gli altri computer, condivisioni e stampanti che si possono vedere in Risorse di Rete o Connessioni di Rete. Le informazioni riguardo le condivisioni disponibili sono anche inviate a tutti (broadcast) ad intervalli regolari.

Il protocollo SMB è pensato per le LAN ed è fonte di problemi nel momento in cui il computer Windows è connesso ad Internet. Se il traffico SMB non è filtrato tenderà a propagarsi attraverso il collegamento ad Internet, sprecando la bandwidth dell'organizzazione. Le seguenti misure possono essere adottati per prevenire questo comportamento:

  • Bloccare il traffico SMB/NetBIOS in uscita sul router o firewall perimetrale. Questo traffico consumerà la banda Internet e, ancora peggio, espone a potenziali rischi di sicurezza. Molti worm Internet e tool di penetrazione cercano attivamente di trovare condivisioni SMB aperte e di exploitare queste connessioni per avere un accesso alla nostra rete.

  • Installare ZoneAlarm su tutte le workstation (non il server). Una versione gratuita la si può trovare all'indirizzo http://www.zonelabs.com/. Questo programma permette all'utente di scegliere quale applicazione può connettersi ad Internet e quale no. Internet Explorer, ad esempio, deve connettersi ad Internet ma Windows Explorer no. ZoneAlarm può impedire a Windows Explorer di farlo.

  • Ridurre le condivisioni di rete. Teoricamente solo il file server dovrebbe avere delle condivisioni. E' possibile usare programmi come SoftPerfect Network Scanner (http://www.softperfect.com/) per trovare facilmente tutte le condivisioni della nostra rete.

Worms e virus

Worm e virus possono generare una quantità enorme di traffico. Il worm W32/Opaserv, ad esempio, è ancora presente nonostante sia piuttosto vecchio. Si diffonde tramite le condivisioni Windows e viene rilevato dalle altre persone in Internet perchè tenta di diffondersi ancora. Per questo è essenziale che una protezione antivirus sia installata su di ogni PC. Così come è essenziale far capire all'utente i rischi connessi all'esecuzione degli allegati e al rispondere alle email non attese. Bisognerebbe osservare la regola di non tenere alcun servizio non utilizzato su workstation e server. Un PC non dovrebbe avere condivisioni di rete se non fa da file server; un server, a sua volta, non dovrebbe eseguire servizi non necessari. I server Windows e Unix, ad esempio, hanno normalmente attivi i servizi di web server. Questi servizi dovrebbero essere disabilitati qualora i server ricoprano un'altra funzione; meno servizi sono attivi su un computer, meno possibilità di "exploit" ci saranno.

Inoltri ciclici di email

Talvolta i problemi possono essere causati da un singolo utente. Prendiamo ad esempio il caso di un utente il cui account all'università è configurato per inoltrare tutta la posta al suo account su Yahoo. L'utente va in vacanza. Tutte le email speditegli durante la sua assenza vengono ancora inoltrate all'account su Yahoo che è limitato a soli 2 MB. Quando la casella su Yahoo si riempie, inizia a far rimbalzare le email indietro verso l'account dell'università, che immediatamente le re-inoltra indietro verso la casella Yahoo. In questo modo si crea un ciclo di email in grado di inviare centinaia di migliaia di email avanti e indietro, generando un grosso traffico capace di compromettere i mail server.

Esistono funzionalità per alcuni programmi di mail server in grado di riconoscere questi cicli o loop. Dovrebbero essere attivi per default. Gli amministratori dovrebbero assicurarsi di non disattivare queste funzionalità per errore, e di evitare di installare SMTP forwarder che modificano l'intestazione (header n.d.t.) delle email con il risultato che il mail server non riesca a riconoscere il loop di email.

Download di file di grandi dimensioni

Un utente può avviare molti download contemporaneamente, o scaricare file di grandi dimensioni come le immagini ISO da 650 MB. In questo modo, un singolo utente può utilizzare la maggior parte della banda. La soluzione a questo tipo di problema si può trovare con il training, download offline e monitoring (compreso il monitoring in tempo reale come spiegato nel capitolo sei). Il download offline può essere implementato in almeno due modi:

  • All'Università di Moratuwa, è stato implementato un sistema di redirezione degli URL. Gli utenti che accedono ad URL ftp:// vedono comparire elenco di directory con due collegamenti per ogni file elecanto: uno per il download normale, e l'altro per il download in tempo differito. Se viene selezionato il link per il download offline, il file selezionato viene accodato per il download in un tempo successivo e l'utente viene notificato tramite email del completamento del download. Il sistema tiene in cache i file scaricati recentemente per metterli a disposizione immediatamente se richiesti di nuovo. La coda di download è ordinata per dimensione dei file. Per questo i file piccoli vengono scaricati per primi. Dato che parte della banda è allocata per questi sistemi anche durante le ore di picco, gli utenti che richiedono file piccoli possono riceverli in pochi minuti, a volte anche più velocemente che scaricandoli direttamente.

  • Un altro approccio potrebbe essere di creare un'interfaccia web dove gli utenti inseriscono l'URL del file che vogliono scaricare. Il file viene scaricato di notte con un cron job o operazione pianificata. Questo sistema funziona però solo con utenti pazienti e che conoscono la dimensione dei file che potrebbe essere problematico scaricare durante la giornata lavorativa.

Inviare file di grandi dimensioni

Quando gli utenti devono spedire file di grandi dimensioni a collaboratori da qualche parte su Internet, dovrebbe venir loro mostrato come schedulare l'upload. In Windows, l'upload ad un server FTP remoto può essere fatto utilizzando uno script FCP che consiste in un file di testo che contiene i comandi FTP, qualcosa di simile all'esempio seguente (salvato come c:\ftpscript.txt):

open ftp.ed.ac.uk 

gventer 
mysecretword 
delete data.zip 
binary 
put data.zip 
quit

Per eseguirlo, al prompt dei comandi basta digitare:

ftp -s:c:\ftpscript.txt

Su computer con Windows NT, 2000 e XP il comando può essere salvato in un file del tipo transfer.cmd, e schedulato per essere eseguito di notte utilizzando la funzione Scheduled Tasks - Operazioni Pianificate (Avvio -> Impostazioni -> Pannello di Controllo -> Operazioni Pianificate). In Unix, lo stesso risultato può essere ottenuto utilizzando at o cron.

Utenti che scambiano file

Gli utenti spesso desiderano scambiarsi file di grandi dimensioni. Se il destinatario è locale, può risultare molto dispendioso, in termini di banda, inviare questi file tramite Internet. Sui server Windows / Samba / Web o Novell dovrebbero esser create delle cartelle condivise dove gli utenti possano mettere file di grandi dimensioni per scambiarli con gli altri utenti.

Altrimenti è possibile scrivere un front-end web che accetti grandi file e li ospiti in un'area di download. Dopo aver fatto l'upload, l'utente riceve un URL che punta al file. A questo punto potrà dare questo URL ai suoi collaboratori locali o internazionali che potranno effettuare il download del file tramite l'URL fornita. Questo è ciò che l'Università di Bristol ha realizzato con il suo sistema FLUFF. L'Università offre strutture per l'upload di grandi file (FLUFF) disponibili tramite http://www.bristol.ac.uk/fluff/. A questi file può accedere chiunque conosca la loro posizione. Il vantaggio di quest'approccio è che gli utenti possono dare agli utenti esterni l'accesso ai loro file, mentre il metodo della condivisione di rete può andar bene solo per gli utenti interni al campus. Un sistema di questo tipo può essere implementato facilmente con uno script CGI utilizzando Python e Apache.