La risorsa Italiana per pfSense

7 novembre 2012

Come utilizzare IP pubblici aggiuntivi

Nonostante gli indirizzi IPv4 sono divenuti una risorsa preziosa, spesso capita che insieme alla connettività business gli operatori forniscano un pool di indirizzi IP pubblici statici. Per molti questi possono essere molto utili per offrire tutta una serie di servizi a valore aggiunto. pfSense offre diverse modalità per poter sfruttare più IP pubblici. In quest'articolo vedremo come configurare pfSense per poter sfruttare in modo semplice ed intuitivo più IP pubblici.

La subnet

Tipicamente i service provider offrono un pool di 8 IP pubblici il che significa che assegnano una classe /29 (Subnet Mask 255.255.255.248) . Per il nostro esempio utilizzeremo la classe 10.0.0.64/29 che non è una classe pubblica ma per non utilizzare nell'esempio IP assegnati ad altri può andare bene. 
La nostra classe è costituita dai seguenti IP:
10.0.0.64 Subnet ID
10.0.0.65 - 10.0.0.70 Indrizzi IP utilizzabili
10.0.0.71 Indirizzo di broadcast
La prima cosa importante da notare è che gli IP utilizzabili sono sempre n - 2 poichè l'indirizzo IP con valore più basso identifica la rete mentre quello con IP con valore più alto identifica l'indirizzo di broadcast e non sono disponibili per essere assegnati a degli host.

Tornando al nostro esempio supporremo che l'indirizzo IP 10.0.0.65 sia stato assegnato al router e 10.0.0.66 all'interfaccia WAN di pfSense.
Nel nostro esempio supporremo di voler impiegare l'indirizzo 10.0.0.67 per pubblicare un sito web ed il 10.0.0.68 per pubblicare un server di posta.

L'interfaccia WAN

Accediamo alla schermata Interfaces > WAN ed inseriamo le seguenti informazioni:
IP address: 10.0.0.66/29
Gateway: clicchiamo su add e creiamo il gateway con IP 10.0.0.65
Block private networks: ON

Gli IP virtuali

Ora accediamo al menù Firewall > Virtual IPs ed aggiungiamo un nuovo IP virtuale con le seguenti caratteristiche:
Type: IP Alias
Interface: WAN
IP Address(es): 10.0.0.67/29
Description: VIP WEB
Clicchiamo su Save.

Ora creiamo il secondo IP pubblico che assegneremo al server di posta.
Type: IP Alias
Interface: WAN
IP Address(es): 10.0.0.68/29
Description: VIP MAIL
Clicchiamo su Save e poi su Apply Changes. 

Aquesto punto il nostro pfSense ha tre indirizzi IP assegnati all'interfaccia WAN: 10.0.0.66, 10.0.0.67 e 10.0.0.68. Come nel caso di un singolo IP pubblico, dobbiamo configurare il port forwarding per far si che il traffico diretto ad un IP + porta venga rigirato all'host interno su cui è attivo il servizio.

Il NAT 1:1

Per pubblicare una porta  normalmente siamo abituati ad utilizzare il portforwarding, in questo caso impiegheremo il NAT 1:1 che permette di mappare un IP pubblico con un IP privato.
Tutto il traffico in entrata sull' IP pubblico verrà translato sull'IP privato e poi valutato dalle regole di firewall impostate sull'interfaccia WAN. Il traffico in uscita viene rimappato con l'IP pubblico sovrascrivendo le regole di NAT Outbound.


Accediamo a Firewall > NAT > 1:1 e configuriamo il NAT 1:1 per il web server
Interface: WAN
External subnet IP: 10.0.0.67
Internal IP: 192.168.1.100
Description: NAT to WEB SERVER
Clicchiamo su Save

Ripetiamo la stessa operazione per l'IP 10.0.0.68

Accediamo a Firewall > NAT > 1:1 e configuriamo il NAT 1:1 per il web server
Interface: WAN
External subnet IP: 10.0.0.68
Internal IP: 192.168.1.101
Description: NAT to MAIL SERVER
Clicchiamo su Save


Le Roules

Ora creiamo le regole di firewall per dare l'accesso ai servizzi da internet.
Clicchiamo su Firewall > Rules
Selezioniamo l'interfaccia WAN
Aggiungiamo una nuova regola
Action: Pass
Interface: WAN
Protocol: TCP
Source: Any
Destination: 192.168.1.100
Destination port range: HTTP
Description: Accesso al server WEB 
Clicchiamo su Save

Aggiungiamo una nuova regola
Action: Pass
Interface: WAN
Protocol: TCP
Source: Any
Destination: 192.168.1.101
Destination port range: SMTP
Description: Accesso al server MAIL
Clicchiamo su Save e poi su Apply Changes. 
Ora il nostro sistema è in grado di gestire più IP pubblici.

4 commenti:

Vassilis IT ha detto...

Ciao ti ringrazio per il tuo articolo,
è molto chiaro ma volevo farti una domanda per poter completare la conoscenza sull'argomento.
Quello che non mi è chiaro è che, in questa guida, parti dal presupposto che dando all'interfaccia wan l'indirizzo 10.0.0.66/29 il tuo box possa navigare su internet.

Ma in tutte le reti che ho incominciato a gestire(Ancona), ho le credenziali pppoe che setto come interfaccia wan, a quel punto la WAN ,se l'autenticazione va a buon fine, acquisisce automaticamente l'ip statico dell'interfaccia pppoe.

Se il provider mi rilascia altri 8 ip, io posso usarli tranquillamente mappando 1:1 come hai consigliato tu senza dichiararli nei virtual IP o in altri posti a parte nel nat1;1, inoltre posso usare indistintamente tutti gli 8 ip.

Mi viene da pensare che il tuo schema parta da una condizione diversa, in cui il provider installa un suo dispositivo a monte subito dopo il mezzo di comunicazione(doppino telefonico, connettore fibra sc etc) il quale è gia autenticato e "abilita" questi 8 ip sul cavo di rete in uscita da questo dispositivo. A questo punto tu usi questa procedura per diciamo "distribuire" la classe sulla tua interfaccia senza usarli veramente per poterli poi mappare col nat1:1 ecco perchè ti serve il primo e l'ultimo ip della lista rilasciata dal ISP.

Puoi darmi una delucidazione a riguardo e in che situazioni si verfica questa necessità? noi qui abbiamo la fibra di open fiber e mi collego direttamente al cavo di rete in uscita da una interfaccia che mette semplicemente in bridge lo spinotto sc con una porta rj45.

grazie mille davvero spero potrai togliermi un po di confusione.

Fabio Viganò ha detto...

Ciao,
parto dal presupposto che la connettività venga consegnata tramite router del provider. In questi casi l'interfaccia del router verso internet ha un IP pubblico mentre quella verso il firewall ha un asottorete pubblica o privata a seconda del contratto. Io ho considerato il caso della subnet pubblica (anche se nell'ip ho usato un indirizzamento privato).
Nat 1:1 e port forward sono due modi distinti di sfruttare gli indirizzi IP aggiuntivi. Con il nat 1:1 assegni un IP pubblico ad un host interno con un IP privato, quindi da quel momento in poi quel host ha un suo IP pubblico. In molti casi questa configurazione è inutile/controproducente e quindi si sfrutta il port forwarding creando regole in base ai servizi da pubblicare.
Ciao Fabio

Franco ha detto...

Buongiorno,

in questa configurazione cosa bisognerebbe cambiare nel caso non ci fosse il router dell'ISP ma collegamento diretto ONT a pfsense?


Franco

Anonimo ha detto...

Buongiorno, ho effettuato una configurazione con i Virtual IP di una stessa subnet /28, utilizzando però il port forwarding, funziona tutto correttamente, rimane solo il problema che Pfsense non effettua il routing automatico tra questi virtual IP, ovvero, mi spiego meglio, ad esempio su il primo IP c'è pubblicato un server di posta, sul secondo IP un altro server di posta, questi due server non riescono a spedire mail tra di loro. grazie

Nome

Email *

Messaggio *