Marvin Pascale

[B.Log]

15 Marzo 2023

Addio Router

Percorriamo ancora una volta la strada verso lo status di utente consapevole. Abbiamo già visto come utilizzare dei dns che non ci vedano come la gallina dalle uova d’oro e come evitare di passare ore e ore a rifiutare tutto o ancor peggio: accettare tutto senza colpo ferire.

Oggi vorrei porre alla vostra attenzione la domanda che mi ha tenuto sveglio nell’ultimo periodo:

“Ha senso utilizzare il modem/router offerto con tanta gentilezza dai nostri provider oppure è meglio guardarsi intorno?”

Perché devo cambiare il modem/router?

La vera domanda è: “Perché no?”

Spesso, il costo di noleggio di questi apparati è molto alto perché ti promettono massima velocità e assistenza, ma la triste verità è che in molte occasioni il router installato non è un “top di gamma” e l’assistenza non è così preziosa come desidereresti. Ultimo, ma non per importanza, c’è il fatto che in pratica ci mettiamo in rete locale un oggetto che è di proprietà ed è gestito da altri.

Per le aziende il discorso è diverso in quanto in presenza di contratti business, dove magari viene anche assegnato un lotto di ip pubblici, i provider si sentono più generosi e offrono in dotazione (sempre a noleggio sia chiaro) un apparato di rete di fascia più alta. Generalmente un Cisco o un Huawei. A quest’ultimo si collega un bel firewall, che se ben configurato, fornisce un accettabile livello di sicurezza aggiuntivo.

Se sono un professionista o un privato?

Beh, in questo caso ti installano un normale modem/router che è un “one man band” e quindi fa un po’ quel che può. Io ho sottoscritto un contratto business FTTH con Tim che mi ha si dato accesso ad un ip pubblico statico ma ho ricevuto il classico router offerto a tutti i clienti con tecnologia FTTH.

Passo 1

Chiarimento: non voglio fare di un erba un fascio e non posso nemmeno dire che il router che ho avuto fosse un prodotto non adeguato, ma è innegabile che per offrire tutte quelle funzionalità e permettere anche ad un utente non consapevole di poter effettuare delle semplici configurazioni, il router in oggetto non potesse essere flessibile quanto io volessi.

Il primo passo, nonché l’ultimo che mi sento realmente di suggerire, è quello di inserire un firewall tra il router e la nostra rete locale. In questi casi si sceglie una classe locale diversa per i due apparati ed il gioco è fatto. Diventa un po’ scomodo se dobbiamo avere tanti port forward perché ogni configurazione andrà fatta due volte (questo a meno che non si decida di inoltrare in automatico tutte le porte dal router al firewall).

Aggiungendo un firewall tra il router del provider e la nostra rete locale innalziamo di quel po’ che basta il livello di sicurezza e anche nel caso in cui qualcuno riuscisse a baypassare il router si troverebbe punto e a capo con il firewall a protezione.

Cosa uso?

Nell’ultimo periodo ho valutato e provato diverse soluzioni: server usati con più porte ethernet, appliance firewall, dispositivi IoT e minipc assemblati ad-hoc.

Al netto di tutte le prove vi invito a dare un occhiata alla ZimaBoard. Io ho messo le mani sulla versione con 8 GB di ram e un Celeron N3450 (un quad Core 1.1-2.2GHz) con aggiunto un bel modulo pci composto a 4 ethernet da 2,5Gbps.

ZimaBoard

Lato software invece ho scelto di utilizzare pfSense; un firewall open-source che resta un punto di riferimento sia per la comunità di hobbisti che per le aziende.

pfSense

L’installazione e la configurazione sono molto semplici e si trovano innumerevoli guide e video. Vi farò invece vedere come rendere funzionanti le 4 porte da 2,5G e gli accorgimenti da usare.

Una volta installato e avviato il sistema ci dobbiamo collegare in ssh per scaricare ed installare i moduli (do per scontato che abbiate preso le porte insieme alla ZimaBoard e quindi siano delle Realtek).

# cd /tmp
# fetch -v https://pkg.freebsd.org/FreeBSD:12:amd64/quarterly/All/realtek-re-kmod-197.00.pkg
# pkg install -f -y realtek-re-kmod-197.00.pkg

una volta installati i moduli li dobbiamo caricare all’avvio; editiamo il file /boot/loader.conf e aggiungiamo le due righe suggerite dal precedente output

if_re_load="YES"
if_re_name="/boot/modules/if_re.ko"

NB: occhio che al riavvio, il sistema riordinerà le schede di rete per cui la WAN (che di default è la re0) non sarà più la prima a sinistra della ZimaBoard ma sarà la prima a sinistra del gruppo di porte dello slot pci e la lan sarà la seconda.

Le prestazioni sono davvero ottime. La board è un blocco di metallo per cui dissipa senza necessità di ventole. Ho eseguito vari test e data la CPU e la RAM riesce a sostenere una connessione internet gigabit senza problemi. La ritengo quindi un ottimo prodotto per uno scenario small office / home office.

pfSense vlan Dallo screenshot si vede come con un download di quasi 700 Mbps la cpu sia al 33%.

La mia scelta

netgate Alla fine, io ho optato per una scelta diversa: ho acquistato un appliance con una porta sfp per eliminare il router. Dalla liberalizzazione dei modem/router sono apparse tante guide ma alla fine ci ho dovuto mettere un po’ del mio e vi indicherò le cose a cui prestare attenzione nel caso vorreste farlo anche voi.

NB: io ho un utenza TIM per cui se avete un altro provider dovete cercare la documentazione di riferimento

Dopo aver configurato il tutto dovrete crete una vlan con id 835

pfSense vlan

ATTENZIONE: dopo averlo fatto, dovrete configurare la WAN; modalità PPPoE sull’interfaccia virtuale della vlan.

pfSense PPPoE WAN

Questa parte viene omessa in tutte le guide ma se no prestate attenzione non riuscirete mai a stabilire il collegamento con il Gateway.

Per quanto riguarda i dati PPPoE invece:

  • USERNAME: numero_telefonico (in caso di utente con business con ip statico bisogna mettere nomedellasocietà@alicebiz.routed);
  • PASSWORD: timadsl (in caso di utente con business con ip statico bisogna mettere nomedellasocietà@alicebiz.routed).

Extra

Così come fatto anche sul Fortigate, possiamo dare mandato a pfSense di ignorare le richieste provenienti da una lista di ip. Nel nostro caso utilizzeremo la blocklist di Crowdsec.

In questo caso nella sezione firewall creiamo un alias URLs pfSense alias

configuriamo l’url per scaricare la lista pfSense blocklist

aggiungiamo la regola di drop per la porta wan

pfSense drop

Il download viene fatto una volta al giorno ma se vogliamo che venga eseguito più spesso possiamo agire sul cron. Per fare tutto da interfaccia basta installare il pacchetto cron per pfSense e aggiungere un nuovo job.

pfSense cron nel mio caso viene eseguito ogni 4 ore.

Considerazioni

Tralasciando la parte puramente tecnica, possiamo dire che il percorso per diventare un utente sempre più consapevole passa anche dalla scelta degli apparati che decidiamo di posizionare all’interno della nostra rete e di certo il router/firewall è uno degli elementi più delicati.

E’ stata fatta tanta strada in tal senso: fino a qualche anno fa non era possibile utilizzare un router diverso da quello fornito, mentre ora il provider deve fornirti le informazioni e le configurazioni per permetterti di utilizzare l’hardware che ritieni più opportuno. Utilizzare software libero è sempre un’ottima scelta e pfSense ha raggiunto una maturità e una semplicità di utilizzo/configurazione davvero importante.


Le opinioni in quanto tali sono opinabili e nulla ti vieta di approfondire l’argomento.

Risorse: