VPN IPSec (site-to-site) между VPNaaS (SIM-Cloud) и роутером pfSense (remote office)¶
- Описание
- Начальные условия
- Конфигурация Site «A» (VPNaaS)
- Конфигурация Site «B» (pfSense)
- Проверка работы туннеля
Описание¶
Начальные условия¶
- Оба узла, между которыми строится VPN туннель, имеют реальные IP адреса.
- Site «A» - сервис VPNaaS в облаке SIM-Cloud
- Site «B» - клиентская инфраструктура на основе pfSense.
- Каждая сторона имеет свою собственную приватную подсеть:
- Site «A» - 10.5.4.0/24
- Site «B» - 192.168.255.0/24
- Версия VPNaaS - v. 12.0.5
- Версия pfSense - v. CE-2.4.4-RELEASE-p3-amd64
Предупреждение
В зависимости от версии ОС роутера или программного обеспечения, дальнейшая настройка может отличаться.
Примечание
Для установления VPN-соединения необходимо обеспечить выполнения обязательных условий:
Сетевая доступность между маршрутизаторами:
- Protocol: UDP, port 500 (for IKE, to manage encryption keys).
- Protocol: UDP, port 4500 (for IPSEC NAT-Traversal mode).
- Protocol: ESP, value 50 (for IPSEC).
- Protocol: AH, value 51 (for IPSEC).
Правила фаерволов не должны блокировать сетевой трафик между маршрутизаторами и приватными подсетями.
Приватные подсети, которые будут соединяться средствами IPSec, должны быть разными, а также не включать в себя друг друга.
VPN Router | VPN Peer IP | Private Network | Private Network GW IP | Private Network Host IP |
---|---|---|---|---|
Site «A» (VPNaaS) | 156.67.54.218 | 10.5.4.0/24 | 10.5.4.1/32 | 10.5.4.7 |
Site «B» (pfSense) | 156.67.53.177 | 192.168.255.0/24 | 192.168.255.22/32 | 192.168.255.29 |
В данном примере будет выполнена первоначальная настройка защищенного VPN соединения IPSec «site-to-site». Тем самым мы соединим приватные сети 10.5.4.0/24 и 192.168.255.0/24, которые находятся за маршрутизаторами.
Конфигурация Site «A» (VPNaaS)¶
Сервис VPNaaS настраиваем согласно имеющейся в документации инструкции:
A1. Выполним настройку IKE Policy. На этом этапе будем использовать следующие параметры:
Name | ikepolicy |
Authorization algorithm | sha1 |
Encryption algorithm | 3des |
IKE version | v2 |
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 | 3des |
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.177 |
Peer router identity for authentication (Peer ID) | 156.67.53.177 |
Endpoint group for remote peer CIDR(s) | remote_epg |
Pre-Shared Key (PSK) string | Baejii9ahwoo |
MTU | 1500 |
A6. После всех проведённых манипуляций видим, что «IPsec site connection» успешно создался и имеет статус - «Down». Когда туннель будет настроен с другой стороны и успешно поднимется, статус изменится на «Active».
Конфигурация Site «B» (pfSense)¶
При настройке VPN соединения на ПО pfSense, будем руководствоваться оригинальной статьей от производителя ПО - «Configuring a Site-to-Site IPsec VPN».
B1. Настройка VPN IPsec туннеля. Phase 1
Disabled | Unchecked | чтобы туннель работал, оставляем неотмеченным |
Key Exchange version | V2 | должно совпадать с версией установленной в VPNaaS |
Internet Protocol | IPv4 | |
Interface | WAN | должен быть выбран интерфейс смотрящий в сеть интернет |
Remote gateway | 156.67.54.218 | в нашем случае, публичный IP адрес VPNaaS |
Description | VPNaaS | описание |
Authentication method | Mutual PSK | Используем Pre-shared Key |
My identifier | My IP address | Простая идентификация, если используем фиксированный ip |
Peer identifier | Peer IP address | Простая идентификация, если используем фиксированный ip |
Pre-Shared Key | Baejii9ahwoo | Случайная фраза, должна совпадать с введённой с другой стороны |
Encryption algorithm / Algorithm | 3DES | должно совпадать с версией установленной в VPNaaS |
Encryption algorithm / Hash | SHA1 | должно совпадать с версией установленной в VPNaaS |
Encryption algorithm / DH group | 5 | должно совпадать с версией установленной в VPNaaS |
Lifetime | 86400 | должно совпадать с версией установленной в VPNaaS |
Disable Rekey | Unchecked | Перезапросить ключ, когда истекает срок его действия |
Disable Reauth | Unchecked | For IKEv2 only re-authenticate peer on rekeying |
Dead Peer Detection | Enabled | Оставляем настройку по умолчанию |
Сохраним изменения нажатием на кнопку «Save»
B2. Настройка VPN IPsec туннеля. Phase 2
Disabled | Unchecked | чтобы туннель работал, оставляем неотмеченным |
Mode | Tunnel IPv4 | Выберем Tunnel mode |
Local Network / Type | LAN subnet | Route the local LAN subnet |
Remote Network / Type | Network | Route a remote network |
Remote Network / Address | 10.5.4.0/24 | The remote LAN subnet |
Description | Локальная сеть в VPNaaS | Описание |
Protocol | ESP | Выберем ESP для шифрования |
Encryption algorithms | 3DES | должно совпадать с версией установленной в VPNaaS |
Hash algortihms | SHA1 | должно совпадать с версией установленной в VPNaaS |
PFS Key group | 5(1536bits) | должно совпадать с версией установленной в VPNaaS |
Lifetime | 3600 | должно совпадать с версией установленной в VPNaaS |
Сохраним изменения нажатием на кнопку «Save» и применим их нажатием на кнопку «Apply changes».
B3. Активация VPN IPsec туннеля.
B4. Добавим правила в firewall, чтобы разрешить прохождение трафика через IPsec туннель в нашу локальную сеть.
Для этого перейдем в меню «Firewall > Rules» на вкладку «IPsec» и добавим («Add») правило согласно таблице:
Action | Interface | Address Family | Protocol | Source | Destination | Description |
---|---|---|---|---|---|---|
Pass | IPsec | IPv4 | any | any | LAN net | Allow IPsec traffic to LAN net |
Сохраним правило нажатием на кнопку «Save» и применим его нажатием на кнопку «Apply changes».
Проверка работы туннеля¶
Примечание
Если туннель не поднялся, нужно рестартовать VPN сервис с обоих сторон.
- Для просмотра статуса туннеля в pfSense нужно зайти в меню «Status > IPsec», на вкладку «Overview». Там же можно нажать на кнопку «Show child SA entries», чтобы увидеть детали для «phase 2»
- Cтатус «IPsec site connection» в VPNaaS изменился на «Active».