====== IPsec VPN Strongswan su Debian 11 Bullseye ====== ===== Pacchetti da installare ===== * **strongswan** - Metapacchetto * **strongswan-starter** - Demone per il parsing dei file di configurazione e l'avvio di strongSwan. * **strongswan-charon** - Il demone **charon** supporta IPsec IKEv2, agisce da //initiator// o da //responder//. ==== Pacchetti da NON installare ==== Con questi pacchetti si otterrebbe una maggiore integrazione di charon con systemd, ma i file di configurazione vanno scritti con diversa sintassi, ecc. Se si installano i seguenti pacchetti si deve rimuovere il pacchetto ''strongswan'' e creare gli opportuni file di configurazione in ''/etc/swanctl/'': * **charon-systemd** - Pacchetto che contiene i file systemd per charon. * **strongswan-swanctl** - Contiene il tool **swanctl** per configurare il demone charon. ===== File di configurazione ===== * **/etc/ipsec.conf** - Generalmente le VPN sono aggiunte a questo file con clausole ''include''. * **/etc/ipsec.secrets** - Generalmente le preshared key sono aggiunte a questo file con clausole ''include''. * **%%/etc/ipsec.d/*.conf%%** - Generalmente ogni VPN ha un suo file di configurazione. * **%%/etc/ipsec.d/*.secret.inc%%** - È possibile includere la PSK di ogni VPN con un opportuno file, con mode 0600. Ecco un esempio di configurazione **/etc/ipsec.d/office1-office2.conf**: conn office1-office2 auto=start keyexchange=ikev2 authby=secret left=145.18.51.38 leftsubnet=192.168.30.0/24 right=15.125.28.13 rightsubnet=192.168.100.0/24 ike=aes256-sha256-modp2048 esp=aes256-sha256-modp2048 aggressive=no keyingtries=%forever ikelifetime=86400s lifetime=28800s dpddelay=30s dpdtimeout=120s dpdaction=restart #closeaction=restart La PSK viene inserita in **/etc/ipsec.d/office1-office2.secret.inc**: # ------- Site 1 Gateway (office1-office2) ------- 145.18.51.38 15.125.28.13 : PSK "fc4955b9827bf8ca188b360495938165" # ------- Site 2 Gateway (office1-office2) ------- 15.125.28.13 145.18.51.38 : PSK "fc4955b9827bf8ca188b360495938165" Il file di configurazione principale **/etc/ipsec.conf** deve contenere: include /etc/ipsec.d/office1-office2.conf Il file delle PSK **/etc/ipsec.secrets** deve contenere: include /etc/ipsec.d/office1-office2.secrets.inc ===== Servizi System ===== Il pacchetto ''strongswan-starter'' fornisce il servizio **strongswan-starter.service**, per abilitarlo e avviarlo: systemctl enable strongswan-starter.service systemctl start strongswan-starter.service :!: **ATTENZIONE** In **Debian 10** il servizio da avviare si chiamava **strongswan.service**. ===== Debug ===== ipsec statusall Dovrebbe produrre qualcosa del genere: ... Connections: office1-office2: 145.18.51.38...15.125.28.13 IKEv2, dpddelay=30s office1-office2: local: [145.18.51.38] uses pre-shared key authentication office1-office2: remote: [15.125.28.13] uses pre-shared key authentication office1-office2: child: 192.168.30.0/24 === 192.168.100.0/24 TUNNEL, dpdaction=restart Security Associations (1 up, 0 connecting): office1-office2[1]: ESTABLISHED 42 minutes ago, 145.18.51.38[145.18.51.38]...15.125.28.13[15.125.28.13] ... Questi i processi che devono risultare in esecuzione: ps uax | grep charon ... /usr/lib/ipsec/starter --daemon charon --nofork ... /usr/lib/ipsec/charon --debug-dmn 2 --debug-mgr 2 --debug-ike 2 --debug-chd 2