IPsec VPN між VPNaaS (SIM-Cloud) і маршрутизатором MikroTik у віддаленому офісі
Опис
Початкові умови
Обидва вузли VPN-тунелю мають публічні IP-адреси.
Майданчик A — хмарний VPNaaS у SIM-Cloud.
Майданчик B — клієнтська інфраструктура на основі MikroTik.
Кожен майданчик має власну приватну підмережу:
Site «A» - 10.5.4.0/24
Site «B» - 192.168.255.0/24
Версія VPNaaS: 12.0.5
Версія MikroTik: 6.45.3
Попередження
Порядок налаштування може відрізнятися залежно від версії RouterOS.
Примітка
Для налаштування VPN мають виконуватися такі умови:
між маршрутизаторами є мережева доступність:
UDP, порт 500 — IKE та керування ключами шифрування;
UDP, порт 4500 — режим IPsec NAT Traversal;
ESP, значення 50 — IPsec;
AH, значення 51 — IPsec.
Правила брандмауера не блокують трафік між маршрутизаторами та приватними підмережами.
Приватні підмережі, з’єднані через IPsec, відрізняються й не містять одна одну.
VPN-маршрутизатор |
IP VPN-вузла |
Приватна мережа |
IP шлюзу приватної мережі |
IP вузла приватної мережі |
|---|---|---|---|---|
Site «A» (VPNaaS) |
156.67.54.218 |
10.5.4.0/24 |
10.5.4.1/32 |
10.5.4.7 |
Site «B» (MikroTik) |
156.67.53.178 |
192.168.255.0/24 |
192.168.255.23/32 |
192.168.255.29 |
У прикладі створюється захищене IPsec-з’єднання між приватними мережами
10.5.4.0/24 і 192.168.255.0/24 за маршрутизаторами.
Налаштування майданчика A VPNaaS
Налаштуйте VPNaaS за інструкцією.
A1. Створіть IKE Policy з такими параметрами:
Name |
ikepolicy |
Authorization algorithm |
sha1 |
Encryption algorithm |
aes-128 |
IKE version |
v1 |
Lifetime value for IKE keys |
86400 |
Perfect Forward Secrecy |
group5 |
IKE Phase1 negotiation mode |
main |
A2. Створіть IPsec Policy з такими параметрами:
Name |
ipsecpolicy |
Authorization algorithm |
sha1 |
Encapsulation mode |
tunnel |
Encryption algorithm |
aes-128 |
Lifetime value for IKE keys |
3600 |
Perfect Forward Secrecy |
group5 |
Transform Protocol |
esp |
A3. Створіть VPN service з такими параметрами:
Name |
VPNservice |
Router |
Виберіть маршрутизатор проєкту зі списку |
A4. Створіть Endpoint Groups із такими параметрами:
Endpoint group name |
Type |
Value |
|---|---|---|
local_epg |
SUBNET |
10.5.4.0/24 |
remote_epg |
CIDR |
192.168.255.0/24 |
A5. Створіть IPsec site connection із такими параметрами:
Name |
ipsecsiteconn |
VPN service associated with this connection |
VPNservice |
Endpoint group for local subnet(s) |
local_epg |
IKE policy associated with this connection |
ikepolicy |
IPsec policy associated with this connection |
ipsecpolicy |
Peer gateway public IPv4/IPv6 Address or FQDN |
156.67.53.178 |
Peer router identity for authentication (Peer ID) |
156.67.53.178 |
Endpoint group for remote peer CIDR(s) |
remote_epg |
Pre-Shared Key (PSK) string |
Baejii9ahwoo |
MTU |
1500 |
A6. Після збереження змін IPsec-з’єднання буде створено зі станом Down. Після налаштування іншого боку й установлення тунелю стан зміниться на Active.
Налаштування майданчика B MikroTik
B1. Створіть профіль для першої фази.
IP:IPsec, відкрийте вкладку Profiles і натисніть Add New.Name |
VPNaaS |
|
Hash Algorithms |
sha1 |
Має збігатися зі значенням у VPNaaS |
Encryption Algorithm |
aes-128 |
Має збігатися зі значенням у VPNaaS |
DH Group |
modp1536 |
Має збігатися зі значенням у VPNaaS |
Lifetime |
1d |
Має збігатися зі значенням у VPNaaS |
OK./ip ipsec profile
add enc-algorithm=aes-128 hash-algorithm=sha1 dh-group=modp1536 lifetime=1d name=VPNaaS
B2. Створіть proposal для другої фази.
IP:IPsec, відкрийте вкладку Proposals і натисніть Add New.Name |
VPNaaS |
|
Auth. Algorithms |
sha1 |
Має збігатися зі значенням у VPNaaS |
Encr. Algorithms |
aes-128 cbc |
Має збігатися зі значенням у VPNaaS |
Lifetime |
01:00:00 |
Має збігатися зі значенням у VPNaaS |
PFS Group |
modp1536 |
Має збігатися зі значенням у VPNaaS |
OK./ip ipsec proposal
add enc-algorithms=aes-128-cbc auth-algorithms=sha1 pfs-group=modp1536 lifetime=1h name=VPNaaS
B3. Укажіть параметри віддаленого вузла.
IP:IPsec, відкрийте вкладку Peers і натисніть Add New.Name |
VPNaaS |
|
Address |
156.67.54.218/32 |
IP-адреса сервісу VPNaaS |
Profile |
VPNaaS |
Профіль створено раніше |
Exchange Mode |
main |
Має збігатися зі значенням у VPNaaS |
OK./ip ipsec peer
add address=156.67.54.218/32 exchange-mode=main profile=VPNaaS name=VPNaaS
B4. Укажіть механізм ідентифікації.
IP:IPsec, відкрийте вкладку Identities і натисніть Add New.Peer |
VPNaaS |
Віддалений вузол створено раніше |
Auth. Method |
pre shared key |
|
Secret |
Baejii9ahwoo |
Має збігатися зі значенням у VPNaaS |
OK./ip ipsec identity
add auth-method=pre-shared-key peer=VPNaaS secret=Baejii9ahwoo
B5. Створіть IPsec-правило, яке дозволяє трафік із локальної приватної мережі до віддаленої через тунель.
IP:IPsec, відкрийте вкладку Policies і натисніть Add New.Peer |
VPNaaS |
Віддалений вузол створено раніше |
Tunnel |
checked |
Увімкнути тунелювання |
Src. Address |
192.168.255.0/24 |
Локальна мережа з боку MikroTik |
Dst. Address |
10.5.4.0/24 |
Локальна мережа з боку VPNaaS |
Action |
encrypt |
|
IPsec Protocols |
esp |
Має збігатися зі значенням у VPNaaS |
Proposal |
VPNaaS |
Пропозицію створено раніше |
OK./ip ipsec policy
add src-address=192.168.255.0/24 src-port=any dst-address=10.5.4.0/24 dst-port=any tunnel=yes action=encrypt proposal=VPNaaS ipsec-protocols=esp peer=VPNaaS
B6. На цьому етапі пакети з боку MikroTik, надіслані через IPsec-тунель, буде втрачено.
Причина — правило NAT masquerade змінює адресу джерела до шифрування пакета. Маршрутизатор не може зашифрувати пакет, оскільки адреса джерела не відповідає політиці. Докладніше дивіться в описі обробки IPsec-пакетів.
IP:Firewall, відкрийте вкладку NAT і натисніть Add New.Chain |
srcnat |
|
Src. Address |
192.168.255.0/24 |
Локальна мережа з боку MikroTik |
Dst. Address |
10.5.4.0/24 |
Локальна мережа з боку VPNaaS |
action |
accept |
OK і перетягніть створене правило на початок списку./ip firewall nat
add chain=srcnat action=accept place-before=0 src-address=192.168.255.0/24 dst-address=10.5.4.0/24
Перевірка роботи тунелю
ping між вузлами різних локальних мереж.Примітка
Якщо тунель не встановився, перезапустіть VPN-сервіс з обох боків.
Перевірте стан тунелю в MikroTik:
У графічному інтерфейсі перейдіть до
IP:IPsec.На вкладці
Installed SAsмають бути два рядки з параметрами з’єднань між вузлами.На вкладці
PoliciesпараметрPH2 Stateмає значенняestablished.
Для перевірки через CLI виконайте:/ip ipsec installed-sa print (you should see two lines of properties of connections between the peers) active-peers print (the STATE of the connection should have the value established)
Стан IPsec-з’єднання у VPNaaS має змінитися на Active.