MyCottage.cc

Настройка роутера IPsec
для подключения к частной сети

подключение дома или офиса к Site-to-Site VPN

Как настроить роутер IPsec для подключения дома или офиса к частной сети: Keenetic, TP-Link Omada, ASUS, OpenWRT, Remote ID, PSK, подсети и проверка туннеля.

К списку статей

Что настраиваем

В этой части подключаем офисные роутеры к хабу strongSwan и заносим их учётные данные в админку. Все примеры обезличены: Office 1, Office 2, Office 3. Реальные имена объектов, IP и секреты в публичных статьях не используются.

Таблица офисов

ОфисName в админкеRemote IDLAN gatewayLAN subnet
Office 1office1office1-router192.168.10.1192.168.10.0/24
Office 2office2office2-router192.168.11.1192.168.11.0/24
Office 3office3office3-router192.168.12.1192.168.12.0/24

Что завести в админке

Вкладка Site-to-siteAdd site-to-site:

ПолеOffice 1Office 2Office 3
Nameoffice1office2office3
Remote addr%any%any%any
Remote IDoffice1-routeroffice2-routeroffice3-router
LAN192.168.10.0/24192.168.11.0/24192.168.12.0/24
PSKуникальный длинный секрет для каждого офиса

После добавления офисов нажмите Apply config и проверьте reload status. PSK удобен для теста. В продакшене рекомендуется переход на сертификаты X.509.

Общие параметры для всех роутеров

  • VPN type: IKEv2 / IPsec Site-to-Site.
  • Remote gateway: 203.0.113.10 или vpn.example.com.
  • Local ID: office1-router для Office 1.
  • Remote ID / Server ID: vpn.example.com.
  • Local subnet: сеть текущего офиса, например 192.168.10.0/24.
  • Remote subnets: хаб и остальные офисы, например 10.0.0.0/24, 192.168.11.0/24, 192.168.12.0/24.
  • Phase 1: AES-256 / SHA-256 / DH14.
  • Phase 2: ESP AES-256 / SHA-256 / PFS DH14.
  • NAT-T: включить, если офис за NAT.
  • DPD/Keepalive: включить авто-переподключение.
Совместимость Phase 1 / Phase 2
Если на роутере выбран GCM/ECP, а на хабе AES/SHA/DH14, IKE_AUTH или CHILD SA не согласуются. Для первого запуска лучше выбрать совместимый набор AES-256/SHA-256/DH14, затем усиливать шифры после проверки.

Пример conn на хабе для сверки

Минимальный пример помогает понять, какие значения должны совпадать с настройками роутера.

ipsec.conf:

config setup
    uniqueids=no

conn office1
    keyexchange=ikev2
    type=tunnel
    left=%any
    [email protected]
    leftsubnet=10.0.0.0/24,192.168.11.0/24,192.168.12.0/24
    right=%any
    rightid=@office1-router
    rightsubnet=192.168.10.0/24
    authby=psk
    ike=aes256-sha256-modp2048!
    esp=aes256-sha256-modp2048!
    dpdaction=restart
    auto=add

swanctl.conf:

connections {
  site-office1 {
    version = 2
    local_addrs = %any
    remote_addrs = %any
    proposals = aes256-sha256-modp2048
    local  { auth = psk; id = "vpn.example.com"; }
    remote { auth = psk; id = "office1-router"; }
    children {
      net {
        local_ts = 10.0.0.0/24,192.168.11.0/24,192.168.12.0/24
        remote_ts = 192.168.10.0/24
        esp_proposals = aes256-sha256-modp2048
        start_action = trap
        dpd_action = restart
      }
    }
  }
}

Keenetic

  1. Откройте VPN → IPsec/IKEv2 и создайте новое site-to-site подключение.
  2. Удалённый шлюз: 203.0.113.10.
  3. Локальный идентификатор: office1-router, тип FQDN/Name.
  4. Удалённый идентификатор: vpn.example.com, тип FQDN/Name.
  5. Локальная подсеть: 192.168.10.0/24.
  6. Удалённые подсети: 10.0.0.0/24, 192.168.11.0/24, 192.168.12.0/24.
  7. PSK: тот же, что указан в админке для Office 1.

Проверка соединения

  • В интерфейсе Keenetic статус должен быть Connected.
  • Проверьте ping из Office 1 в Office 2, например ping 192.168.11.10.

TP-Link Omada

  1. VPN → IPsec → Site-to-Site VPN.
  2. Remote Gateway: 203.0.113.10.
  3. Local ID Type: Name, Local ID: office1-router.
  4. Remote ID Type: Name, Remote ID: vpn.example.com.
  5. Local Networks: сеть Office 1.
  6. Remote Networks: hub-сеть и сети остальных офисов.
  7. Phase 1/2: AES-256, SHA-256, DH14/PFS DH14.

Проверка соединения

  • VPN status должен быть Connected.
  • Если tunnel online, но доступа нет, проверьте Gateway ACL, Switch ACL и правила LAN/VPN.

ASUS

На ASUS возможности зависят от прошивки. Если встроенный IPsec-клиент поддерживает site-to-site, используйте те же параметры: gateway, Local ID, Remote ID, local/remote subnets и PSK. Если прошивка ограничена, лучше использовать OpenWRT/ASUSWRT-Merlin или отдельный шлюз.

Проверка соединения

  • Проверьте статус IPsec в web-интерфейсе.
  • На хабе выполните swanctl --list-sas и найдите site-office1.

OpenWRT

На OpenWRT удобно ставить strongSwan и описывать peer через swanctl. Ниже минимальная логика для Office 1.

opkg update
opkg install strongswan-full strongswan-swanctl
connections {
  hub {
    version = 2
    local_addrs = %any
    remote_addrs = 203.0.113.10
    proposals = aes256-sha256-modp2048
    local  { auth = psk; id = "office1-router"; }
    remote { auth = psk; id = "vpn.example.com"; }
    children {
      net {
        local_ts = 192.168.10.0/24
        remote_ts = 10.0.0.0/24,192.168.11.0/24,192.168.12.0/24
        esp_proposals = aes256-sha256-modp2048
        start_action = start
      }
    }
  }
}
secrets { ike-hub { id = "vpn.example.com"; secret = "CHANGE_ME_OFFICE1_LONG_RANDOM_PSK"; } }

Firewall OpenWRT должен разрешать forwarding между LAN и IPsec. В зависимости от сборки это делается через зону firewall или UCI-правила.

service strongswan restart
logread | grep -E 'charon|ipsec'
swanctl --list-sas

Проверка соединения

  • swanctl --list-sas должен показать established IKE SA и installed CHILD SA.
  • logread | grep -E 'charon|ipsec' покажет ID/PSK/proposal ошибки.

Сравнение роутеров

РоутерПростотаГибкостьРекомендация
KeeneticВысокаяСредняяХорош для небольших офисов, понятный интерфейс
TP-Link OmadaСредняяСредняяУдобен в сетях с контроллером, внимательно сверять Phase 2 и ACL
ASUSСредняяНизкая/средняяПодходит, если прошивка поддерживает полноценный site-to-site
OpenWRTНижеВысокаяЛучший вариант для гибкой настройки и диагностики

Возможные проблемы и отладка

ОшибкаПричинаРешение
AUTH_FAILEDPSK или ID не совпадаетСверить Local ID роутера, Remote ID хаба и PSK в админке
no matching peer configроутер ожидает другой Server IDRemote ID на роутере: vpn.example.com
Connected, но нет доступаFORWARD/firewall или ACLПроверить UFW route на VPS и правила LAN/VPN на роутере
Видна только одна сетьнеполные remote subnetsДобавить все сети Office 2/3 и hub-сеть
Туннель падает после NATNAT-T/DPD выключеныВключить NAT-T и keepalive/DPD
Ping есть, web не открываетсяfirewall конечного устройстваРазрешить доступ с удалённой подсети, проверить gateway устройства

Команды на хабе

swanctl --list-conns
swanctl --list-sas
tcpdump -ni any udp port 500 or udp port 4500
iptables -L ufw-user-forward -n -v
journalctl -u strongswan --no-pager -n 100

Рекомендации

  • Используйте уникальный Remote ID и PSK на каждый офис.
  • Не смешивайте реальные адреса и тестовые значения в публичной документации.
  • После добавления нового офиса применяйте конфиг на хабе и перезапускайте/reconnect туннель на роутерах.
  • Сначала добейтесь стабильного ping между LAN, потом проверяйте приложения и web-интерфейсы.