Aprire porte sul router e chiuderle quando non più necessario

L'importanza di chiudere le porte sul router quando il loro utilizzo non è necessario. Il fatto che alcune porte siano aperte sui singoli sistemi collegati alla rete locale non implica automaticamente che esse siano esposte e raggiungibili da sistemi remoti. Ecco come fare per verificarlo.

Il router è quel dispositivo che si occupa di instradare i pacchetti dati tra reti diverse. È uno strumento che rende interoperabili più reti a livello di indirizzamento consentendo l’accesso ai sistemi collegati.
I router costituiscono la spina dorsale della rete Internet perché, grazie alle informazioni contenute in apposite tabelle (dette tabelle di instradamento), memorizzate al loro interno, fanno in modo che i dati in arrivo vengano smistati verso le destinazioni corrette.

Aprire le porte o chiuderle sul router: la tecnica NAT

Si chiama NAT (Network Address Translation) una tecnica supportata dal router che consiste nel modificare gli indirizzi IP contenuti negli header dei pacchetti in transito. Il router che integra anche funzionalità di modem, riceve dal provider Internet un indirizzo IP pubblico (statico o dinamico) il cui utilizzo viene condiviso da tutti i dispositivi collegati alla rete locale (via cavo Ethernet o WiFi).
I dispositivi collegati in LAN possono quindi “affacciarsi” online e scambiare dati con i sistemi remoti proprio appoggiandosi all’unico IP pubblico gestito dal modem-router. È la funzionalità NAT a modificare i pacchetti affinché arrivino al dispositivo locale che li ha effettivamente richiesti.

Di default il NAT permette di chiudere le porte in ingresso verso tutti i sistemi collegati alla rete locale. Quando una richiesta di connessione generata da un sistema remoto (e non richiesta da un dispositivo della LAN) arriva al router, questo non sa dove essa debba essere diretta e, in particolare, a quale sistema locale essa debba essere eventualmente indirizzata. Così, essa cadrà nel vuoto.

L’utilizzo di un router con funzionalità NAT attiva e firewall integrato permette di proteggersi da gran parte degli attacchi (lo vedremo meglio più avanti).

Due parole sul significato di router

I router possono essere pensati come dispositivi “intelligenti” (operano al livello 3 della famosa pila ISO/OSI ossia al livello di rete), capaci di interconnettere, ad esempio, reti LAN utilizzando tecnologie differenti.

Oltre ai router di fascia più alta utilizzati dai vari provider per la rete di trasporto, è oggi comune l’impiego di apparati (sia in ambito aziendale che domestico) che svolgono il lavoro di switch (instradano i pacchetti a livello locale usando un meccanismo basato sull’utilizzo di frame Ethernet; vedere Switch Ethernet: cos’è e come funziona. Le nostre FAQ; in particolare il paragrafo Qual è la differenza tra un router e uno switch) ma che spesso integrano anche funzionalità di modem costituendo l’interfaccia tra la LAN e la rete Internet.

Nell’articolo Configurare un router, le cose da fare dopo l’acquisto ci siamo soffermati sulle principali caratteristiche di un moderno router e sulle operazioni da effettuare dopo la sua installazione.

Un router-modem ADSL (anche se l’utilizzo del termine “modem” è improprio visto che i moderni router-modem non devono né modulare né demodulare nulla come invece accadeva coi vecchi 56k e predecessori…) dispone di una porta “ADSL” alla quale deve essere connesso un normale cavo telefonico “plug” RJ-11. Sia sui modem-router che sui router sprovvisti della funzionalità di modem è poi presente una porta WAN.
A tale porta potrà essere connesso, mediante un cavo RJ-45 (“Ethernet”), un dispositivo che permetta di stabilire il collegamento con il provider fornitore del servizio di accesso ad Internet. In questo caso l’IP privato del router dovrà essere scelto in modo tale che ricada nella stessa classe di IP locali usata dall’altro device.

Aprire e chiudere le porte: cosa significa? Cosa sono le porte?

Le porte sono “punti di accesso” che vengono utilizzati dai sistemi collegati alla rete per stabilire connessioni verso altri dispositivi. Una connessione di rete è effettuabile ricorrendo ad una delle 65.535 porte TCP/UDP disponibili: è poi compito del sistema operativo associare a ciascuna porta un punto di contatto o socket utilizzato da uno o più applicativi per inviare e ricevere dati.

Per impostazione predefinita, il router ha il compito di chiudere le porte in ingresso: qualunque richiesta di connessione proveniente da un sistema remoto e diretta verso l’IP pubblico associato al modem-router cadrà puntualmente nel vuoto.

Come abbiamo spiegato nell’articolo Cos’è il firewall e come funziona quello di Windows, di default nessuna delle porte aperte sui dispositivi collegati alla rete locale LAN viene sposta in Rete quando si usa un moderno router nella sua configurazione standard.

Si provi ad aprire il prompt dei comandi di Windows (Windows+R, cmd) quindi a digitare il comando seguente:

netstat -na

Si otterrà l’elenco completo delle porte che sono aperte sul sistema locale (seconda colonna con intestazione Indirizzo locale).
Quando in corrispondenza della colonna Indirizzo esterno vengono mostrati una serie di zeri (0.0.0.0) e accanto è riportata la voce LISTENING, significa che la porta è aperta sul sistema locale e che questo è effettivamente in attesa di una connessione (vedere anche Netstat: per verificare le connessioni di rete in corso per gli altri possibili usi del comando Netstat).
Diversamente, si leggerà ESTABLISHED quando un altro sistema, locale o remoto, si è connesso con successo alla porta corrispondente.

Nella colonna Indirizzo locale, il numero mostrato dopo i due punti (:) indica il numero identificativo della porta aperta sul sistema locale.

Aprire porte sul router e chiuderle quando non più necessario
Le prime 1024 porte delle 65.535 disponibili sono chiamate well-known ports perché ad esso sono associabili servizi ben specifici (In questa pagina un elenco completo).
Già rilevando il numero della porta aperta, quindi, è possibile stabilire quale servizio è in corso di utilizzo e quale applicazione installata sul sistema lo sta utilizzando.
Le porte con numerazione uguale o successiva a 1024 sono utilizzabili per altri scopi, anche se il loro utilizzo non è stato puntualmente classificato dalla IANA.

È opportuno affrettarsi a chiudere le porte?

Anche sulla base di quanto accaduto recentemente nel caso delle infezioni da worm-ransomware WannaCry (Attacco WannaCry: il ransomware sfrutta la falla risolta con l’aggiornamento MS17-010, molti stanno consigliando di chiudere le porte TCP usate dal malware per diffondersi.
Il problema è che così facendo si impedirà il funzionamento di servizi importanti di Windows come quello che permette di condividere file e stampanti mediante il protocollo SMB (porta TCP 445).

Digitando il comando netstat -na find "445" si troverà che, con ogni probabilità, la porta 445 è in uso sul sistema locale ovvero esiste un componente “server” che accetta connessioni in ingresso.
Ciò però non è un male perché la porta 445 permette appunto di usare il servizio di condivisione file e cartelle in Windows e accedervi per esempio da macchine Linux usando Samba.

Ciò che va fatto non è quindi tanto chiudere la porta 445 o altre porte locali usate dai sistemi Windows ma:

1) Accertarsi di installare gli aggiornamenti di sicurezza che consentono di risolvere eventuali problematiche (nel caso di WannaCry vedere Come verificare la presenza della patch MS17-010 che protegge da WannaCry)

2) Evitare che codice dannoso possa essere eseguito nell’ambito della rete locale e proteggere adeguatamente (eventualmente isolandoli, anche con l’utilizzo di VLAN configurabili tramite switch) i sistemi che gestiscono dati importanti (vedere Ransomware: cos’è, come proteggersi e recuperare i file cifrati).

3) Disinstallare applicazioni che attivino componenti server inutili e potenzialmente pericolosi.

4) Verificare quali porte sono effettivamente esposte in Rete (quindi raggiungibili da parte di host remoti) e disabilitare la funzionalità UPnP (Universal Plug and Play).

Controllare quali porte sono raggiungibili da remoto

Abbiamo visto in precedenza che il comando netstat -na consente di verificare le porte aperte sul sistema locale.
Ma quante e quali di esse sono effettivamente raggiungibili dall’esterno, quindi da host remoti?

Un router con NAT e firewall attivi consente di proteggersi da gran parte degli attacchi (fatta eccezione per le attenzioni di cui ai precedenti punti 1 e 2) perché non espone in Rete, sulla porta WAN o comunque sull’interfaccia Internet, le porte aperte sui sistemi locali.
Per sicurezza, però, suggeriamo di verificare sempre in che modo i sistemi collegati alla rete Internet, esternamente alla propria struttura aziendale o domestica “vedono” il proprio router.

Il router ha il compito di separare i sistemi connessi sulle porte LAN ed attraverso l’eventuale interfaccia Wi-Fi dalla rete WAN (Internet).
Il router, una volta connesso alla rete del provider Internet, riceverà un indirizzo IP dal fornitore d’accesso e fungerà da punto di riferimento per tutti i sistemi della rete locale (LAN) che vogliono affacciarsi sulla rete Internet.
La separazione tra interfacce LAN/wireless e rete WAN avviene anche per ovvi motivi di sicurezza: il router, dotato di funzionalità firewall, blocca per impostazione predefinita tutti i tentativi di connessione provenienti dalla rete Internet mentre consente, senza limitazioni, il transito dell’intero traffico in uscita.
Tutti i computer della LAN, quindi, saranno liberi di accedere ad Internet e connettersi senza restrizioni ai server remoti ma nessun utente remoto potrà – almeno nelle configurazioni di default – connettersi ad uno qualunque dei sistemi connessi in LAN (protezione firewall).

Abbiamo scritto “almeno nelle configurazioni di default” perché l’amministratore di rete o comunque l’utente che gestisce il router è libero di stabilire se consentire l’accesso alle risorse della LAN oppure ad alcune impostazioni del dispositivo agli utenti remoti aprendo una o più porte TCP/UDP in ingresso.

Il primo consiglio è quello di verificare che sul router si attivo il cosiddetto stateful inspection firewall (spesso indicato come SPI firewall ovvero stateful packet inspection firewall). L’abilitazione dello SPI firewall permette di rendere il router “invisibile” sulla rete Internet o meno consente di evitare l’invio di risposte alle richieste ICMP.
Cosa significa? Si provi a visitare la home page di DNSStuff oppure questa pagina. Si dovrebbe immediatamente leggere l’indirizzo IP (statico o dinamico) assegnato dal provider Internet (vedere anche Il mio IP: come trovarlo e a che cosa serve).

Aprendo il prompt dei comandi quindi digitando ping seguito da tale IP, si dovrebbe ottenere una serie di risposte.
Digitando lo stesso comando da una macchina remota non connessa quindi alla medesima rete locale, nel caso in cui lo SPI firewall risultasse correttamente attivato si dovrebbe ricevere sempre una richiesta scaduta.
In questo modo, con lo SPI firewall abilitato, per un utente remoto il router sarà praticamente “inesistente”.

Lo SPI firewall è attivabile accedendo al pannello di amministrazione del router digitando, nella barra degli indirizzi del browser, l’IP locale del router quindi nome utente e password necessari per la sua amministrazione.

A questo punto, il nostro consiglio quello di collegarsi con la pagina test di GRC Shields up quindi fare clic sul pulsante Proceed e, infine, su All service ports.

Aprire porte sul router e chiuderle quando non più necessario

Il servizio Shields up effettuerà così una verifica sulle prime 1056 porte TCP sul router.

Aprire porte sul router e chiuderle quando non più necessario

Le porte “invisibili” sono evidenziate con il colore verde, in rosso quelle “aperte” (quindi raggiungibili da remoto), in blu quelle visibili anche se chiuse.

Come evidenziato in precedenza, le porte di comunicazione sono come dei punti di accesso attraverso i quali viene stabilita una connessione in entrata od in uscita con ciascun sistema. Una connessione di rete è effettuabile utilizzando una delle 65.535 porte disponibili: alle prime 1.024 porte (“well known ports“) sono associati specifici servizi previsti dalla IANA.
Per convenzione, quindi, le porte 20 e 21 sono utilizzate ad esempio dal protocollo FTP per il trasferimento di file; la 25 dal protocollo SMTP; la 80 da HTTP; la 110 da POP3; la 443 da HTTPS e così via (un elenco completo è disponibile a questo indirizzo).

Diversamente da ciò che alcuni credono, non esiste una pericolosità intrinseca nell’utilizzo di specifiche porte. Semmai, il problema può presentarsi quando il router è configurato per effettuare l’inoltro dei pacchetti dati verso una porta, su un sistema locale, ove è in ascolto un componente server che presenta vulnerabilità di qualche tipo o che non è configurato in maniera corretta dal punto di vista della sicurezza.

Nella configurazione standard, quando non si avessero esigenze specifiche (ad esempio si dovesse rendere accessibile da remoto un server web installato in locale…), il test di Gibson dovrà restituire il giudizio Passed e tutti i blocchetti dovranno essere di colore verde.

Altre indicazioni per verificare le porte aperte sul router e chiuderle ove necessario, sono pubblicate nel nostro articolo Come controllare porte aperte su router e IP pubblico.

Se sul router fossero aperte porte che non si conoscono, si potrà annullare il port forwarding (inoltro delle porte) dall’interfaccia di amministrazione del router stesso.

Come indicato al precedente punto 4), poi, è secondo noi ormai consigliatissimo disattivare la funzionalità UPnP sul router.
Essa potrebbe essere infatti sfruttata ad arte da qualche software installato su uno dei dispositivi locali per aprire delle porte in ingresso sul router, anche quando ciò non fosse necessario.
A tal proposito, vedere gli articoli Configurare un router, le cose da fare dopo l’acquisto al paragrafo Il pericolo UPnP (Universal Plug and Play) e Sicurezza router, il pericolo può arrivare anche da UPnP?.

Aprire porte sul router: l’inoltro dei pacchetti in ingresso

Il router può effettuare l’inoltro dei pacchetti dati in arrivo su di una determinata porta (aperta dall’utente in modo manuale o via UPnP) verso un sistema sul quale vi sia un componente server in ascolto ovvero in grado di rispondere alle richieste di connessione provenienti dall’esterno.

Se, ad esempio, si configura un server web in una macchina collegata in rete locale attraverso il router questa, di default, accetterà le connessioni in ingresso sulla porta 80.
Le richieste di connessione che tale macchina accetterà (a meno dell’utilizzo di particolari restrizioni sul router), saranno però solo ed esclusivamente quelle provenienti dai sistemi ugualmente collegati alla medesima LAN.
Di default, la porta 80 sul router è chiusa in ingresso. Ciò significa che di norma non si potranno accettare connessioni in ingresso dirette su tale porta così come su tutte le altre 65.535.
Affinché un utente remoto sia in grado di collegarsi al server web installato su uno dei sistemi connessi in LAN, bisognerà aprire la porta corrispondente sul router e richiedere l’inoltro dei pacchetti dati in arrivo.

Apertura delle porte sul router e abilitazione del “port forwarding” (inoltro porte)

Allorquando si avesse la necessità di eseguire, su uno dei sistemi collegati in rete locale, un software con funzionalità server (sia esso un server web, un server di posta, un server ftp, un programma di file sharing,…), affinché il sistema appaia accessibile da remoto, è indispensabile provvedere ad attivare il “port forwarding” sul router.

Come abbiamo spiegato in precedenza, infatti, il router – per impostazione predefinita – provvedere a bloccare i tentativi di connessione verso i sistemi connessioni in LAN che provengano dall’esterno: qualunque richiesta di connessione in arriva da un sistema remoto, sia essa legittima oppure “maligna” (posta in essere da aggressori, worm o malware in generale), cade automaticamente nel vuoto.

Se su uno o più sistemi connessi alla rete locale sono stati installati software che debbono offrire funzionalità server (sistemi client remoti che conoscano l’indirizzo IP assegnato al router debbono poter accedervi), è indispensabile che il router sia manualmente configurato in modo tale da effettuare il cosiddetto “port forwarding”.

L’attivazione dell’inoltro del traffico in arrivo su determinate porte di comunicazione è possibile dal pannello di amministrazione del router (sezione Single port forwarding o Port range forwarding).

Bisognerà ovviamente indicare qual è la porta interessata e verso quale sistema connesso in LAN dev’essere inoltrato il traffico in arrivo.

Aprire porte sul router e chiuderle quando non più necessario

Supponendo di aver attivato un server web sul sistema avente IP 192.168.1.5 (da qui la necessità, talvolta, di impostare IP statici all’interno della rete locale…), nella sezione Single port forwarding del router sarà sufficiente specificare tale indirizzo locale ed indicare la porta TCP 80 abilitando (Enable) poi la regola appena impostata.
Lo stesso procedimento va applicato nel caso in cui si desideri effettuare l’inoltro dei pacchetti dati su altre porte (TCP o UDP) utilizzate da applicazioni con funzionalità server.

Di norma, quindi, nella configurazione di default del router, test come quello di Gibson oppure quello di YouGetSignal, dovrebbero indicare che tutte le porte sono invisibili ed irraggiungibili da remoto.
Se ciò non accadesse, è bene verificare la configurazione del router accertandosi che sul dispositivo non fosse stata abilitata l’amministrazione remota.
Gran parte dei malware o dei codici exploit pensati per aggredire determinati modelli di router generalmente (a meno della presenza di vulnerabilità più gravi) non sono in grado di sferrare attacchi “vincenti” nel momento in cui l’amministrazione remota risultasse disattivata o comunque allorquando il router non esponesse in Rete delle porte.
In particolare, è bene verificare che il router non offra alcuna risposta sulle porte 80, 8080 e 443.
Nel caso in cui ciò dovesse accadere (è facile verificarlo dai test di Gibson e YouGetSignal), allorquando lato amministrazione del router fosse tutto a posto, si dovrà probabilmente installare una versione più aggiornata del firmware cercando informazioni sul sito web del produttore.
Di solito sarebbe preferibile sostituire i router che non sono più supportati dai rispettivi produttori e che hanno ormai raggiunto il “fine vita”. Un router di più recente fattura consentirà anche di creare reti Wi-Fi più sicure (vedere Craccare reti WiFi: accedere alle reti WiFi protette).

È bene sottolineare che i servizi come Shields up di Gibson e YouGetSignal non indicheranno come aperte o comunque come raggiungibili quelle porte per le quali sono sia attivo ed in esecuzione un componente server. Dovrà insomma essere in esecuzione un software server in ascolto sulla porta specificata affinché la stessa sia riportata come “aperta”. Non basta che sul router sia attivo il semplice inoltro della porta corrispondente.

Porta 80 aperta sui sistemi Windows
Digitando il comando netstat -na si noterà che su alcuni sistemi Windows la porta 80 risulta inspiegabilmente aperta.
Posto che se non si fosse creata una regola di inoltro sul router, questa non sarà accessibile dall’esterno, va detto che essa viene aperta dal Servizio Pubblicazione sul Web.
Per chiuderla, soprattutto se non si utilizzasse alcun pacchetto di sviluppo Microsoft, basta usare la combinazione di tasti Windows+R, digitare services.msc, cliccare due volte su Servizio Pubblicazione sul Web, premere Interrompi quindi porre su Disabilitato il menu a tendina Tipo di avvio.

Ti consigliamo anche

Link copiato negli appunti