IPSec tunnel tusken Strongswan efter NAT en VMWare NSX Edge

Foar in oantal redenen wie it nedich om in VPN-ferbining te organisearjen tusken it netwurk yn VMWare Cloud Director en in aparte Ubuntu-masine yn 'e wolk. De notysje docht net as in folsleine beskriuwing, it is gewoan in lyts howto.

IPSec tunnel tusken Strongswan efter NAT en VMWare NSX Edge

It ienige artikel oer dit ûnderwerp út 2015 waard fûn op it ynternet "Site to Site IPSEC VPN tusken NSX Edge en Linux strongSwan".

Spitigernôch wie it net mooglik om it direkt te brûken, om't ... Ik woe mear betroubere fersifering, net in sels-ûndertekene sertifikaat, en de beskreaune konfiguraasje soe net hawwe wurke efter NAT.

Dêrom moast ik sitte en dûke yn de dokumintaasje.

As basis naam ik in konfiguraasje dy't ik in lange tiid hie brûkt, wêrtroch't ik kin ferbine fan hast alle OS, en gewoan in stik taheakke wêrmei't ik ferbine mei NSX Edge.

Sûnt it ynstallearjen en folslein konfigurearjen fan de Strongswan-tsjinner bûten it berik fan dizze notysje leit, lit my ferwize nei goed materiaal oer dit ûnderwerp.

Dat, lit ús direkt nei de ynstellings gean.

Us ferbiningsdiagram sil der sa útsjen:

IPSec tunnel tusken Strongswan efter NAT en 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!

Konfiguraasje fan 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

Screenshots
IPSec tunnel tusken Strongswan efter NAT en VMWare NSX Edge
IPSec tunnel tusken Strongswan efter NAT en VMWare NSX Edge

Setup út 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!"

lês dêrnei de konfiguraasje opnij, start de ferbining en kontrolearje dat it is fêststeld:

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

Ik hoopje dat dizze lytse notysje nuttich is en immen in pear oeren besparret.

Boarne: www.habr.com

Add a comment