VPN-туннелін SDN Neutron арқылы ұйымдастыру
VK Cloud on-premises инфрақұрылымы мен SDN Neutron бар VK Cloud виртуалды желісі арасында VPN-туннелі арқылы желілік байланыс орнатуға мүмкіндік береді.
Мысал ретінде VK Cloud ішіндегі басқа желіге дейін стандартты маршрутизатор негізінде VPN-туннелі құрылады. VPN-эндпоинт ретінде виртуалды машина пайдаланылады. VPN-туннелін баптау жөніндегі нұсқауларды кез келген басқа VPN-эндпоинтпен, мысалы, корпоративтік файерволмен немесе басқа желілік жабдықпен жұмыс істеуге бейімдеуге болады.
Мысалдағы VPN-туннелі келесі желілерді байланыстырады:
- Клиенттік желі — on-premises инфрақұрылымындағы желіні еліктейтін VK Cloud ішіндегі желі.
- Виртуалды желі — стандартты маршрутизаторға қосылған VK Cloud ішіндегі желі.
Әр желіде туннельдің жұмысқа қабілеттілігін тексеру үшін виртуалды машиналар жасалады.
-
OpenStack клиенті орнатылғанына көз жеткізіңіз және жобада аутентификациядан өтіңіз.
-
Клиенттік желіВиртуалды желі
Бұл желі клиенттік желі рөлін атқарады.
Желіні жасау кезінде келесі параметрлерді орнатыңыз:
-
Желі атауы:
clientNet. -
SDN:
Neutron. Әдепкі бойынша SDN Sprut жасалады. -
Интернетке қолжетімділік: бұл опцияның таңдалғанына көз жеткізіңіз. Ол осы желідегі виртуалды машиналарға жария Floating IP мекенжайларын тағайындауға мүмкіндік береді.
-
Маршрутизатор:
Жаңасын жасау. -
Ішкі желілер тізімі: тізімдегі жалғыз ішкі желіні өңдеңіз. Ішкі желі үшін келесі параметрлерді орнатыңыз:
- Атауы:
clientSubnet. - Мекенжайы:
172.16.0.0/29. - Шлюз:
172.16.0.1. - DHCP қосу: бұл опцияның таңдалғанына көз жеткізіңіз.
- DHCP IP мекенжайлары пулы:
172.16.0.2 - 172.16.0.6. - Жеке DNS: бұл опцияның таңдалғанына көз жеткізіңіз.
- Атауы:
-
-
Осы желілер үшін қандай маршрутизаторлар жасалғанын анықтаңыз. Бұл ақпарат VPN-ді әрі қарай баптау үшін қажет болады.
Бұдан әрі мыналар болжанады:
clientNetжелісі үшінrouter_1234маршрутизаторы жасалған;vkcloudNetжелісі үшінrouter_5678маршрутизаторы жасалған.
-
router_5678маршрутизаторы үшінSNATинтерфейсінің IP мекенжайын анықтаңыз:-
vkcloudNetжелісіне арналған ішкі желілер тізімі бар бетті ашыңыз. -
vkcloudSubnetішкі желісінің атауын басыңыз. -
Порттар қойындысына өтіңіз.
-
Порттар тізімінен
SNATқұрылғысының портын тауып, оның IP мекенжайын көшіріңіз.
-
-
clientNetклиенттік желісінде VPN-шлюз ретінде қызмет ететін виртуалды машинаны келесі параметрлермен жасаңыз:- Виртуалды машина атауы:
client_vpn_gw. - Виртуалды машина түрі:
STD3-2-4. - Конфигурациядағы машиналар саны: біреу.
- Операциялық жүйе:
Ubuntu 22.04. - Желі: клиенттік желі және оған сәйкес
clientNet: clientSubnetішкі желісі. - Виртуалды машина кілті: SSH арқылы қосылу орындалатын кілт.
- Firewall баптаулары: барлығы рұқсат етілген (
all). - Сыртқы IP тағайындау: бұл опцияның таңдалғанына көз жеткізіңіз.
Виртуалды машинаның қалған параметрлерін өз қалауыңызша таңдаңыз.
- Виртуалды машина атауы:
-
Әрі қарай жұмыс істеу үшін қажетті мәліметтерді жинаңыз. Бұдан әрі мыналар болжанады:
Нысан | Мәні |
|---|---|
|
|
|
|
|
|
|
|
Бұлттық VPN-шлюзі жағындағы виртуалды ішкі желі |
|
Бұлттық ішкі желідегі |
|
VPN-туннелін жасаңыз келесі параметрлермен:
IKE-саясаты ретінде Жаңа IKE-саясаты таңдаңыз және мыналарды орнатыңыз:
- Саясат атауы:
vkcloud-client-ike. - Кілттің өмір сүру уақыты: 3600 секунд.
- Авторизация алгоритмі:
sha256. - Шифрлау алгоритмі:
aes-256. - IKE нұсқасы:
v2. - Диффи—Хеллман тобы:
group14.
-
VPN-шлюз порты кез келген трафикті қайта жібере алуы үшін, сол порт үшін IP Source Guard функциясын өшіріңіз:
-
client_vpn_gwвиртуалды машинасының172.16.0.5жеке IP мекенжайы бар портын табыңыз. Осы порттың идентификаторын алыңыз. -
Осы порт арқылы кез келген мекенжайлардан трафик өтуіне рұқсат беріңіз:
openstack port set <ID_ПОРТА> --allowed-address ip-address=0.0.0.0/0
-
-
client_vpn_gwвиртуалды машинасына SSH арқылы қосылыңыз. Бұдан кейінгі барлық әрекеттер осы виртуалды машинада орындалуы тиіс. -
Виртуалды машина жеке желіден VPN-туннеліне трафикті маршрутизациялай алуы үшін, IP Forwarding функциясын қосыңыз:
echo 'net.ipv4.ip_forward = 1' | sudo tee -a /etc/sysctl.confsudo sysctl -p -
Linux үшін IPsec VPN іске асыруы болып табылатын StrongSwan орнатыңыз:
sudo apt updatesudo apt install -y strongswan libcharon-extra-plugins libcharon-extauth-plugins libstrongswan-extra-plugins -
/etc/ipsec.confфайлына клиенттік желі жағындағы VPN-қосылым параметрлерін қосыңыз. Бұл параметрлер бұлттық желі жағында жасалған туннель баптауларының айнадағы көрінісі болып табылады.conn client-vkcloud-vpnauthby=secretleft=%defaultrouteleftid=192.0.2.200leftsubnet=172.16.0.0/29right=192.0.2.100rightsubnet=10.0.0.0/29ike=aes256-sha2_256-modp2048!esp=aes256-sha2_256!keyingtries=0ikelifetime=3600lifetime=8hdpddelay=30dpdtimeout=120dpdaction=holdauto=start -
/etc/ipsec.secretsфайлында ортақ пайдалану кілтін (PSK) көрсетіңіз. Кілт бұлттық желі жағында көрсетілген кілтпен сәйкес келуі тиіс:192.0.2.200 192.0.2.100 : PSK "<КЛЮЧ_СОВМЕСТНОГО_ИСПОЛЬЗОВАНИЯ_ЗАДАННЫЙ_ЗАРАНЕЕ>" -
StrongSwan сервисін қайта іске қосыңыз:
sudo systemctl restart strongswan-starter
Трафик VPN-туннелі арқылы өтуі үшін статикалық маршруттарды қосу қажет:
-
Жеке кабинетте
vkcloudNetжелісіне арналған ішкі желілер тізімі бар бетті ашыңыз. -
vkcloudSubnetішкі желісі үшінбасып,
Ішкі желіні өңдеутармағын таңдаңыз. -
Статикалық маршруттар өрісін көрсету опциясының таңдалғанына көз жеткізіңіз.
-
Өріске
172.16.0.0/29клиенттік желісіне дейінгі статикалық маршрутты жазыңыз. next hop ретіндеvkcloudSubnetбұлттық ішкі желісіндегіrouter_5678маршрутизаторыныңSNATинтерфейсінің IP мекенжайын көрсету қажет.172.16.0.0/29 - 10.0.0.5
-
VK Cloud платформасы жағынан VPN-туннелінің күйін қараңыз.
Ол үшін жеке кабинетте
vkcloud-client-vpnVPN бетiн ашып, Туннель параметрлері қойындысына өтіңіз. VPNACTIVEмәртебесінде болуы тиіс. -
ICMP-трафикке рұқсат беретін
icmpқауіпсіздік тобын жасаңыз.Осы топта кіріс ережесін жасаңыз:
- Түрі:
ICMP. - Қашықтағы мекенжай:
Барлық IP мекенжайлар.
Бұл тестілік виртуалды машиналардың бір-бірін ping арқылы тексере алуы үшін қажет.
- Түрі:
-
Екі виртуалды машинаны ссылка:
-
clientVM:clientNetжелісінде,clientSubnetішкі желісінде;- SSH арқылы оған қосылу үшін Floating IP мекенжайымен;
default,ssh,icmpқауіпсіздік топтарымен.
-
vkcloudVM:vkcloudNetжелісінде,vkcloudSubnetішкі желісінде;- SSH арқылы оған қосылу үшін Floating IP мекенжайымен;
default,ssh,icmpқауіпсіздік топтарымен.
-
-
Виртуалды машиналардың тиісті ішкі желілердегі жеке IP мекенжайларын анықтаңыз. Мынадай болсын:
clientVMIP мекенжайы172.16.0.4;vkcloudVMIP мекенжайы10.0.0.4.
-
vkcloudVMвиртуалды машинасына SSH арқылы қосылыңыз. -
vkcloudVMвиртуалды машинасынанclientVMвиртуалды машинасына ping орындаңыз:ping 172.16.0.4clientVMхосты ping-ке жауап беруі тиіс.
Егер жасалған ресурстар енді қажет болмаса, оларды жойыңыз:
-
Клиенттік желі жағында жазылған статикалық маршруттарды жойыңыз.
-
Клиенттік және бұлттық желілердің маршрутизаторларын жойыңыз.
-
Клиенттік және бұлттық ішкі желілерді және желілерді жойыңыз.