تونل IPSec بین Strongswan پشت NAT و VMWare NSX Edge

به چند دلیل، لازم بود که یک اتصال VPN بین شبکه در VMWare Cloud Director و یک ماشین اوبونتو جداگانه در فضای ابری سازماندهی شود. یادداشت وانمود نمی کند که یک توضیح کامل است، فقط یک روش کوچک است.

تونل IPSec بین Strongswan پشت NAT و VMWare NSX Edge

تنها مقاله در مورد این موضوع از سال 2015 در اینترنت یافت شد.سایت به سایت IPSEC VPN بین NSX Edge و Linux strongSwan'.

متأسفانه امکان استفاده مستقیم از آن وجود نداشت، زیرا ... من رمزگذاری قابل اعتمادتر می‌خواستم، نه یک گواهی خودامضا، و پیکربندی توصیف‌شده پشت NAT کار نمی‌کرد.

بنابراین، مجبور شدم بنشینم و اسناد را بررسی کنم.

به عنوان پایه، من پیکربندی را انتخاب کردم که برای مدت طولانی از آن استفاده می کردم، که به من امکان می دهد تقریباً از هر سیستم عاملی متصل شوم، و به سادگی قطعه ای را به آن اضافه کردم که به من امکان می دهد به NSX Edge متصل شوم.

از آنجایی که نصب و پیکربندی کامل سرور Strongswan خارج از حوصله این یادداشت است، اجازه دهید به مطالب خوب در مورد این موضوع.

بنابراین، اجازه دهید مستقیماً به تنظیمات حرکت کنیم.

نمودار اتصال ما به صورت زیر خواهد بود:

تونل IPSec بین Strongswan پشت NAT و 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!

پیکربندی از NSX Edge:

متن

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

تصاویر
تونل IPSec بین Strongswan پشت NAT و VMWare NSX Edge
تونل IPSec بین Strongswan پشت NAT و VMWare NSX Edge

راه اندازی از 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!"

پس از آن، فقط پیکربندی را دوباره بخوانید، اتصال را شروع کنید و بررسی کنید که برقرار است:

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

امیدوارم این یادداشت کوچک مفید باشد و چند ساعت باعث نجات کسی شود.

منبع: www.habr.com

اضافه کردن نظر