IPSec-tunnel mellom Strongswan bak NAT og VMWare NSX Edge

Av flere grunner var det nødvendig å organisere en VPN-forbindelse mellom nettverket i VMWare Cloud Director og en egen Ubuntu-maskin i skyen. Notatet later ikke til å være en fullstendig beskrivelse, det er bare en liten howto.

IPSec-tunnel mellom Strongswan bak NAT og VMWare NSX Edge

Den eneste artikkelen om dette emnet fra 2015 ble funnet på Internett "Site to Site IPSEC VPN mellom NSX Edge og Linux strongSwan'.

Dessverre var det ikke mulig å bruke det direkte, fordi... Jeg ønsket mer pålitelig kryptering, ikke et selvsignert sertifikat, og den beskrevne konfigurasjonen ville ikke ha fungert bak NAT.

Derfor måtte jeg sette meg ned og fordype meg i dokumentasjonen.

Som grunnlag tok jeg en konfigurasjon som jeg hadde brukt i lang tid, som lar meg koble til fra nesten hvilket som helst operativsystem, og la ganske enkelt til en del som lar meg koble til NSX Edge.

Siden installasjon og fullstendig konfigurering av Strongswan-serveren er utenfor omfanget av dette notatet, la meg henvise til godt stoff om dette emnet.

Så la oss gå direkte til innstillingene.

Vårt koblingsskjema vil se slik ut:

IPSec-tunnel mellom Strongswan bak NAT og VMWare NSX Edge

со стороны VMWare внешний адрес 33.33.33.33 и внутренняя сеть 192.168.1.0/24
со стороны Linux внешний адрес 22.22.22.22 и внутренняя сеть 10.10.10.0/24
также понадобится настроить Let's encrypt сертификат для адреса vpn.linux.ext
PSK с обеих сторон: ChangeMeNow!

Konfigurasjon fra NSX Edge:

Tekst

Enabled: yes
Enable perfect forward secrecy (PFS): yes
Name: VPN_strongswan (любое, по вашему выбору)
Local Id: 33.33.33.33
Local Endpoint: 33.33.33.33
Local Subnets: 192.168.1.0/24
Peer Id: vpn.linux.ext
Peer Endpoint: 22.22.22.22
Peer Subnets: 10.10.10.0/24
Encryption Algorithm: AES256
Authentication: PSK
Pre-Shared Key: ChangeMeNow!
Diffie-Hellman Group: 14 (2048 bit — приемлемый компромисс между скоростью и безопасностью. Но если хотите, можете поставить больше)
Digest Algorithm: SHA256
IKE Option: IKEv2
IKE Responder Only: no
Session Type: Policy Based Session

Skjermbilder
IPSec-tunnel mellom Strongswan bak NAT og VMWare NSX Edge
IPSec-tunnel mellom Strongswan bak NAT og VMWare NSX Edge

Oppsett fra Strongswan:

ipsec.conf

# /etc/ipsec.conf
config setup

conn %default
	dpdaction=clear
	dpddelay=35s
	dpdtimeout=300s

	fragmentation=yes
	rekey=no

	ike=aes256gcm16-aes256gcm12-aes128gcm16-aes128gcm12-sha256-sha1-modp2048-modp4096-modp1024,aes256-aes128-sha256-sha1-modp2048-modp4096-modp1024,3des-sha1-modp1024!
	esp=aes128gcm12-aes128gcm16-aes256gcm12-aes256gcm16-modp2048-modp4096-modp1024,aes128-aes256-sha1-sha256-modp2048-modp4096-modp1024,aes128-sha1-modp2048,aes128-sha1-modp1024,3des-sha1-modp1024,aes128-aes256-sha1-sha256,aes128-sha1,3des-sha1!

	left=%any
	leftsubnet=10.10.10.0/24
        leftcert=certificate.pem
	leftfirewall=yes
	leftsendcert=always

	right=%any
	rightsourceip=192.168.1.0/24
	rightdns=77.88.8.8,8.8.4.4

	eap_identity=%identity

# IKEv2
conn IPSec-IKEv2
	keyexchange=ikev2
	auto=add

# BlackBerry, Windows, Android
conn IPSec-IKEv2-EAP
	also="IPSec-IKEv2"
	rightauth=eap-mschapv2

# macOS, iOS
conn IKEv2-MSCHAPv2-Apple
	also="IPSec-IKEv2"
	rightauth=eap-mschapv2
	leftid=vpn.linux.ext

# Android IPsec Hybrid RSA
conn IKEv1-Xauth
	keyexchange=ikev1
	rightauth=xauth
	auto=add

# VMWare IPSec VPN
conn linux-nsx-psk
	authby=secret
	auto=start
	leftid=vpn.linux.ext
	left=10.10.10.10
	leftsubnet=10.10.10.0/24
	rightid=33.33.33.33
	right=33.33.33.33
	rightsubnet=192.168.1.0/24
	ikelifetime=28800
	keyexchange=ikev2
	lifebytes=0
	lifepackets=0
	lifetime=1h

ipsec.secret

# /etc/ipsec.secrets
: RSA privkey.pem

# Create VPN users accounts
# ВНИМАНИЕ! После логина сначала пробел, потом двоеточие.

user1 : EAP "stongPass1"
user2 : EAP "stongPass2"
%any 33.33.33.33 : PSK "ChangeMeNow!"

etter det, bare les konfigurasjonen på nytt, start tilkoblingen og kontroller at den er etablert:

ipsec update
ipsec rereadsecrets
ipsec up linux-nsx-psk
ipsec status

Jeg håper dette lille notatet er nyttig og sparer noen for et par timer.

Kilde: www.habr.com

Legg til en kommentar