En aquest article us ensenyarem com configurar una VPN de lloc a lloc «Site-to-site» amb un certificat SSL per a l'autenticació amb el pfSense. Aquesta connexió ens permetrà enllaçar 2 ubicacions i fer que els dispositius de totes dues es puguin veure entre si. Si teniu problemes per accedir al pfSense via web, us recomanem que consulteu aquest article sobre regles de tallafoc al pfSense.
Habitualment, totes dues ubicacions s'autentiquen amb una preSharedKey que comparteixen els dos extrems per poder connectar-se. En aquesta ocasió, substituirem la preSharedKey per certificats SSL, de manera que la nostra VPN serà encara més segura.
És important que les LAN (xarxes privades) de les ubicacions utilitzin intervals d'adreces diferents. A continuació teniu un esquema d'exemple; utilitzarem aquestes dades al llarg de l'article.
En aquest article, totes dues ubicacions utilitzaran el pfSense.
- Fase 1
- Xifratge: AES 128 bits
- Algorisme: SHA256
- Diffie Hellman Group: 14
- Certificat SSL
- Lifetime: 28800
- Fase 2
- Xifratge: AES 128 bits
- Algorisme: SHA256
- PFS: Desactivat
- Lifetime: 3600
Configurar la LAN
La nostra imatge del pfSense inclou la LAN sense configurar. El primer que farem serà accedir al pfSense i, al menú superior, anar a Interfaces > Assignments i fer clic al botó «+ Add» de vtnet1. Ara anirem a Interfaces > LAN i marcarem la casella «Enable interface». A l'opció «IPv4 Configuration Type» triarem Static IPv4 i anirem a l'apartat següent, «Static IPv4 Configuration», on introduirem l'adreça IP 10.20.10.1 a la ubicació 1 i 10.20.11.1 a la ubicació 2.
Exemple de la ubicació 1:
Generar els certificats SSL
Abans de configurar l'IPsec, hem de generar els certificats SSL al pfSense. Per fer-ho, al pfSense de la ubicació 1, anirem al menú superior i seleccionarem System > Cert. manager > CAs. Primer haurem de crear una autoritat de certificació fent clic a Add. Emplenarem les dades tal com es mostra a continuació:
Ara hem de crear un certificat SSL per al pfSense de la ubicació 1. Per fer-ho, al pfSense de la ubicació 1, anirem al menú superior i seleccionarem System > Cert. manager > Certificates i farem clic a Add/sign. Emplenarem les dades del certificat tal com es mostra a continuació, tenint en compte que ha de ser del tipus "Server Certificate" i que cal indicar l'adreça IP pública del pfSense de la ubicació 1.
Tornarem a System > Cert. manager > Certificates i farem clic de nou a Add/sign per crear el certificat SSL del pfSense de la ubicació 2. En aquest cas, haurem d'indicar "User Certificate" i l'adreça IP pública del pfSense de la ubicació 2.
Ara ja tenim els certificats SSL preparats per poder fer les configuracions.
Exportar i importar la CA i el certificat SSL per al pfSense de la ubicació 2
Al pfSense de la ubicació 1, anirem al menú superior i seleccionarem System > Cert. manager > CAs. Per exportar l'autoritat de certificació, haurem de fer clic a les dues icones centrals d'"Actions" per descarregar la CA i la clau privada que haurem d'importar al pfSense de la ubicació 2.
El pas següent és exportar el certificat SSL generat per al pfSense de la ubicació 2. Al menú superior, anirem a System > Cert. manager > Certificates i exportarem el certificat fent clic a les dues primeres icones del certificat de la ubicació 2.
Els dos últims passos abans de configurar l'IPsec són importar la CA i el certificat generats a la ubicació 1 al pfSense de la ubicació 2. Per fer-ho, iniciarem la sessió al pfSense de la ubicació 2 i anirem a System > Cert. manager > CAs i farem clic a ADD. És important seleccionar l'opció "Import an existing certificate authority". Emplenarem Certificate data i Certificate Private Key amb les dades dels fitxers de la CA descarregats del pfSense de la ubicació 1 i farem clic a Save.
Anirem a System > Cert. manager > Certificates i farem clic a Add/Sign. És important seleccionar l'opció "Import an existing certificate authority". Emplenarem Certificate data i Certificate Private Key amb les dades dels fitxers del certificat descarregats del pfSense de la ubicació 1 i farem clic a Save.
Ara ja tenim tot l'apartat de certificats SSL preparat tant al pfSense de la ubicació 1 com al pfSense de la ubicació 2.
A les captures següents podeu veure com ha de quedar el pfSense de la ubicació 1:
A les captures següents podeu veure com ha de quedar el pfSense de la ubicació 2:
Configurar l'IPsec
Ara configurarem el túnel IPsec al pfSense de la ubicació 1. Per fer-ho, al menú superior anirem a VPN> IPsec i farem clic al botó verd «+ Add P1». Al formulari, emplenarem «Remote Gateway» amb l'adreça IP pública de la ubicació 2, en el nostre cas 161.22.46.187. Si volem, podem afegir-hi una descripció. Tot seguit, seleccionarem "Mutual RSA" per autenticar-nos amb un certificat SSL i configurarem la resta tal com es mostra a les imatges següents. Finalment, farem clic a Save.
Repetirem el mateix pas al pfSense de la ubicació 2, però a "Remote Gateway" ara haurem d'indicar l'adreça IP pública del pfSense de la ubicació 1 i els certificats corresponents, tal com es mostra a les imatges següents. Finalment, farem clic a Save.
Ara que ja tenim la fase 1 configurada, configurarem la fase 2 a totes dues ubicacions. Per fer-ho, farem clic al botó verd «Add P2». Aquí emplenarem «Remote Network» amb la LAN de la ubicació 2 en el cas del pfSense de la ubicació 1, i amb la LAN de la ubicació 1 en el cas del pfSense de la ubicació 2, en el nostre exemple 10.20.11.0/24, i configurarem el xifratge. Un cop desada la configuració, aplicarem els canvis.
Aquí teniu una captura de la configuració de la fase 2 a la ubicació 1:
Aquí teniu una captura de la configuració de la fase 2 a la ubicació 2:
Configurar les regles de tallafoc i NAT
Ara configurarem el tallafoc del pfSense perquè permeti tot el trànsit del túnel IPsec. Per fer-ho, anirem a Firewall > Rules > IPsec i, un cop dins, farem clic al botó verd «↑ Add». A continuació teniu una captura de la configuració. Un cop desada, aplicarem els canvis:
Configurar les regles del tallafoc de Clouding
Perquè la nostra VPN funcioni, crearem un perfil de tallafoc amb les regles següents:
Connectar la VPN
Per connectar la VPN, anirem al menú superior VPN > IPsec i farem clic a "related status".
En aquesta finestra nova, farem clic a "Connect VPN".
Finalment, veurem l'estat de la VPN:
Ho heu provat? Deixeu-nos els vostres comentaris! 🙂