Come configurare pfSense Internet, VLAN, DHCP, DNS e NAT

pfSense è un file firewall-sistema operativo orientato che funge anche da router professionale, poiché avremo centinaia di opzioni di configurazione avanzate e persino la possibilità di installare software aggiuntivo per espandere ulteriormente le sue funzionalità. Se hai mai voluto provare pfSense, ma non sai da dove iniziare, oggi in questo articolo ti mostreremo come configurare la connessione Internet, come creare VLAN per segmentare il traffico, configurare il server DHCP con il suo DHCP statico corrispondente e configurare anche il file DNS server, UPnP e anche per aprire le porte in NAT (Port forwarding).

Configura pfSense Internet

La prima cosa che dobbiamo fare è inserire pfSense con il gateway predefinito. Per impostazione predefinita, abbiamo due interfacce con la seguente configurazione:

  • WAN: configurato come client DHCP senza VLAN o qualsiasi configurazione aggiuntiva. L'accesso all'amministrazione non è consentito per impostazione predefinita.
  • LAN: configurata con 192.168.1.1/24 e con DHCP abilitato. L'accesso all'amministrazione è consentito per impostazione predefinita.

Pertanto, per accedere all'amministrazione del firewall e del router, dobbiamo mettere https://192.168.1.1 nella barra degli indirizzi, il nome utente è "admin" e la password è "pfsense", quindi accederemo direttamente al menu di configurazione tramite il web , dove possiamo vedere quanto segue:

Configura la connessione a Internet

pfSense è progettato per connettersi direttamente a Internet e avere l'indirizzo IP pubblico fornito dall'operatore, è molto importante avere un IP pubblico e non essere dietro CGNAT, altrimenti non potremo fare il port forwarding o accedere da remoto a pfSense stesso. In Spagna, è molto comune per gli operatori FTTH utilizzare ID VLAN diversi per fornire la loro connessione a Internet. In alcune occasioni, come Movistar / O2, possiamo mettere il router in posizione utente singolo e configurare solo il PPPoE, ma in altre occasioni, come Grupo Masmovil, dobbiamo configurare un ID VLAN nella WAN Internet per funzionare, altrimenti , non avremo una connessione a Internet.

Se il tuo operatore deve utilizzare un ID VLAN, in pfSense dobbiamo seguire i passaggi descritti di seguito, se non hai bisogno di VLAN, puoi saltare questo passaggio:

  1. Vai a " Interfacce / assegnazioni di interfacce «, Nella scheda« VLAN »è dove dovremo crearle.
  2. Interfaccia genitore : assicurati di scegliere la porta assegnata alla rete WAN Internet, non la LAN.
  3. Tag VLAN : Crea l'ID VLAN che corrisponde alla connessione Internet, in Movistar / O2 è 6, in Indirect Masmovil Group è l'ID VLAN 20, questo dipende da ciascun operatore.
  4. Priorità VLAN : possiamo lasciarlo vuoto.
  5. Descrizione : mettiamo un nome descrittivo, ad esempio "Internet".

Una volta creata la VLAN, dobbiamo applicarla su Internet WAN. Torniamo al Interfacce / assegnazioni di interfacce e nella sezione WAN selezioniamo “VLAN 20 on em0”, ovvero la VLAN che abbiamo appena creato. Al termine, fare clic su "Salva" per salvare le modifiche.

Ora dovremo andare a " Interfacce / WAN "Ed eseguire la configurazione fornita dall'operatore, ad esempio, Grupo Masmovil utilizza DHCP, ma Movistar / O2 utilizza PPPoE. A seconda dell'operatore avremo un tipo di connessione o un altro, un nome utente / password o un altro, ma tutte le opzioni per la WAN sono in questa sezione. Si consiglia vivamente di selezionare le due caselle in basso, sia "Blocca reti private e indirizzi di loopback" e "Blocca reti bogon", per inserire regole nel firewall che bloccano queste reti sulla WAN Internet.

A questo punto dovremmo già avere una connessione Internet senza problemi, ottenendo l'IP pubblico dell'operatore ei server DNS che ci forniscono a livello di rete.

Crea VLAN per segmentare il traffico

Le VLAN (Virtual LAN) ci consentono di separare il traffico di diverse reti per aumentare la sicurezza della rete, possiamo creare diverse VLAN per separare le reti e avere diversi livelli di autorizzazioni e accessi in ogni rete locale creata. Una tipica architettura di rete consiste nell'avere tutte le VLAN create nel pfSense, e collegare un cavo da una porta fisica della LAN a una porta di uno switch gestibile in modalità trunk, in questo modo, passeremo loro tutte le VLAN (con etichetta) creato nel passaggio a pfSense per eseguire il routing inter-vlan e anche per avere la possibilità di configurare regole diverse.

La prima cosa che dobbiamo fare per creare VLAN sulla LAN è andare al " Interfacce / assegnazioni di interfacce " sezione.

Una volta qui, facciamo clic sulla sezione VLAN per crearle correttamente, per impostazione predefinita non abbiamo creato alcuna VLAN, come puoi vedere di seguito:

Per creare una nuova VLAN, fare clic su «Aggiungi», quindi eseguire i seguenti passaggi:

  1. Interfaccia genitore : assicurati di scegliere la porta assegnata alla LAN (non alla WAN Internet).
  2. Tag VLAN : Creare l'ID VLAN che corrisponde a quello dello switch.
  3. Priorità VLAN : possiamo lasciarlo vuoto.
  4. Descrizione : mettiamo un nome descrittivo, ad esempio, «Gestione».

Possiamo creare tutte le VLAN che vogliamo, sempre "sospese" sull'interfaccia LAN fisica. Ad esempio, abbiamo creato due VLAN aggiuntive, una VLAN per i team e una per gli ospiti. La procedura è esattamente la stessa:

Una volta creato, torneremo a « Interfacce / assegnazioni di interfacce «, Qui possiamo vedere un riepilogo delle interfacce fisiche e della porta di rete. Per impostazione predefinita, avremo Internet WAN (con o senza VLAN) e anche la LAN. Per aggiungere queste nuove interfacce alla LAN, selezioniamo semplicemente l'interfaccia «VLAN 2 su em1…» e clicchiamo su «Aggiungi», e lo stesso con le altre, come puoi vedere nelle seguenti schermate:

Una volta che li abbiamo creati, appariranno tutti nel menu a discesa "Interfacce", con il nome predefinito "OPT1", "OPT2" e così via. Per impostazione predefinita, abbiamo l'interfaccia LAN attivata, con il suo indirizzo IPv4 privato corrispondente, in base a questa configurazione, possiamo fare il resto:

La configurazione del resto delle interfacce è esattamente la stessa, dovremo abilitarla, inserire un nome descrittivo, inserire la corrispondente configurazione IPv4 e / o IPv6, salvare le modifiche e applicarle.

Una volta configurato, possiamo vedere che ora il nome è stato cambiato, dovremo fare lo stesso con gli altri. Quando avremo finito, nella sezione “Assegnazioni interfaccia” potremo vedere il nome che abbiamo dato a ciascuno di loro.

Ora, quando colleghiamo diversi dispositivi allo switch in una specifica VLAN di accesso, possiamo accedere a questa sottorete locale, ma dobbiamo ricordare che il server DHCP non è ancora attivato in queste VLAN di nuova creazione, è esattamente la prossima cosa che stiamo andando configurare.

Interfacce LAN Server DHCP

Normalmente ciascuna delle VLAN avrà un server DHCP configurato. Per fare ciò, andiamo alla sezione "Servizi / Server DHCP". Subito sotto avremo alcune schede di LAN, gestione, team e ospiti, le stesse reti che abbiamo creato in precedenza. Qui possiamo vedere la sottorete a cui appartiene ciascuna interfaccia e quale intervallo DHCP possiamo fornire al massimo.

Per configurare il server DHCP, quello che possiamo fare è mettere la stessa configurazione della LAN, cambiando solo la sottorete. In questo modo, ci assicureremo che tutto funzioni bene. In questi menu possiamo anche aggiungere diversi "pool" e persino definire alcuni server WINS e DNS, avremo anche opzioni di configurazione avanzate che abbiamo proprio in fondo.

Le opzioni di configurazione del resto delle reti che abbiamo appena creato sono esattamente le stesse della LAN, ciò che dobbiamo tenere in considerazione è mettere un intervallo all'interno della stessa sottorete e che abbiano abbastanza host per far funzionare la rete propriamente.

DHCP statico

Il DHCP statico è la funzionalità di un server DHCP che ci consente di fornire lo stesso IP privato alla stessa scheda di rete. Mettendo l'indirizzo MAC della scheda di rete e l'IP privato che vogliamo che abbia, il server DHCP fornirà sempre lo stesso. In questa sezione, l'unica cosa che dovremo compilare è la seguente:

  1. Indirizzo MAC
  2. Indirizzo IP
  3. Nome host: per dargli un nome e accedervi tramite dominio.
  4. Descrizione: un nome descrittivo
  5. Fare clic su «Crea una tabella ARP statica» per collegare l'IP e il MAC.

Successivamente, abbiamo la possibilità di definire i server WINS e DNS, nonché altri parametri. Se lasciamo tutto vuoto, erediterà automaticamente la configurazione dal pool principale, quindi non dobbiamo preoccuparci.

Successivamente, puoi vedere come farlo con il nostro MAC di un PC e l'IP che vogliamo, sarebbe necessario mettere il nome host e una descrizione.

Configurare i server DNS e il Resolver DNS

Per configurare i server DNS, dobbiamo andare su « Configurazione del sistema / generale «, Qui dobbiamo incorporare i server DNS che vogliamo, uno per uno, di default c'è un server DNS ma possiamo aggiungerne uno secondario. Inoltre, possiamo mettere il nome host del server DNS per la verifica TLS, purché desideriamo avere DNS su TLS nel nostro pfSense.

La cosa più importante si trova nella sezione "Service / DNS Resolver", qui lo abilitiamo e permettiamo ai client di inviarci query, sebbene sia normale che i client inviino query tramite la porta 53 sempre, senza SSL / TLS o no. avere un client installato. Il resto delle opzioni di configurazione servono a definire dove "ascoltare" le richieste dei clienti, nella sezione "Network NetPoulSafe interfacce ”scegliamo solo quelle che vogliamo, la LAN, il management, i team, gli ospiti e il“ localhost ”in modo che pfSense stesso possa chiedersi del DNS.

Dovremo anche definire l'interfaccia di uscita, in questo caso la WAN. Le altre opzioni servono per abilitare il supporto DNSSEC, abilitare il modulo python che è nuovo per pfSense e altre opzioni avanzate. La cosa normale è avere l'opzione di "Inoltro query DNS" disattivata, in modo che sia il server DNS di pfSense che risolve le query e successivamente utilizzi il DNS che abbiamo inserito.

Nella sezione "opzioni avanzate" abbiamo la possibilità di configurare DNS su TLS, possiamo farlo aggiungendo queste regole:

server:
forward-zone:
name: "."
forward-ssl-upstream: yes
forward-addr: 1.1.1.1@853
forward-addr: 8.8.8.8@853

Poi abbiamo altre opzioni nelle altre schede del risolutore DNS, in linea di principio non dovremmo toccarle, ma ci permetteranno di configurare opzioni molto avanzate relative al server DNS, e anche di creare liste di controllo degli accessi per utilizzare o meno il DNS risolutore.

Configura UPnP e NAT-PMP con sicurezza

UPnP è un protocollo che ci consente di aprire automaticamente le porte nel firewall e nel router pfSense, quando un client richiede tale apertura. Questo è un rischio per la sicurezza della rete, perché è possibile che una determinata applicazione apra una porta che non abbiamo richiesto. Per quanto riguarda la sicurezza, la cosa migliore da fare è disabilitare sempre il protocollo UPnP e NAT-PMP.

Nel caso in cui sia necessario attivarlo sì o sì, è consigliabile farlo solo negli indirizzi IP privati ​​necessari, e non nell'intera rete, in modo da proteggere il resto dei dispositivi collegati.

Porte aperte in NAT (port forwarding)

Quando siamo in un ambiente NAT, potrebbe essere necessario aprire le porte per accedere a determinati servizi dall'esterno. Se hai un server NAS con un FTP, VPN o server SSH, e vuoi accedere a tutti questi servizi dall'esterno, dovrai aprire diverse porte nel NAT per consentire l'avvio della connessione. Se apri le porte nel NAT, ma hai il CG-NAT del tuo operatore, non ti sarà di alcuna utilità.

Per aprire il NAT, la prima cosa che dobbiamo fare è andare nella sezione "Firewall / NAT", e nella scheda "Port forward" creare una nuova regola.

In questo menu avremo diverse opzioni di configurazione, ma sostanzialmente quello che dovremo compilare è il seguente:

  • Interfaccia : PALLIDO
  • Famiglia di indirizzi :IPv4
  • Protocollo : scegliamo il protocollo, nell'esempio è TCP
  • Fonte: vuoto
  • Nei Dintorni : Indirizzo WAN
  • Intervallo di porte di destinazione : Dobbiamo configurare un intervallo di porte o solo uno, se vogliamo un intervallo di porte, in «Da» mettiamo una porta, ad esempio la 60000, e in «A» mettiamo la porta finale, la 61000 Nell'esempio abbiamo aperto la porta 51400.
  • Reindirizza l'IP di destinazione : digita Host singolo, Indirizza l'indirizzo IP privato a cui vuoi aprire la porta
  • Reindirizza la porta di destinazione : deve essere la stessa porta di "Intervallo di porte di destinazione". Questa funzione ci permette di avere il 51400 aperto per la WAN, ma internamente possiamo “modificarlo” al volo e utilizzare il 51500, ad esempio.

Nelle schermate seguenti puoi vedere come farlo:

pfSense ci consente di utilizzare un gran numero di protocolli, TCP, UDP, entrambi, ICMP e molti altri. La cosa più normale è aprire le porte TCP o UDP, ma possiamo anche aprire molti più tipi di protocolli.

Una volta configurato, lo vedremo nella " Firewall/NAT/Port Forward Port ”, Dobbiamo anche assicurarci che il NAT sia fatto correttamente, in“ Outbound ”possiamo verificarlo. In questo momento "nuoteremo" in tutte le sottoreti create. Infine, dobbiamo verificarlo in « Firewall / Regole »E nella scheda WAN c'è la regola che abbiamo creato nel NAT, l'ordine di questa regola è molto importante, se, ad esempio, abbiamo un« nega tutto »sopra dopo le regole di autorizzazione, questa nuova regola verrà inserita in fondo, e dobbiamo riordinarlo.

Dobbiamo ricordare che le regole vengono analizzate in serie, dall'alto verso il basso, se mettiamo una regola molto generale in alto, e quelle più specifiche in basso, quest'ultima non sarà mai soddisfatta, perché in precedenza una regola più generale ha stato incontrato.

Configurare le regole sul firewall

Le regole che creiamo nel firewall pfSense sono la parte più importante per segmentare correttamente la rete e consentire o negare un determinato traffico di rete che scorre attraverso le diverse interfacce fisiche e logiche che abbiamo creato. Nel " Firewall / Regole "Possiamo vedere diverse schede per creare regole nelle diverse interfacce, abbiamo un totale di cinque interfacce in questo momento: WAN, LAN, Management, Teams, Guest.

Abbiamo una scheda aggiuntiva chiamata "Floating", queste sono regole speciali che influenzano una o più interfacce, e che sono poste sopra le regole che andremo a definire specificamente in ciascuna delle interfacce. Cioè, le regole che abbiamo in «Floating», se riguardano un'interfaccia, saranno verificate prima delle regole che andremo a definire specificamente nell'interfaccia. Queste regole "mobili" possono essere attivate nelle direzioni di input, output o entrambe, l'uso del filtraggio di input e output potrebbe essere più complesso, quindi dovresti esaminarle bene prima di applicarle. Per alcune applicazioni, le "regole mobili" sono molto utili, come per pfblocker-ng, sebbene normalmente queste regole "mobili" non verranno utilizzate.

Nella sezione “Firewall / Regole / WAN” possiamo vedere due regole predefinite, che si attivano bloccando le “reti private” e le “reti bogon”, come abbiamo spiegato in precedenza. La terza regola è l'apertura dei porti che abbiamo realizzato.

Nella LAN abbiamo anche regole predefinite, in pratica avremo una regola che ci impedisce di bloccarci per accedere all'interfaccia web di amministrazione di pfSense, se avessimo attivato il server SSH, qui verrebbe incorporata anche una regola per consentire l'accesso alla porta di SSH. Successivamente, abbiamo il permesso di accedere ovunque dalla LAN, sia con IPv4 che IPv6.

Dobbiamo ricordare che le regole sono verificate dall'alto verso il basso, se in alto mettiamo un “blocca tutto”, andremo automaticamente offline.

Il resto delle reti che abbiamo configurato con le corrispondenti VLAN sono completamente vuote. Se sei vuoto, significa che abbiamo un implicito nega tutto, ovvero dovremo incorporare una regola di autorizzazione per consentire il passaggio del traffico di rete.

L'interfaccia utente grafica per creare una regola è la stessa per tutte le interfacce, nella parte superiore possiamo configurare diversi aspetti di questa regola che andremo a creare da zero:

  • Action : se vogliamo consentire (passare) il traffico, bloccarlo o rifiutarlo (rifiutarlo). È la prima cosa che dobbiamo definire, se questa regola viene applicata e viene verificata, il firewall agirà di conseguenza.
  • disabile : consente di disabilitare una regola creata, questo non dovrebbe essere toccato se vogliamo che la regola funzioni.
  • Interfaccia : scegliamo l'interfaccia fisica o logica dove vogliamo applicare questa regola.
  • Famiglia di indirizzi : selezioniamo il protocollo IPv4, IPv6 o entrambi.
  • Protocollo : qui avremo un elenco di tutti i protocolli che possiamo consentire o bloccare, come TCP, UDP, TCP e UDP, ESP, OSPF e molti altri.

Nella seguente galleria puoi vedere tutte le opzioni per l'interfaccia, la famiglia di indirizzi e anche per il protocollo.

Una volta definito quanto sopra, ora dovremo selezionare la sorgente del traffico (Source). In questo caso possiamo scegliere qualsiasi origine (qualsiasi), oppure definire un'origine specifica per una specifica sottorete, un singolo host o un alias (spiegheremo di cosa si tratta in seguito). Possiamo anche scegliere come sorgente client PPPoE, client L2TP o direttamente una rete o un indirizzo IP dell'interfaccia creata.

Esattamente le stesse opzioni di configurazione che avremo nella sezione «Destinazione», possiamo sceglierne una qualsiasi, un singolo host, alias o le diverse reti che abbiamo a disposizione.

Se clicchiamo sulla sezione "Source" in "Display Advanced" possiamo vedere che abbiamo anche la possibilità di filtrare per origine della porta, fornendo una singola porta con un intervallo di porte.

Se nella sezione “Protocollo” scegliamo il protocollo TCP o un altro, e clicchiamo su “Opzioni extra / Opzioni avanzate / Visualizza avanzate” potremo vedere le opzioni avanzate di questo specifico protocollo, per filtrare tutto in dettaglio.

Una volta che avremo compilato tutto, dovremo cliccare su "Salva", e poi su "Applica modifiche" in pfSense, in quanto apparirà un pulsante verde.

Alias

Gli alias sono molto utili per denominare un insieme di indirizzi IP, sottoreti o porte. Questo è l'ideale in modo che, con una singola regola nel firewall, sia possibile bloccare automaticamente più indirizzi IP, senza dover creare 50 o più regole per bloccare tutti gli indirizzi IP.

Nella sezione «Firewall / Alias» possiamo vedere l'interfaccia utente grafica, avremo la possibilità di aggiungere IP (host o reti), e anche porte. Inoltre, nella sezione URL possiamo inserire l'indirizzo in un file di testo per scaricare automaticamente centinaia o migliaia di indirizzi IP, reti e porte su pfSense.

Immaginiamo di voler creare un alias chiamato "blocco Ip", con un elenco di indirizzi IP che successivamente vogliamo bloccare nel firewall. Entriamo nella sezione “IP”, clicchiamo su “aggiungi”, gli diamo un nome, una descrizione e anche un tipo. Quindi, appena sotto stiamo inserendo i diversi indirizzi IP uno per uno, inoltre, possiamo dargli una descrizione “Il computer di Pepe”, per sapere a quale computer corrisponde quell'IP. Una volta creato, apparirà nell'elenco degli alias IP:

Lo stesso accade con le porte, possiamo creare un alias per "bloccare le porte" e definire una o più porte che successivamente bloccheremo nel firewall.

L'interfaccia utente grafica dell'URL sarebbe la seguente e dobbiamo scegliere qualunque sia il tipo, IP o porte.

Una volta creati gli alias, basta andare nella sezione "Firewall", e possiamo caricarlo all'origine e / o destinazione, scegliamo l'opzione "Host singolo o alias", e appena a destra scriviamo il nome del alias che abbiamo creato, lo riconoscerà automaticamente e otterremo un elenco di alias che iniziano con la stessa lettera che abbiamo inserito. E lo stesso accade se configuriamo le porte, ma qui dovremo metterlo nella sezione delle porte di origine e / o di destinazione.

Come hai visto, usare pfSense come router e firewall in casa nostra è davvero facile e veloce, è un sistema operativo molto professionale e completo, ma con questa guida all'avvio siamo sicuri che potrai partire con una buona base su come configurarlo. .