Link Search Menu Expand Document

PfSense IPSEC

Configurazione di un IPSEC

Scenario:

Ipotizziamo di avere un firewall di cui possediamo il controllo (FW1) e un firewall esterno (FW2) a cui ci dobbiamo connettere via IPSEC. Questo scenario può avvenire quando un cliente, facente parte di un gruppo di aziende, deve connettersi alla “casa madre” in modo sicuro. Per fare questo normalmente il gruppo si appoggià ad aziende specializzate per la connettività sicura la quale fornisce tutti i parametri per effettuare la connessione. Alcuni scelgono IPSEC altri OpenVPN , oppure altre soluzioni di VPN proprietarie. Nel nostro caso IPSEC.

fw1 (fig.1)

Parametri IPSEC forniti dal provider

I parametri IPSEC di dividono in phase1 e phase2:

  • PHASE1:
    • IKE Negotiation Mode : main
    • Authentication Method: PSK (Pre-shared Key)
    • Encryption: AES-256
    • Hash: SHA-256
    • Diffie-Hellman: Group 14
    • SA Lifetime: 28800 secondi
    • IKE version: 2
    • PreSharedKey Value: “Questa è un segreto”
  • PHASE2:
    • Security Protocol: IPSEC
    • Encapsulation (ESP/AH): ESP
    • ESP Encryption: AES-256
    • Authentication SHA-256
    • SA Lifetime: 28800 secondi
    • Forward Secrecy: Group 14
  • IP Firewall Pubblici:
    • Erogatore del servizio IPSEC (il provider): 10.1.1.1
    • Sito remoto IPSEC (client) : 20.2.2.2
  • Networks che devono essere visibili nel tunnel:
    • lato provider:
      • 192.168.100.0/24
      • 192.168.200.0/24
    • lato client:
      • 192.168.50.0/24
      • 192.168.60.0/24

Configurazione firewall lato CLIENT

  1. Login nella dashboard
  2. Menu VPN
  3. Tab “Tunnels” e premere “Add P1” (phase 1)
    1. Inseririsci i parametri della sezione “IKE Endpoint Configuration”:
      1. versione = IKEv1 (maggiore compatibilità anche con altri brand) oppure mettere AUTO
      2. Protocol = IPv4
      3. Interface = WAN (di solito WAN o se avete configurato una interfaccia dedicata per IPSEC)
      4. Remote Gateway = 10.1.1.1 (IP fornito dal provider del servizio IPSEC)
    2. Inserisci i parametri Phase 1(Authentication):
      1. Authentication method = Mutual PSK (passphrase condivisa)
      2. Negotiation mode: Main
      3. My identifier: My Ip address
      4. Peer identifier: Peer IP address
      5. Pre-shared Key: [password generata dal provider del servizio, oppure scelta di comune accordo]
    3. Phase 1 Proposal (Algoritmo):
      1. Encryption Algorithm:
        1. Algorithm: AES
        2. Key lenght: 256
        3. Hash: SHA256
        4. DH Group: 14
    4. Expriration and Replacement:
      1. Life Time: 28800
      2. il resto dei parametri lasciare il default
    5. Advance Options:
      1. Dead Peer Detection: Enable
      2. Il resto dei parametri lasciare il default
  4. Adesso per ogni rete che deve attraversa il tunnel bisogna creare la phase 2
    1. Premere “Add P2” in corrispondenza della phase 1
      1. Mode = Tunnel IPv4
      2. Local Network = Network con valore 192.168.50.0/24
      3. NAT/BINAT = none
      4. Remote Network = Network con valore 192.168.100.0/24
      5. Phase 2 Proposal:
        1. Protocol = ESP
        2. Encryption Algo = AES valore 256 bits
        3. Hash Algo = SHA256
        4. PFS Key group = 14
      6. Expiration and Replacement
        1. Life Time = 28800
  5. Si inseriscono tante phase 2 quante sono le reti che devono passare nel tunnel, nel nostro caso:
    1. phase 2:
      1. local network = 192.168.60.0/24
      2. remote network = 192.168.100.0/24
    2. phase 2:
      1. local network = 192.168.50.0/24
      2. remote network = 192.168.200.0/24
    3. phase 2:
      1. local network = 192.168.60.0/24
      2. remote network = 192.168.200.0/24

AVVIO SERVIZIO IPSEC

Per avviare il servizio di IPSEC:

  1. Entrare dal menu principale in STATUS:
  2. Nel tab Overview si vedranno i servizi IPSEC che possono essere avviati
  3. Sulla destra ci saranno due pulsanti verdi che permettono:
    1. Connect P1 and P2 : avvia prima la phase 1 e poi le phase 2
    2. Connect P1: avvia solo la phase 1
  4. I log si possono vedere nel solito menu dei log:
    1. Menu principale -> Status -> System logs -> IPSEC

NOTE

Alcune volte, anche se la connessione può sembrare stabile, appena si genera traffico questo potrebbe avere delle interruzioni random. A questo proposito sarebbe meglio regolare MSS (Maximum Segment Size ) del traffico TCP soprattutto con il SYN bit impostato.

In caso ci sia necessità di modificare MSS :

  1. System -> Advanced -> Firewall&NAT
  2. abilitare :
    1. Enable MSS clamping on VPN traffic
    2. Maximum MSS = 1350 (oppure scegliere un valore in accordo con il provider del IPSEC)

Copyright © 2023 RICSystem - partner DIAGO SRL -