RSA Keys - RSA ключи для аутентификации VPN
Обзор RSA-аутентификации для VPN
RSA-аутентификация представляет собой криптографический метод проверки подлинности для IPsec VPN туннелей в VyOS. В отличие от Pre-Shared Key (PSK) аутентификации, RSA использует асимметричную криптографию с парой публичного и приватного ключей, что обеспечивает повышенную безопасность и гибкость при настройке VPN-соединений.
Основные преимущества RSA-аутентификации
Безопасность:
- Приватный ключ никогда не передается по сети
- Исключается риск компрометации единого общего ключа (PSK)
- Невозможность подбора ключа методом перебора
- Поддержка криптостойких ключей длиной 2048-4096 бит
Масштабируемость:
- Упрощенное управление ключами в больших сетях
- Не требуется изменение конфигурации при добавлении новых узлов (Hub-and-Spoke)
- Централизованное управление публичными ключами
- Легкая ротация ключей без изменения всей инфраструктуры
Гибкость:
- Поддержка динамических IP-адресов (Dynamic IP)
- Возможность использования доменных имен для идентификации
- Совместимость с различными топологиями (Site-to-Site, Hub-and-Spoke, Full-Mesh)
- Интеграция с PKI инфраструктурой
Принцип работы RSA-аутентификации
RSA-аутентификация в IPsec VPN основана на следующих принципах:
- Генерация ключевой пары: Каждый VPN-узел генерирует уникальную пару ключей (публичный и приватный)
- Обмен публичными ключами: Публичные ключи безопасно обмениваются между узлами
- IKE Phase 1: При установлении туннеля происходит взаимная аутентификация с использованием RSA-подписей
- Проверка подлинности: Каждая сторона проверяет подлинность удаленного узла с помощью его публичного ключа
- Установление туннеля: После успешной аутентификации устанавливается защищенный IPsec туннель
Архитектурные сценарии использования
Site-to-Site VPN:
- Соединение двух офисов или дата-центров
- Статические или динамические IP-адреса
- Взаимная аутентификация обоих концов туннеля
Hub-and-Spoke VPN:
- Центральный офис (Hub) с несколькими филиалами (Spokes)
- Hub имеет статический IP, Spokes могут иметь динамические IP
- Централизованное управление ключами на Hub
Full-Mesh VPN:
- Множественные узлы, каждый соединен с каждым
- Требуется обмен публичными ключами между всеми узлами
- Оптимальная маршрутизация трафика без транзитных узлов
Генерация ключевой пары RSA
Базовая генерация ключей
VyOS использует встроенную PKI (Public Key Infrastructure) подсистему для управления ключами. Генерация RSA ключевой пары выполняется командой:
generate pki key-pair install <key-pair-name>Параметры генерации:
<key-pair-name>— уникальное имя ключевой пары для идентификации в конфигурации- По умолчанию генерируется RSA ключ длиной 2048 бит
- Система предложит установить пароль для шифрования приватного ключа (опционально)
Пример генерации ключа:
vyos@router1:~$ generate pki key-pair install router1-key
Enter private key passphrase:
Retype private key passphrase:
Private key stored as 'router1-key'Генерация ключей с расширенными параметрами
Выбор длины ключа:
VyOS поддерживает различную длину RSA ключей. Для генерации ключа определенной длины используйте команду:
generate pki key-pair type rsa length <bit-length> install <key-pair-name>Рекомендуемые длины ключей:
- 2048 бит: Базовый уровень безопасности, быстрая обработка
- 3072 бита: Повышенная безопасность для корпоративных сетей
- 4096 бит: Максимальная безопасность для критичных систем
Пример генерации ключа 4096 бит:
vyos@router1:~$ generate pki key-pair type rsa length 4096 install router1-key-4096
Enter private key passphrase:
Retype private key passphrase:
Private key stored as 'router1-key-4096'Генерация без шифрования приватного ключа
Для автоматизированных систем или тестовых окружений можно сгенерировать ключ без пароля:
generate pki key-pair install <key-pair-name> no-passwordВажно: Незашифрованные приватные ключи представляют угрозу безопасности. Используйте этот вариант только в изолированных тестовых средах.
Просмотр сгенерированных ключей
Просмотр публичного ключа:
show pki key-pair <key-pair-name> publicПример вывода:
vyos@router1:~$ show pki key-pair router1-key public
-----BEGIN PUBLIC KEY-----
MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAw1qHLMXLMbz0Z0X+YoXr
+vRkZJmBYRf3UqL6QgPPExRsG5gN7j8FqXqVLxFZZQ9PVnQ4/BgL1JGsZWx2OcDr
... (остальная часть ключа) ...
-----END PUBLIC KEY-----Просмотр приватного ключа:
show pki key-pair <key-pair-name> privateВнимание: Приватный ключ должен храниться в секрете. Никогда не передавайте приватный ключ третьим лицам.
Сохранение ключей в файлы
Для обмена публичными ключами или резервного копирования можно экспортировать ключи в файлы:
show pki key-pair router1-key public | save /config/router1-public.key
show pki key-pair router1-key private | save /config/router1-private.keyОбмен публичными ключами между маршрутизаторами
Процесс обмена ключами
Для установления RSA-аутентифицированного VPN туннеля необходимо обменяться публичными ключами между маршрутизаторами:
- Экспорт публичного ключа с Router1:
vyos@router1:~$ show pki key-pair router1-key public
-----BEGIN PUBLIC KEY-----
MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAw1qHLMXLMbz0Z0X+YoXr
+vRkZJmBYRf3UqL6QgPPExRsG5gN7j8FqXqVLxFZZQ9PVnQ4/BgL1JGsZWx2OcDr
K4Hd8XYzLmH5cN3vQ4FGBfQWx2yL8oPxRnE9K5vFmZqL8rN4TpWx6Q8vL2nR5F7K
... (полный публичный ключ) ...
-----END PUBLIC KEY------ Импорт публичного ключа на Router2:
Скопируйте весь текст публичного ключа и импортируйте его на второй маршрутизатор:
vyos@router2# set pki key-pair router1-remote public key '-----BEGIN PUBLIC KEY-----
MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAw1qHLMXLMbz0Z0X+YoXr
... (весь публичный ключ одной строкой или построчно) ...
-----END PUBLIC KEY-----'- Повторите процесс для Router2:
Аналогично экспортируйте публичный ключ Router2 и импортируйте на Router1.
Альтернативный метод: Импорт через файл
На Router1 (экспорт):
vyos@router1:~$ show pki key-pair router1-key public | save /config/router1-public.keyПередача файла:
Скопируйте файл /config/router1-public.key на Router2 любым безопасным способом (SCP, USB, безопасный канал).
На Router2 (импорт):
vyos@router2# loadkey pki key-pair router1-remote public /tmp/router1-public.keyИли вручную через конфигурацию:
vyos@router2# set pki key-pair router1-remote
vyos@router2# loadkey pki key-pair router1-remote public /tmp/router1-public.key
vyos@router2# commitПроверка импортированных ключей
Просмотр всех ключевых пар:
show pki key-pairВывод:
Key Pair Name Type Comment
--------------- ------ ---------
router1-key rsa Local key
router2-remote rsa Remote peer keyПросмотр конкретного публичного ключа:
show pki key-pair router2-remote publicУправление публичными и приватными ключами
Структура хранения ключей в VyOS
Ключи в VyOS хранятся в конфигурации под узлом pki:
pki {
key-pair router1-key {
private {
key "LS0tLS1CRUdJTiBPUEVOU1NIIFBSSVZBVEUgS0VZLS0tLS0K..."
}
public {
key "LS0tLS1CRUdJTiBQVUJMSUMgS0VZLS0tLS0KTUlJQklqQU5C..."
}
}
key-pair router2-remote {
public {
key "LS0tLS1CRUdJTiBQVUJMSUMgS0VZLS0tLS0KTUlJQklqQU5C..."
}
}
}Важно:
- Локальные ключевые пары содержат и public, и private части
- Удаленные ключи содержат только public часть
- Ключи хранятся в Base64 кодировке
Добавление публичного ключа удаленного узла
Через командную строку:
configure
set pki key-pair <remote-key-name> public key '<публичный ключ>'
commit
saveПример:
vyos@router1# set pki key-pair yc-datacenter-remote public key '-----BEGIN PUBLIC KEY-----
MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA2pL5Hx7vN4Zm...
-----END PUBLIC KEY-----'
vyos@router1# commit
vyos@router1# saveУдаление ключевой пары
Удаление всей ключевой пары:
configure
delete pki key-pair <key-pair-name>
commit
saveУдаление только публичного ключа:
configure
delete pki key-pair <key-pair-name> public
commit
saveВнимание: Перед удалением убедитесь, что ключ не используется в активных VPN туннелях.
Ротация ключей
Регулярная ротация ключей повышает безопасность. Процесс ротации:
- Генерация новой ключевой пары:
generate pki key-pair install router1-key-new- Обмен новыми публичными ключами:
Экспортируйте и импортируйте новые публичные ключи на удаленные узлы.
- Обновление конфигурации VPN:
configure
set vpn ipsec authentication pki local-key router1-key-new
set vpn ipsec authentication pki rsa remote-key router2-key-new
commit
save- Удаление старых ключей:
После проверки работоспособности удалите старые ключи:
configure
delete pki key-pair router1-key
commit
saveРезервное копирование ключей
Экспорт конфигурации с ключами:
show configuration commands | grep pki | save /config/pki-backup.txtПолное резервное копирование:
save /config/config.boot.backupВосстановление:
load /config/config.boot.backup
commitКонфигурация IPsec VPN с RSA-аутентификацией
Базовая структура конфигурации
IPsec VPN с RSA-аутентификацией в VyOS настраивается в следующих основных разделах:
- IKE Group — параметры IKE Phase 1 (аутентификация и обмен ключами)
- ESP Group — параметры IPsec Phase 2 (шифрование данных)
- VPN Interface — определение VPN интерфейса и параметров туннеля
- Authentication — настройка RSA-аутентификации
- Connection — параметры соединения и режимы работы
Создание IKE Group
IKE Group определяет параметры для IKE Phase 1 (ISAKMP):
configure
set vpn ipsec ike-group IKE-RSA proposal 1 dh-group '14'
set vpn ipsec ike-group IKE-RSA proposal 1 encryption 'aes256'
set vpn ipsec ike-group IKE-RSA proposal 1 hash 'sha256'
set vpn ipsec ike-group IKE-RSA lifetime '28800'
set vpn ipsec ike-group IKE-RSA dead-peer-detection action 'restart'
set vpn ipsec ike-group IKE-RSA dead-peer-detection interval '30'
set vpn ipsec ike-group IKE-RSA dead-peer-detection timeout '120'
commitПараметры:
dh-group: Diffie-Hellman группа (2, 5, 14, 15, 16, 19, 20)
- Группа 14: 2048-bit MODP (рекомендуется минимум)
- Группа 19: 256-bit ECP (современный стандарт)
- Группа 20: 384-bit ECP (повышенная безопасность)
encryption: Алгоритм шифрования (aes128, aes192, aes256, aes128gcm16, aes256gcm16)
hash: Алгоритм хеширования (sha1, sha256, sha384, sha512)
lifetime: Время жизни IKE SA в секундах (по умолчанию 28800 = 8 часов)
dead-peer-detection: Обнаружение недоступного узла
Создание ESP Group
ESP Group определяет параметры для IPsec Phase 2:
set vpn ipsec esp-group ESP-RSA proposal 1 encryption 'aes256'
set vpn ipsec esp-group ESP-RSA proposal 1 hash 'sha256'
set vpn ipsec esp-group ESP-RSA lifetime '3600'
set vpn ipsec esp-group ESP-RSA pfs 'dh-group14'
commitПараметры:
- encryption: Алгоритм шифрования данных
- hash: Алгоритм HMAC для целостности данных
- lifetime: Время жизни IPsec SA (по умолчанию 3600 = 1 час)
- pfs (Perfect Forward Secrecy): Генерация новых ключей при каждом переключении SA
Конфигурация Site-to-Site VPN с RSA
Сценарий: Два офиса с статическими IP-адресами
Топология:
- Router1 (Офис А): 203.0.113.10, LAN 10.10.1.0/24
- Router2 (Офис Б): 198.51.100.20, LAN 10.10.2.0/24
Конфигурация Router1:
configure
# IKE и ESP группы (как описано выше)
set vpn ipsec ike-group IKE-RSA proposal 1 dh-group '14'
set vpn ipsec ike-group IKE-RSA proposal 1 encryption 'aes256'
set vpn ipsec ike-group IKE-RSA proposal 1 hash 'sha256'
set vpn ipsec esp-group ESP-RSA proposal 1 encryption 'aes256'
set vpn ipsec esp-group ESP-RSA proposal 1 hash 'sha256'
# Настройка site-to-site соединения
set vpn ipsec site-to-site peer office-b authentication mode 'rsa'
set vpn ipsec site-to-site peer office-b authentication rsa local-key 'router1-key'
set vpn ipsec site-to-site peer office-b authentication rsa remote-key 'router2-remote'
set vpn ipsec site-to-site peer office-b authentication local-id '203.0.113.10'
set vpn ipsec site-to-site peer office-b authentication remote-id '198.51.100.20'
set vpn ipsec site-to-site peer office-b connection-type 'initiate'
set vpn ipsec site-to-site peer office-b ike-group 'IKE-RSA'
set vpn ipsec site-to-site peer office-b local-address '203.0.113.10'
set vpn ipsec site-to-site peer office-b remote-address '198.51.100.20'
set vpn ipsec site-to-site peer office-b tunnel 1 esp-group 'ESP-RSA'
set vpn ipsec site-to-site peer office-b tunnel 1 local prefix '10.10.1.0/24'
set vpn ipsec site-to-site peer office-b tunnel 1 remote prefix '10.10.2.0/24'
commit
saveКонфигурация Router2:
configure
# IKE и ESP группы (идентичны Router1)
set vpn ipsec ike-group IKE-RSA proposal 1 dh-group '14'
set vpn ipsec ike-group IKE-RSA proposal 1 encryption 'aes256'
set vpn ipsec ike-group IKE-RSA proposal 1 hash 'sha256'
set vpn ipsec esp-group ESP-RSA proposal 1 encryption 'aes256'
set vpn ipsec esp-group ESP-RSA proposal 1 hash 'sha256'
# Настройка site-to-site соединения
set vpn ipsec site-to-site peer office-a authentication mode 'rsa'
set vpn ipsec site-to-site peer office-a authentication rsa local-key 'router2-key'
set vpn ipsec site-to-site peer office-a authentication rsa remote-key 'router1-remote'
set vpn ipsec site-to-site peer office-a authentication local-id '198.51.100.20'
set vpn ipsec site-to-site peer office-a authentication remote-id '203.0.113.10'
set vpn ipsec site-to-site peer office-a connection-type 'respond'
set vpn ipsec site-to-site peer office-a ike-group 'IKE-RSA'
set vpn ipsec site-to-site peer office-a local-address '198.51.100.20'
set vpn ipsec site-to-site peer office-a remote-address '203.0.113.10'
set vpn ipsec site-to-site peer office-a tunnel 1 esp-group 'ESP-RSA'
set vpn ipsec site-to-site peer office-a tunnel 1 local prefix '10.10.2.0/24'
set vpn ipsec site-to-site peer office-a tunnel 1 remote prefix '10.10.1.0/24'
commit
saveКлючевые параметры:
authentication mode 'rsa'— использование RSA-аутентификацииlocal-key— имя локальной ключевой парыremote-key— имя публичного ключа удаленного узлаlocal-idиremote-id— идентификаторы для IKE (IP-адреса или FQDN)connection-type— ‘initiate’ (инициатор) или ‘respond’ (ответчик)
Поддержка динамических IP-адресов
Конфигурация с local-address “any”
VyOS поддерживает динамические IP-адреса для VPN туннелей, что особенно полезно для подключений из офисов с динамическими IP от провайдера.
Сценарий: Router1 имеет динамический IP, Router2 имеет статический IP
Конфигурация Router1 (динамический IP):
configure
set vpn ipsec ike-group IKE-DYNAMIC proposal 1 dh-group '14'
set vpn ipsec ike-group IKE-DYNAMIC proposal 1 encryption 'aes256'
set vpn ipsec ike-group IKE-DYNAMIC proposal 1 hash 'sha256'
set vpn ipsec esp-group ESP-DYNAMIC proposal 1 encryption 'aes256'
set vpn ipsec esp-group ESP-DYNAMIC proposal 1 hash 'sha256'
set vpn ipsec site-to-site peer central-office authentication mode 'rsa'
set vpn ipsec site-to-site peer central-office authentication rsa local-key 'branch-key'
set vpn ipsec site-to-site peer central-office authentication rsa remote-key 'central-remote'
set vpn ipsec site-to-site peer central-office authentication local-id 'branch-office@company.local'
set vpn ipsec site-to-site peer central-office authentication remote-id '203.0.113.100'
set vpn ipsec site-to-site peer central-office connection-type 'initiate'
set vpn ipsec site-to-site peer central-office ike-group 'IKE-DYNAMIC'
set vpn ipsec site-to-site peer central-office local-address 'any'
set vpn ipsec site-to-site peer central-office remote-address '203.0.113.100'
set vpn ipsec site-to-site peer central-office tunnel 1 esp-group 'ESP-DYNAMIC'
set vpn ipsec site-to-site peer central-office tunnel 1 local prefix '10.20.1.0/24'
set vpn ipsec site-to-site peer central-office tunnel 1 remote prefix '10.10.0.0/16'
commit
saveКонфигурация Router2 (статический IP - центральный офис):
configure
set vpn ipsec ike-group IKE-DYNAMIC proposal 1 dh-group '14'
set vpn ipsec ike-group IKE-DYNAMIC proposal 1 encryption 'aes256'
set vpn ipsec ike-group IKE-DYNAMIC proposal 1 hash 'sha256'
set vpn ipsec esp-group ESP-DYNAMIC proposal 1 encryption 'aes256'
set vpn ipsec esp-group ESP-DYNAMIC proposal 1 hash 'sha256'
set vpn ipsec site-to-site peer branch-office authentication mode 'rsa'
set vpn ipsec site-to-site peer branch-office authentication rsa local-key 'central-key'
set vpn ipsec site-to-site peer branch-office authentication rsa remote-key 'branch-remote'
set vpn ipsec site-to-site peer branch-office authentication local-id '203.0.113.100'
set vpn ipsec site-to-site peer branch-office authentication remote-id 'branch-office@company.local'
set vpn ipsec site-to-site peer branch-office connection-type 'respond'
set vpn ipsec site-to-site peer branch-office ike-group 'IKE-DYNAMIC'
set vpn ipsec site-to-site peer branch-office local-address '203.0.113.100'
set vpn ipsec site-to-site peer branch-office remote-address 'any'
set vpn ipsec site-to-site peer branch-office tunnel 1 esp-group 'ESP-DYNAMIC'
set vpn ipsec site-to-site peer branch-office tunnel 1 local prefix '10.10.0.0/16'
set vpn ipsec site-to-site peer branch-office tunnel 1 remote prefix '10.20.1.0/24'
commit
saveКлючевые особенности:
local-address 'any'— использовать любой доступный IP-адресremote-address 'any'— принимать подключения с любого IP-адресаlocal-idиremote-idиспользуют FQDN или email-like идентификаторы для динамических IPconnection-type 'initiate'на стороне с динамическим IPconnection-type 'respond'на стороне со статическим IP
Использование FQDN в качестве remote-id
Для динамических IP-адресов рекомендуется использовать FQDN или email-like идентификаторы:
set vpn ipsec site-to-site peer remote-office authentication local-id 'vyos.headquarters.example.com'
set vpn ipsec site-to-site peer remote-office authentication remote-id 'vyos.branch.example.com'Преимущества FQDN:
- Идентификация не зависит от IP-адреса
- Поддержка DynDNS для динамических IP
- Упрощенное управление в больших сетях
- Человекочитаемые идентификаторы в логах
Сценарий с обоими динамическими IP
Если оба узла имеют динамические IP-адреса, требуется третий узел с статическим IP для инициации соединения или использование DynDNS:
# На обоих узлах
set vpn ipsec site-to-site peer remote-site local-address 'any'
set vpn ipsec site-to-site peer remote-site remote-address '<dyndns-hostname>'
set vpn ipsec site-to-site peer remote-site authentication local-id '<local-fqdn>'
set vpn ipsec site-to-site peer remote-site authentication remote-id '<remote-fqdn>'Конфигурация remote-id и local-id
Назначение идентификаторов IKE
IKE идентификаторы (local-id и remote-id) используются для:
- Идентификация узлов при установлении IPsec туннеля
- Сопоставление публичных ключей с удаленными узлами
- Валидация подключений от правильных источников
- Поддержка динамических IP через неизменяемые идентификаторы
Типы идентификаторов
IP-адрес:
set vpn ipsec site-to-site peer remote-site authentication local-id '203.0.113.10'
set vpn ipsec site-to-site peer remote-site authentication remote-id '198.51.100.20'Используется для статических IP-адресов, простая идентификация.
FQDN (Fully Qualified Domain Name):
set vpn ipsec site-to-site peer remote-site authentication local-id 'router1.example.com'
set vpn ipsec site-to-site peer remote-site authentication remote-id 'router2.example.com'Рекомендуется для динамических IP, поддержка DNS.
Email-like идентификатор:
set vpn ipsec site-to-site peer remote-site authentication local-id 'office-a@company.local'
set vpn ipsec site-to-site peer remote-site authentication remote-id 'office-b@company.local'Удобно для управления в больших сетях, не требует DNS.
Distinguished Name (DN):
set vpn ipsec site-to-site peer remote-site authentication local-id 'C=RU, O=Company, CN=router1'
set vpn ipsec site-to-site peer remote-site authentication remote-id 'C=RU, O=Company, CN=router2'Используется при интеграции с PKI/CA инфраструктурой.
Правила сопоставления идентификаторов
Важно:
local-idна Router1 должен совпадать сremote-idна Router2remote-idна Router1 должен совпадать сlocal-idна Router2
Пример правильной конфигурации:
# Router1
set vpn ipsec site-to-site peer peer2 authentication local-id 'router1.company.com'
set vpn ipsec site-to-site peer peer2 authentication remote-id 'router2.company.com'
# Router2
set vpn ipsec site-to-site peer peer1 authentication local-id 'router2.company.com'
set vpn ipsec site-to-site peer peer1 authentication remote-id 'router1.company.com'Идентификаторы в Hub-and-Spoke топологии
Hub (центральный узел):
# Для каждого Spoke отдельный peer с уникальным remote-id
set vpn ipsec site-to-site peer spoke1 authentication local-id 'hub.company.com'
set vpn ipsec site-to-site peer spoke1 authentication remote-id 'spoke1.company.com'
set vpn ipsec site-to-site peer spoke2 authentication local-id 'hub.company.com'
set vpn ipsec site-to-site peer spoke2 authentication remote-id 'spoke2.company.com'Spoke (филиал):
set vpn ipsec site-to-site peer hub authentication local-id 'spoke1.company.com'
set vpn ipsec site-to-site peer hub authentication remote-id 'hub.company.com'Интеграция с ESP и IKE группами
Выбор криптографических алгоритмов
Рекомендуемые комбинации для различных сценариев:
Максимальная безопасность (государственные организации, финансовый сектор):
# IKE Group
set vpn ipsec ike-group IKE-HIGH-SEC proposal 1 dh-group '20'
set vpn ipsec ike-group IKE-HIGH-SEC proposal 1 encryption 'aes256gcm16'
set vpn ipsec ike-group IKE-HIGH-SEC proposal 1 hash 'sha512'
set vpn ipsec ike-group IKE-HIGH-SEC lifetime '14400'
# ESP Group
set vpn ipsec esp-group ESP-HIGH-SEC proposal 1 encryption 'aes256gcm16'
set vpn ipsec esp-group ESP-HIGH-SEC proposal 1 hash 'sha512'
set vpn ipsec esp-group ESP-HIGH-SEC lifetime '3600'
set vpn ipsec esp-group ESP-HIGH-SEC pfs 'dh-group20'Баланс безопасности и производительности (корпоративные сети):
# IKE Group
set vpn ipsec ike-group IKE-BALANCED proposal 1 dh-group '14'
set vpn ipsec ike-group IKE-BALANCED proposal 1 encryption 'aes256'
set vpn ipsec ike-group IKE-BALANCED proposal 1 hash 'sha256'
set vpn ipsec ike-group IKE-BALANCED lifetime '28800'
# ESP Group
set vpn ipsec esp-group ESP-BALANCED proposal 1 encryption 'aes256'
set vpn ipsec esp-group ESP-BALANCED proposal 1 hash 'sha256'
set vpn ipsec esp-group ESP-BALANCED lifetime '3600'
set vpn ipsec esp-group ESP-BALANCED pfs 'dh-group14'Максимальная производительность (тестовые среды, высокая пропускная способность):
# IKE Group
set vpn ipsec ike-group IKE-PERFORMANCE proposal 1 dh-group '14'
set vpn ipsec ike-group IKE-PERFORMANCE proposal 1 encryption 'aes128gcm16'
set vpn ipsec ike-group IKE-PERFORMANCE proposal 1 hash 'sha256'
set vpn ipsec ike-group IKE-PERFORMANCE lifetime '28800'
# ESP Group
set vpn ipsec esp-group ESP-PERFORMANCE proposal 1 encryption 'aes128gcm16'
set vpn ipsec esp-group ESP-PERFORMANCE proposal 1 hash 'sha256'
set vpn ipsec esp-group ESP-PERFORMANCE lifetime '3600'
set vpn ipsec esp-group ESP-PERFORMANCE pfs 'dh-group14'Множественные proposal для совместимости
Для совместимости с различными VPN-концентраторами можно настроить несколько proposals:
set vpn ipsec ike-group IKE-MULTI proposal 1 dh-group '20'
set vpn ipsec ike-group IKE-MULTI proposal 1 encryption 'aes256gcm16'
set vpn ipsec ike-group IKE-MULTI proposal 1 hash 'sha512'
set vpn ipsec ike-group IKE-MULTI proposal 2 dh-group '14'
set vpn ipsec ike-group IKE-MULTI proposal 2 encryption 'aes256'
set vpn ipsec ike-group IKE-MULTI proposal 2 hash 'sha256'
set vpn ipsec ike-group IKE-MULTI proposal 3 dh-group '14'
set vpn ipsec ike-group IKE-MULTI proposal 3 encryption 'aes128'
set vpn ipsec ike-group IKE-MULTI proposal 3 hash 'sha256'VyOS будет пытаться согласовать параметры в порядке приоритета (proposal 1, затем 2, затем 3).
Dead Peer Detection (DPD)
DPD обеспечивает автоматическое восстановление туннеля при потере связи:
set vpn ipsec ike-group IKE-GROUP dead-peer-detection action 'restart'
set vpn ipsec ike-group IKE-GROUP dead-peer-detection interval '30'
set vpn ipsec ike-group IKE-GROUP dead-peer-detection timeout '120'Параметры:
- action: ‘restart’ (пересоздать туннель), ‘clear’ (удалить SA), ‘hold’ (оставить без изменений)
- interval: Интервал отправки DPD сообщений (секунды)
- timeout: Таймаут ожидания ответа (секунды)
Рекомендации:
- Для стабильных каналов: interval=60, timeout=300
- Для нестабильных каналов: interval=30, timeout=120
- Для критичных соединений: interval=10, timeout=30
Настройка lifetime
IKE lifetime (ISAKMP SA):
set vpn ipsec ike-group IKE-GROUP lifetime '28800' # 8 часовБолее длительный lifetime снижает нагрузку на CPU при перезаключении, но увеличивает окно уязвимости.
ESP lifetime (IPsec SA):
set vpn ipsec esp-group ESP-GROUP lifetime '3600' # 1 часБолее короткий lifetime повышает безопасность за счет частой смены ключей.
Рекомендуемые значения:
- IKE: 28800 (8 часов) - 86400 (24 часа)
- ESP: 3600 (1 час) - 14400 (4 часа)
Пример: Site-to-Site VPN между Yandex Cloud и on-premises
Архитектура решения
Сценарий:
- Yandex Cloud VPC: VyOS router в облаке с публичным IP 51.250.10.50, внутренняя сеть 10.128.0.0/16
- On-Premises: VyOS router в офисе с публичным IP 203.0.113.25, внутренняя сеть 192.168.10.0/24
- Требования: Защищенное соединение между облаком и офисом, RSA-аутентификация, поддержка динамического IP на стороне офиса
Топология сети
┌─────────────────────────────────────────────────────────────┐
│ Yandex Cloud VPC (ru-central1-a) │
│ │
│ ┌──────────────────────────────────┐ │
│ │ VyOS Router (yc-router) │ │
│ │ Public IP: 51.250.10.50 │ │
│ │ Private IP: 10.128.0.10 │ │
│ │ eth0: 51.250.10.50 (WAN) │ │
│ │ eth1: 10.128.0.10 (LAN) │ │
│ └──────────────┬───────────────────┘ │
│ │ │
│ ┌──────────────┴───────────────────┐ │
│ │ Subnet: 10.128.0.0/24 │ │
│ │ VMs: 10.128.0.11 - 10.128.0.254 │ │
│ └──────────────────────────────────┘ │
│ │
└──────────────────────────┬───────────────────────────────────┘
│
│ Internet
│ IPsec VPN Tunnel (RSA Auth)
│
┌──────────────────────────┴───────────────────────────────────┐
│ On-Premises Office │
│ │
│ ┌──────────────────────────────────┐ │
│ │ VyOS Router (office-router) │ │
│ │ Public IP: 203.0.113.25 (dynamic)│ │
│ │ Private IP: 192.168.10.1 │ │
│ │ eth0: 203.0.113.25 (WAN) │ │
│ │ eth1: 192.168.10.1 (LAN) │ │
│ └──────────────┬───────────────────┘ │
│ │ │
│ ┌──────────────┴───────────────────┐ │
│ │ LAN: 192.168.10.0/24 │ │
│ │ Hosts: 192.168.10.10 - .254 │ │
│ └──────────────────────────────────┘ │
│ │
└──────────────────────────────────────────────────────────────┘Генерация ключей
На Yandex Cloud VyOS Router:
vyos@yc-router:~$ configure
vyos@yc-router# generate pki key-pair install yc-cloud-key
Enter private key passphrase: ********
Retype private key passphrase: ********
vyos@yc-router# commit
vyos@yc-router# saveНа On-Premises VyOS Router:
vyos@office-router:~$ configure
vyos@office-router# generate pki key-pair install office-onprem-key
Enter private key passphrase: ********
Retype private key passphrase: ********
vyos@office-router# commit
vyos@office-router# saveОбмен публичными ключами
Экспорт публичного ключа Yandex Cloud:
vyos@yc-router# run show pki key-pair yc-cloud-key public
-----BEGIN PUBLIC KEY-----
MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA1K8Hx5vQ2Lm7pN9wZ...
(копируйте весь ключ)
-----END PUBLIC KEY-----Импорт на On-Premises Router:
vyos@office-router# set pki key-pair yc-remote-key public key '-----BEGIN PUBLIC KEY-----
MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA1K8Hx5vQ2Lm7pN9wZ...
-----END PUBLIC KEY-----'
vyos@office-router# commitАналогично для публичного ключа офиса:
vyos@office-router# run show pki key-pair office-onprem-key public
# Копируйте ключ и импортируйте на yc-router как office-remote-keyКонфигурация Yandex Cloud Router
configure
# IKE Group
set vpn ipsec ike-group IKE-YC-OFFICE proposal 1 dh-group '14'
set vpn ipsec ike-group IKE-YC-OFFICE proposal 1 encryption 'aes256'
set vpn ipsec ike-group IKE-YC-OFFICE proposal 1 hash 'sha256'
set vpn ipsec ike-group IKE-YC-OFFICE lifetime '28800'
set vpn ipsec ike-group IKE-YC-OFFICE dead-peer-detection action 'restart'
set vpn ipsec ike-group IKE-YC-OFFICE dead-peer-detection interval '30'
set vpn ipsec ike-group IKE-YC-OFFICE dead-peer-detection timeout '120'
# ESP Group
set vpn ipsec esp-group ESP-YC-OFFICE proposal 1 encryption 'aes256'
set vpn ipsec esp-group ESP-YC-OFFICE proposal 1 hash 'sha256'
set vpn ipsec esp-group ESP-YC-OFFICE lifetime '3600'
set vpn ipsec esp-group ESP-YC-OFFICE pfs 'dh-group14'
# Site-to-Site Peer Configuration
set vpn ipsec site-to-site peer office-branch authentication mode 'rsa'
set vpn ipsec site-to-site peer office-branch authentication rsa local-key 'yc-cloud-key'
set vpn ipsec site-to-site peer office-branch authentication rsa remote-key 'office-remote-key'
set vpn ipsec site-to-site peer office-branch authentication local-id 'yc-router@yandex-cloud.local'
set vpn ipsec site-to-site peer office-branch authentication remote-id 'office-router@company.local'
set vpn ipsec site-to-site peer office-branch connection-type 'respond'
set vpn ipsec site-to-site peer office-branch ike-group 'IKE-YC-OFFICE'
set vpn ipsec site-to-site peer office-branch local-address '51.250.10.50'
set vpn ipsec site-to-site peer office-branch remote-address 'any'
# Tunnel Configuration
set vpn ipsec site-to-site peer office-branch tunnel 1 esp-group 'ESP-YC-OFFICE'
set vpn ipsec site-to-site peer office-branch tunnel 1 local prefix '10.128.0.0/16'
set vpn ipsec site-to-site peer office-branch tunnel 1 remote prefix '192.168.10.0/24'
commit
saveКонфигурация On-Premises Router
configure
# IKE Group (идентичная YC Router)
set vpn ipsec ike-group IKE-YC-OFFICE proposal 1 dh-group '14'
set vpn ipsec ike-group IKE-YC-OFFICE proposal 1 encryption 'aes256'
set vpn ipsec ike-group IKE-YC-OFFICE proposal 1 hash 'sha256'
set vpn ipsec ike-group IKE-YC-OFFICE lifetime '28800'
set vpn ipsec ike-group IKE-YC-OFFICE dead-peer-detection action 'restart'
set vpn ipsec ike-group IKE-YC-OFFICE dead-peer-detection interval '30'
set vpn ipsec ike-group IKE-YC-OFFICE dead-peer-detection timeout '120'
# ESP Group (идентичная YC Router)
set vpn ipsec esp-group ESP-YC-OFFICE proposal 1 encryption 'aes256'
set vpn ipsec esp-group ESP-YC-OFFICE proposal 1 hash 'sha256'
set vpn ipsec esp-group ESP-YC-OFFICE lifetime '3600'
set vpn ipsec esp-group ESP-YC-OFFICE pfs 'dh-group14'
# Site-to-Site Peer Configuration
set vpn ipsec site-to-site peer yandex-cloud authentication mode 'rsa'
set vpn ipsec site-to-site peer yandex-cloud authentication rsa local-key 'office-onprem-key'
set vpn ipsec site-to-site peer yandex-cloud authentication rsa remote-key 'yc-remote-key'
set vpn ipsec site-to-site peer yandex-cloud authentication local-id 'office-router@company.local'
set vpn ipsec site-to-site peer yandex-cloud authentication remote-id 'yc-router@yandex-cloud.local'
set vpn ipsec site-to-site peer yandex-cloud connection-type 'initiate'
set vpn ipsec site-to-site peer yandex-cloud ike-group 'IKE-YC-OFFICE'
set vpn ipsec site-to-site peer yandex-cloud local-address 'any'
set vpn ipsec site-to-site peer yandex-cloud remote-address '51.250.10.50'
# Tunnel Configuration
set vpn ipsec site-to-site peer yandex-cloud tunnel 1 esp-group 'ESP-YC-OFFICE'
set vpn ipsec site-to-site peer yandex-cloud tunnel 1 local prefix '192.168.10.0/24'
set vpn ipsec site-to-site peer yandex-cloud tunnel 1 remote prefix '10.128.0.0/16'
commit
saveНастройка маршрутизации
На Yandex Cloud Router:
configure
# Статический маршрут для офисной сети через VPN
set protocols static route 192.168.10.0/24 interface tunnel0
# Или через next-hop (если используется VTI)
# set protocols static route 192.168.10.0/24 next-hop <vti-interface-ip>
commit
saveНа On-Premises Router:
configure
# Статический маршрут для облачной сети через VPN
set protocols static route 10.128.0.0/16 interface tunnel0
commit
saveНастройка NAT (опционально)
Если требуется NAT для доступа VPN клиентов в интернет через Yandex Cloud:
На Yandex Cloud Router:
configure
# Исключение VPN трафика из NAT
set nat source rule 100 outbound-interface 'eth0'
set nat source rule 100 source address '10.128.0.0/16'
set nat source rule 100 destination address '192.168.10.0/24'
set nat source rule 100 exclude
# NAT для интернет-трафика
set nat source rule 200 outbound-interface 'eth0'
set nat source rule 200 source address '10.128.0.0/16'
set nat source rule 200 translation address 'masquerade'
commit
saveПример: Hub-and-Spoke VPN с RSA-аутентификацией (VK Cloud)
Архитектура решения
Сценарий:
- Hub (VK Cloud): Центральный VyOS router с публичным IP 89.208.220.50, сеть 10.0.0.0/16
- Spoke 1 (Филиал Москва): VyOS router, динамический IP, сеть 10.10.1.0/24
- Spoke 2 (Филиал Санкт-Петербург): VyOS router, динамический IP, сеть 10.10.2.0/24
- Spoke 3 (Филиал Екатеринбург): VyOS router, статический IP 198.51.100.100, сеть 10.10.3.0/24
Топология сети
┌─────────────────────────────┐
│ VK Cloud (Moscow Region) │
│ │
│ ┌──────────────────────┐ │
│ │ Hub VyOS Router │ │
│ │ 89.208.220.50 │ │
│ │ 10.0.0.1 (LAN) │ │
│ └──────────┬───────────┘ │
│ │ │
│ ┌──────────┴───────────┐ │
│ │ VK Cloud Network │ │
│ │ 10.0.0.0/16 │ │
│ └──────────────────────┘ │
│ │
└──────────────┬──────────────┘
│
┌───────────────────────┼───────────────────────┐
│ │ │
│ │ │
┌───────────▼───────────┐ ┌────────▼────────────┐ ┌────────▼────────────┐
│ Spoke 1: Moscow │ │ Spoke 2: SPb │ │ Spoke 3: Ekb │
│ Dynamic IP │ │ Dynamic IP │ │ Static IP │
│ 10.10.1.0/24 │ │ 10.10.2.0/24 │ │ 198.51.100.100 │
│ │ │ │ │ 10.10.3.0/24 │
└───────────────────────┘ └─────────────────────┘ └─────────────────────┘Генерация ключей на всех узлах
Hub (VK Cloud):
vyos@hub-router:~$ configure
vyos@hub-router# generate pki key-pair install hub-vkcloud-key
vyos@hub-router# commit
vyos@hub-router# saveSpoke 1 (Москва):
vyos@spoke1-moscow:~$ configure
vyos@spoke1-moscow# generate pki key-pair install spoke1-moscow-key
vyos@spoke1-moscow# commit
vyos@spoke1-moscow# saveSpoke 2 (Санкт-Петербург):
vyos@spoke2-spb:~$ configure
vyos@spoke2-spb# generate pki key-pair install spoke2-spb-key
vyos@spoke2-spb# commit
vyos@spoke2-spb# saveSpoke 3 (Екатеринбург):
vyos@spoke3-ekb:~$ configure
vyos@spoke3-ekb# generate pki key-pair install spoke3-ekb-key
vyos@spoke3-ekb# commit
vyos@spoke3-ekb# saveОбмен публичными ключами
Импорт публичных ключей Spokes на Hub:
vyos@hub-router# set pki key-pair spoke1-remote-key public key '<spoke1-public-key>'
vyos@hub-router# set pki key-pair spoke2-remote-key public key '<spoke2-public-key>'
vyos@hub-router# set pki key-pair spoke3-remote-key public key '<spoke3-public-key>'
vyos@hub-router# commitИмпорт публичного ключа Hub на каждый Spoke:
# На Spoke 1
vyos@spoke1-moscow# set pki key-pair hub-remote-key public key '<hub-public-key>'
# На Spoke 2
vyos@spoke2-spb# set pki key-pair hub-remote-key public key '<hub-public-key>'
# На Spoke 3
vyos@spoke3-ekb# set pki key-pair hub-remote-key public key '<hub-public-key>'Конфигурация Hub Router (VK Cloud)
configure
# Общие IKE и ESP группы для всех Spokes
set vpn ipsec ike-group IKE-HUB proposal 1 dh-group '14'
set vpn ipsec ike-group IKE-HUB proposal 1 encryption 'aes256'
set vpn ipsec ike-group IKE-HUB proposal 1 hash 'sha256'
set vpn ipsec ike-group IKE-HUB lifetime '28800'
set vpn ipsec ike-group IKE-HUB dead-peer-detection action 'restart'
set vpn ipsec ike-group IKE-HUB dead-peer-detection interval '30'
set vpn ipsec ike-group IKE-HUB dead-peer-detection timeout '120'
set vpn ipsec esp-group ESP-HUB proposal 1 encryption 'aes256'
set vpn ipsec esp-group ESP-HUB proposal 1 hash 'sha256'
set vpn ipsec esp-group ESP-HUB lifetime '3600'
set vpn ipsec esp-group ESP-HUB pfs 'dh-group14'
# Spoke 1 Configuration (Dynamic IP)
set vpn ipsec site-to-site peer spoke1 authentication mode 'rsa'
set vpn ipsec site-to-site peer spoke1 authentication rsa local-key 'hub-vkcloud-key'
set vpn ipsec site-to-site peer spoke1 authentication rsa remote-key 'spoke1-remote-key'
set vpn ipsec site-to-site peer spoke1 authentication local-id 'hub@vkcloud.local'
set vpn ipsec site-to-site peer spoke1 authentication remote-id 'spoke1-moscow@company.local'
set vpn ipsec site-to-site peer spoke1 connection-type 'respond'
set vpn ipsec site-to-site peer spoke1 ike-group 'IKE-HUB'
set vpn ipsec site-to-site peer spoke1 local-address '89.208.220.50'
set vpn ipsec site-to-site peer spoke1 remote-address 'any'
set vpn ipsec site-to-site peer spoke1 tunnel 1 esp-group 'ESP-HUB'
set vpn ipsec site-to-site peer spoke1 tunnel 1 local prefix '10.0.0.0/16'
set vpn ipsec site-to-site peer spoke1 tunnel 1 remote prefix '10.10.1.0/24'
# Spoke 2 Configuration (Dynamic IP)
set vpn ipsec site-to-site peer spoke2 authentication mode 'rsa'
set vpn ipsec site-to-site peer spoke2 authentication rsa local-key 'hub-vkcloud-key'
set vpn ipsec site-to-site peer spoke2 authentication rsa remote-key 'spoke2-remote-key'
set vpn ipsec site-to-site peer spoke2 authentication local-id 'hub@vkcloud.local'
set vpn ipsec site-to-site peer spoke2 authentication remote-id 'spoke2-spb@company.local'
set vpn ipsec site-to-site peer spoke2 connection-type 'respond'
set vpn ipsec site-to-site peer spoke2 ike-group 'IKE-HUB'
set vpn ipsec site-to-site peer spoke2 local-address '89.208.220.50'
set vpn ipsec site-to-site peer spoke2 remote-address 'any'
set vpn ipsec site-to-site peer spoke2 tunnel 1 esp-group 'ESP-HUB'
set vpn ipsec site-to-site peer spoke2 tunnel 1 local prefix '10.0.0.0/16'
set vpn ipsec site-to-site peer spoke2 tunnel 1 remote prefix '10.10.2.0/24'
# Spoke 3 Configuration (Static IP)
set vpn ipsec site-to-site peer spoke3 authentication mode 'rsa'
set vpn ipsec site-to-site peer spoke3 authentication rsa local-key 'hub-vkcloud-key'
set vpn ipsec site-to-site peer spoke3 authentication rsa remote-key 'spoke3-remote-key'
set vpn ipsec site-to-site peer spoke3 authentication local-id 'hub@vkcloud.local'
set vpn ipsec site-to-site peer spoke3 authentication remote-id 'spoke3-ekb@company.local'
set vpn ipsec site-to-site peer spoke3 connection-type 'initiate'
set vpn ipsec site-to-site peer spoke3 ike-group 'IKE-HUB'
set vpn ipsec site-to-site peer spoke3 local-address '89.208.220.50'
set vpn ipsec site-to-site peer spoke3 remote-address '198.51.100.100'
set vpn ipsec site-to-site peer spoke3 tunnel 1 esp-group 'ESP-HUB'
set vpn ipsec site-to-site peer spoke3 tunnel 1 local prefix '10.0.0.0/16'
set vpn ipsec site-to-site peer spoke3 tunnel 1 remote prefix '10.10.3.0/24'
commit
saveКонфигурация Spoke Routers
Spoke 1 (Москва - Dynamic IP):
configure
set vpn ipsec ike-group IKE-HUB proposal 1 dh-group '14'
set vpn ipsec ike-group IKE-HUB proposal 1 encryption 'aes256'
set vpn ipsec ike-group IKE-HUB proposal 1 hash 'sha256'
set vpn ipsec ike-group IKE-HUB lifetime '28800'
set vpn ipsec ike-group IKE-HUB dead-peer-detection action 'restart'
set vpn ipsec ike-group IKE-HUB dead-peer-detection interval '30'
set vpn ipsec ike-group IKE-HUB dead-peer-detection timeout '120'
set vpn ipsec esp-group ESP-HUB proposal 1 encryption 'aes256'
set vpn ipsec esp-group ESP-HUB proposal 1 hash 'sha256'
set vpn ipsec esp-group ESP-HUB lifetime '3600'
set vpn ipsec esp-group ESP-HUB pfs 'dh-group14'
set vpn ipsec site-to-site peer hub authentication mode 'rsa'
set vpn ipsec site-to-site peer hub authentication rsa local-key 'spoke1-moscow-key'
set vpn ipsec site-to-site peer hub authentication rsa remote-key 'hub-remote-key'
set vpn ipsec site-to-site peer hub authentication local-id 'spoke1-moscow@company.local'
set vpn ipsec site-to-site peer hub authentication remote-id 'hub@vkcloud.local'
set vpn ipsec site-to-site peer hub connection-type 'initiate'
set vpn ipsec site-to-site peer hub ike-group 'IKE-HUB'
set vpn ipsec site-to-site peer hub local-address 'any'
set vpn ipsec site-to-site peer hub remote-address '89.208.220.50'
set vpn ipsec site-to-site peer hub tunnel 1 esp-group 'ESP-HUB'
set vpn ipsec site-to-site peer hub tunnel 1 local prefix '10.10.1.0/24'
set vpn ipsec site-to-site peer hub tunnel 1 remote prefix '10.0.0.0/16'
commit
saveSpoke 2 (Санкт-Петербург - Dynamic IP):
configure
# IKE и ESP группы идентичны Spoke 1
set vpn ipsec site-to-site peer hub authentication mode 'rsa'
set vpn ipsec site-to-site peer hub authentication rsa local-key 'spoke2-spb-key'
set vpn ipsec site-to-site peer hub authentication rsa remote-key 'hub-remote-key'
set vpn ipsec site-to-site peer hub authentication local-id 'spoke2-spb@company.local'
set vpn ipsec site-to-site peer hub authentication remote-id 'hub@vkcloud.local'
set vpn ipsec site-to-site peer hub connection-type 'initiate'
set vpn ipsec site-to-site peer hub ike-group 'IKE-HUB'
set vpn ipsec site-to-site peer hub local-address 'any'
set vpn ipsec site-to-site peer hub remote-address '89.208.220.50'
set vpn ipsec site-to-site peer hub tunnel 1 esp-group 'ESP-HUB'
set vpn ipsec site-to-site peer hub tunnel 1 local prefix '10.10.2.0/24'
set vpn ipsec site-to-site peer hub tunnel 1 remote prefix '10.0.0.0/16'
commit
saveSpoke 3 (Екатеринбург - Static IP):
configure
# IKE и ESP группы идентичны другим Spokes
set vpn ipsec site-to-site peer hub authentication mode 'rsa'
set vpn ipsec site-to-site peer hub authentication rsa local-key 'spoke3-ekb-key'
set vpn ipsec site-to-site peer hub authentication rsa remote-key 'hub-remote-key'
set vpn ipsec site-to-site peer hub authentication local-id 'spoke3-ekb@company.local'
set vpn ipsec site-to-site peer hub authentication remote-id 'hub@vkcloud.local'
set vpn ipsec site-to-site peer hub connection-type 'respond'
set vpn ipsec site-to-site peer hub ike-group 'IKE-HUB'
set vpn ipsec site-to-site peer hub local-address '198.51.100.100'
set vpn ipsec site-to-site peer hub remote-address '89.208.220.50'
set vpn ipsec site-to-site peer hub tunnel 1 esp-group 'ESP-HUB'
set vpn ipsec site-to-site peer hub tunnel 1 local prefix '10.10.3.0/24'
set vpn ipsec site-to-site peer hub tunnel 1 remote prefix '10.0.0.0/16'
commit
saveМаршрутизация Spoke-to-Spoke через Hub
Для обеспечения связности между Spoke-узлами необходимо настроить маршрутизацию через Hub:
На Hub Router:
configure
# Включить IP forwarding (обычно включено по умолчанию)
set system ip forwarding
# Статические маршруты для каждого Spoke
set protocols static route 10.10.1.0/24 interface tunnel0
set protocols static route 10.10.2.0/24 interface tunnel1
set protocols static route 10.10.3.0/24 interface tunnel2
# Или использовать динамическую маршрутизацию (BGP/OSPF)
# Пример с OSPF:
set protocols ospf area 0 network '10.0.0.0/16'
set protocols ospf area 0 network '10.10.1.0/24'
set protocols ospf area 0 network '10.10.2.0/24'
set protocols ospf area 0 network '10.10.3.0/24'
commit
saveНа каждом Spoke Router:
configure
# Маршрут по умолчанию через Hub для других Spoke сетей
set protocols static route 10.10.0.0/16 interface tunnel0
# Или специфические маршруты
set protocols static route 10.10.2.0/24 interface tunnel0
set protocols static route 10.10.3.0/24 interface tunnel0
commit
saveПримеры конфигурации для различных сценариев
Сценарий 1: Site-to-Site с двумя туннелями (резервирование)
Для повышения отказоустойчивости можно настроить два туннеля между одними и теми же узлами:
configure
# Primary Tunnel (основной канал)
set vpn ipsec site-to-site peer remote-site tunnel 1 esp-group 'ESP-PRIMARY'
set vpn ipsec site-to-site peer remote-site tunnel 1 local prefix '10.10.1.0/24'
set vpn ipsec site-to-site peer remote-site tunnel 1 remote prefix '10.10.2.0/24'
set vpn ipsec site-to-site peer remote-site tunnel 1 priority '10'
# Backup Tunnel (резервный канал)
set vpn ipsec site-to-site peer remote-site-backup authentication mode 'rsa'
set vpn ipsec site-to-site peer remote-site-backup authentication rsa local-key 'local-key'
set vpn ipsec site-to-site peer remote-site-backup authentication rsa remote-key 'remote-key-backup'
set vpn ipsec site-to-site peer remote-site-backup remote-address '<backup-ip>'
set vpn ipsec site-to-site peer remote-site-backup tunnel 1 esp-group 'ESP-BACKUP'
set vpn ipsec site-to-site peer remote-site-backup tunnel 1 local prefix '10.10.1.0/24'
set vpn ipsec site-to-site peer remote-site-backup tunnel 1 remote prefix '10.10.2.0/24'
set vpn ipsec site-to-site peer remote-site-backup tunnel 1 priority '20'
commit
saveСценарий 2: VPN с разделением трафика (Split Tunneling)
Настройка множественных туннелей для разных подсетей:
configure
# Tunnel 1: для серверной подсети
set vpn ipsec site-to-site peer remote-site tunnel 1 esp-group 'ESP-SERVERS'
set vpn ipsec site-to-site peer remote-site tunnel 1 local prefix '10.10.1.0/24'
set vpn ipsec site-to-site peer remote-site tunnel 1 remote prefix '10.20.10.0/24'
# Tunnel 2: для рабочих станций
set vpn ipsec site-to-site peer remote-site tunnel 2 esp-group 'ESP-WORKSTATIONS'
set vpn ipsec site-to-site peer remote-site tunnel 2 local prefix '10.10.2.0/24'
set vpn ipsec site-to-site peer remote-site tunnel 2 remote prefix '10.20.20.0/24'
# Tunnel 3: для управляющих систем (с повышенной безопасностью)
set vpn ipsec site-to-site peer remote-site tunnel 3 esp-group 'ESP-MGMT'
set vpn ipsec site-to-site peer remote-site tunnel 3 local prefix '10.10.100.0/24'
set vpn ipsec site-to-site peer remote-site tunnel 3 remote prefix '10.20.100.0/24'
commit
saveСценарий 3: VPN с QoS для приоритизации трафика
configure
# Определение классов трафика
set traffic-policy shaper VPN-SHAPER bandwidth '100mbit'
set traffic-policy shaper VPN-SHAPER class 10 bandwidth '40%'
set traffic-policy shaper VPN-SHAPER class 10 match VOICE ip dscp 'ef'
set traffic-policy shaper VPN-SHAPER class 20 bandwidth '30%'
set traffic-policy shaper VPN-SHAPER class 20 match VIDEO ip dscp 'af41'
set traffic-policy shaper VPN-SHAPER class 30 bandwidth '30%'
set traffic-policy shaper VPN-SHAPER default bandwidth '20%'
# Применение политики к VPN интерфейсу
set interfaces tunnel tun0 traffic-policy out 'VPN-SHAPER'
commit
saveСценарий 4: Интеграция с VRRP для высокой доступности
Два VyOS router в режиме HA с общим виртуальным IP для VPN:
Router 1 (Master):
configure
# VRRP Configuration
set high-availability vrrp group VPN-HA vrid '10'
set high-availability vrrp group VPN-HA interface 'eth0'
set high-availability vrrp group VPN-HA virtual-address '203.0.113.100/24'
set high-availability vrrp group VPN-HA priority '200'
# VPN Configuration using VRRP virtual IP
set vpn ipsec site-to-site peer remote-site local-address '203.0.113.100'
commit
saveRouter 2 (Backup):
configure
# VRRP Configuration
set high-availability vrrp group VPN-HA vrid '10'
set high-availability vrrp group VPN-HA interface 'eth0'
set high-availability vrrp group VPN-HA virtual-address '203.0.113.100/24'
set high-availability vrrp group VPN-HA priority '100'
# Identical VPN Configuration
set vpn ipsec site-to-site peer remote-site local-address '203.0.113.100'
commit
saveКоманды верификации и диагностики
Проверка состояния IPsec
Общий статус IPsec:
show vpn ipsec saПример вывода:
Connection State Uptime Bytes In/Out
------------------------ ------- -------- --------------
office-branch up 00:15:23 125K/98K
Tunnel 1 up 00:15:20 125K/98KДетальная информация о соединении:
show vpn ipsec sa detailВывод включает:
- IKE версию и алгоритмы
- Состояние туннелей
- Время установления и переключения SA
- Счетчики пакетов и байтов
- Remote и Local ID
Проверка IKE SA (Security Associations)
show vpn ike saПример вывода:
Peer ID / IP Local ID / IP
-------------------------------------- ----------------------------
office-router@company.local yc-router@yandex-cloud.local
198.51.100.20 51.250.10.50
State Encrypt Hash D-H Group NAT-T A-Time L-Time
----- ------- ------ --------- ----- ------ ------
up aes256 sha256 14 no 2341 28800Просмотр конфигурации VPN
Полная конфигурация VPN:
show configuration commands | grep vpnКонкретный peer:
show configuration commands | grep "vpn ipsec site-to-site peer office-branch"Проверка ключей
Список всех ключевых пар:
show pki key-pairВывод:
Key Pair Name Type Comment
-------------------- ------ ---------
yc-cloud-key rsa Local key
office-remote-key rsa Remote peerПросмотр публичного ключа:
show pki key-pair yc-cloud-key publicМониторинг трафика
Статистика туннелей:
show vpn ipsec sa statisticsПросмотр счетчиков:
show interfaces tunnelОтладка и логирование
Включение подробного логирования IPsec:
configure
set vpn ipsec logging log-level '2'
commitУровни логирования:
- 0: Критичные ошибки
- 1: Ошибки
- 2: Предупреждения и важные события (рекомендуется)
- 3: Информационные сообщения
- 4: Отладочная информация (только для диагностики)
Просмотр логов IPsec:
show log vpn ipsecМониторинг в реальном времени:
monitor log vpn ipsecСистемные логи:
show log | match ipsec
show log | match charonТестирование связности
Ping через VPN туннель:
ping 10.128.0.11 source-address 192.168.10.1 count 5Traceroute через туннель:
traceroute 10.128.0.11 source-address 192.168.10.1Проверка маршрутизации:
show ip route
show ip route 10.128.0.0/16Устранение неполадок (Troubleshooting)
Ошибки аутентификации
Проблема: Туннель не устанавливается, ошибки аутентификации в логах
Симптомы:
IKE authentication credentials are unacceptable
received NO_PROPOSAL_CHOSEN error notifyРешения:
- Проверка соответствия ключей:
# На Router1
show pki key-pair remote-router-key public
# Сравните с локальным ключом на Router2
show pki key-pair local-router-key publicПубличный ключ Router1 должен точно совпадать с импортированным ключом на Router2.
- Проверка local-id и remote-id:
# На Router1
show configuration commands | grep "authentication.*-id"
# На Router2
show configuration commands | grep "authentication.*-id"Убедитесь, что local-id Router1 = remote-id Router2 и наоборот.
- Проверка режима аутентификации:
show configuration commands | grep "authentication mode"Должен быть установлен mode 'rsa' на обеих сторонах.
Несоответствие ключей (Key Mismatch)
Проблема: Ключи не совпадают или повреждены
Диагностика:
# Экспорт и сравнение ключей
show pki key-pair remote-key public | save /tmp/remote-key.txt
# Сравните с оригинальным ключом удаленного узлаРешение:
- Удалите поврежденный ключ:
configure
delete pki key-pair remote-key
commit- Импортируйте ключ заново:
set pki key-pair remote-key public key '<correct-public-key>'
commit
save- Перезапустите IPsec:
restart vpnПроблемы с proposal (алгоритмы шифрования)
Проблема: NO_PROPOSAL_CHOSEN ошибка
Симптомы:
no matching proposal found, sending NO_PROPOSAL_CHOSENРешение:
Убедитесь, что IKE и ESP группы идентичны на обеих сторонах:
# Router1
show configuration commands | grep "ike-group IKE-GROUP"
show configuration commands | grep "esp-group ESP-GROUP"
# Router2 - должна быть идентичная конфигурацияДобавьте множественные proposals для совместимости:
configure
set vpn ipsec ike-group IKE-GROUP proposal 2 dh-group '14'
set vpn ipsec ike-group IKE-GROUP proposal 2 encryption 'aes128'
set vpn ipsec ike-group IKE-GROUP proposal 2 hash 'sha256'
commitТуннель устанавливается, но трафик не проходит
Проблема: IPsec SA активен, но пинг не работает
Диагностика:
- Проверка tunnel prefixes:
show configuration commands | grep "tunnel.*prefix"Убедитесь, что local и remote prefixes правильно настроены и зеркально отражены на обеих сторонах.
- Проверка firewall правил:
show firewallУбедитесь, что трафик из VPN-сетей разрешен.
- Проверка NAT:
show nat source rulesVPN-трафик должен быть исключен из NAT:
configure
set nat source rule 10 outbound-interface 'eth0'
set nat source rule 10 source address '10.10.1.0/24'
set nat source rule 10 destination address '10.10.2.0/24'
set nat source rule 10 exclude
commit- Проверка маршрутизации:
show ip routeДолжны быть маршруты для удаленных VPN-сетей через туннельный интерфейс.
Dead Peer Detection не работает
Проблема: Туннель не восстанавливается после разрыва
Решение:
configure
set vpn ipsec ike-group IKE-GROUP dead-peer-detection action 'restart'
set vpn ipsec ike-group IKE-GROUP dead-peer-detection interval '30'
set vpn ipsec ike-group IKE-GROUP dead-peer-detection timeout '120'
commit
saveДля более агрессивного DPD:
set vpn ipsec ike-group IKE-GROUP dead-peer-detection interval '10'
set vpn ipsec ike-group IKE-GROUP dead-peer-detection timeout '30'Проблемы с динамическими IP
Проблема: Туннель не устанавливается после смены IP-адреса
Решение:
- На стороне с динамическим IP:
configure
set vpn ipsec site-to-site peer remote-site local-address 'any'
set vpn ipsec site-to-site peer remote-site connection-type 'initiate'
commit- На стороне со статическим IP:
configure
set vpn ipsec site-to-site peer remote-site remote-address 'any'
set vpn ipsec site-to-site peer remote-site connection-type 'respond'
commit- Принудительное переподключение:
reset vpn ipsec-peer <peer-name>Логи для диагностики
Включение детального логирования:
configure
set vpn ipsec logging log-level '3'
set vpn ipsec logging log-modes 'ike'
set vpn ipsec logging log-modes 'esp'
commitПросмотр детальных логов:
show log vpn ipsec | tail 100
monitor log vpn ipsecСистемные логи charon (IKE daemon):
show log | match charonПолный сброс и переподключение
Сброс конкретного peer:
reset vpn ipsec-peer office-branchПолный перезапуск IPsec:
restart vpnПроверка после перезапуска:
show vpn ipsec sa
show vpn ike saЛучшие практики и рекомендации
Управление ключами
1. Длина ключей:
- Минимум 2048 бит для корпоративных сетей
- 3072 бита для повышенной безопасности
- 4096 бит для критичных государственных систем
# Рекомендуемая генерация
generate pki key-pair type rsa length 3072 install <key-name>2. Регулярная ротация ключей:
- Меняйте ключи каждые 12-24 месяца
- Немедленная ротация при подозрении на компрометацию
- Документируйте процесс ротации
Процесс ротации:
# 1. Генерация новых ключей
generate pki key-pair install new-key
# 2. Обмен публичными ключами
# 3. Обновление конфигурации VPN
configure
set vpn ipsec site-to-site peer remote authentication rsa local-key 'new-key'
commit
# 4. После проверки - удаление старых ключей
delete pki key-pair old-key
commit
save3. Защита приватных ключей:
- Всегда используйте парольную защиту для приватных ключей
- Ограничьте доступ к конфигурации VyOS
- Регулярное резервное копирование ключей в защищенное хранилище
- Не передавайте приватные ключи по незащищенным каналам
4. Централизованное управление:
Для больших сетей используйте систему управления ключами:
# Скрипт для автоматизированного обмена ключами
#!/bin/bash
ROUTERS="router1 router2 router3"
for router in $ROUTERS; do
ssh vyos@$router "show pki key-pair local-key public" > ${router}-public.key
doneВыбор криптографических параметров
1. Diffie-Hellman группы:
- Группа 14 (2048-bit MODP): Минимально рекомендуемая
- Группа 19 (256-bit ECP): Оптимальный баланс
- Группа 20 (384-bit ECP): Максимальная безопасность
# Рекомендуемая конфигурация
set vpn ipsec ike-group IKE-SECURE proposal 1 dh-group '19'2. Алгоритмы шифрования:
- AES-256: Стандарт для корпоративных сетей
- AES-256-GCM: Современный AEAD режим с аутентификацией
- AES-128-GCM: Для высокопроизводительных систем
# Современная безопасная конфигурация
set vpn ipsec ike-group IKE-MODERN proposal 1 encryption 'aes256gcm16'
set vpn ipsec esp-group ESP-MODERN proposal 1 encryption 'aes256gcm16'3. Функции хеширования:
- SHA-256: Стандарт для большинства применений
- SHA-384/512: Для систем с повышенными требованиями
4. Perfect Forward Secrecy (PFS):
Всегда включайте PFS для защиты от компрометации долгосрочных ключей:
set vpn ipsec esp-group ESP-GROUP pfs 'dh-group19'Настройка lifetime
Рекомендации по времени жизни SA:
IKE Lifetime:
set vpn ipsec ike-group IKE-GROUP lifetime '28800' # 8 часов- Не устанавливайте слишком короткий lifetime (< 1 час) - увеличивает нагрузку на CPU
- Оптимальный диапазон: 8-24 часа
- Для критичных систем: 4-8 часов
ESP Lifetime:
set vpn ipsec esp-group ESP-GROUP lifetime '3600' # 1 час- Оптимальный диапазон: 1-4 часа
- Для высокозагруженных каналов: 30-60 минут
- Учитывайте объем трафика и производительность
Мониторинг и логирование
1. Настройка уровней логирования:
configure
# Для продакшена - уровень 2 (warnings)
set vpn ipsec logging log-level '2'
# Для отладки - уровень 3-4
set vpn ipsec logging log-level '3'
set vpn ipsec logging log-modes 'ike'
set vpn ipsec logging log-modes 'esp'
set vpn ipsec logging log-modes 'cfg'
commit
save2. Автоматизированный мониторинг:
Создайте скрипт для проверки состояния VPN:
#!/bin/bash
# /config/scripts/vpn-monitor.sh
PEERS="office-branch datacenter-vpn"
LOG_FILE="/var/log/vpn-monitor.log"
for peer in $PEERS; do
STATUS=$(vtysh -c "show vpn ipsec sa | grep $peer | grep -c 'up'")
if [ $STATUS -eq 0 ]; then
echo "$(date): WARNING - VPN peer $peer is DOWN" >> $LOG_FILE
# Попытка восстановления
vtysh -c "reset vpn ipsec-peer $peer"
fi
doneЗапуск через cron:
configure
set system task-scheduler task vpn-monitor interval '5m'
set system task-scheduler task vpn-monitor executable path '/config/scripts/vpn-monitor.sh'
commit3. SNMP мониторинг:
configure
set service snmp community public authorization 'ro'
set service snmp community public network '10.0.0.0/8'
commit4. Syslog интеграция:
configure
set system syslog host 10.0.1.100 facility all level 'info'
set system syslog host 10.0.1.100 facility security level 'warning'
commitПроизводительность и оптимизация
1. Настройка MTU для VPN:
configure
# Уменьшение MTU для избежания фрагментации
set interfaces ethernet eth0 mtu '1500'
set interfaces tunnel tun0 mtu '1400'
# Включение MSS clamping
set policy route MSS-CLAMP rule 10 protocol 'tcp'
set policy route MSS-CLAMP rule 10 tcp flags 'SYN'
set policy route MSS-CLAMP rule 10 set tcp-mss '1360'
commit2. Аппаратное ускорение (если поддерживается):
# Проверка поддержки AES-NI
show system cpu features3. Оптимизация для высокопроизводительных каналов:
configure
# Использование GCM режима для аппаратного ускорения
set vpn ipsec ike-group IKE-PERF proposal 1 encryption 'aes128gcm16'
set vpn ipsec esp-group ESP-PERF proposal 1 encryption 'aes128gcm16'
# Увеличение буферов (при необходимости)
set system sysctl parameter net.core.rmem_max value '134217728'
set system sysctl parameter net.core.wmem_max value '134217728'
commitБезопасность и hardening
1. Firewall для VPN трафика:
configure
# Разрешить только IKE и ESP
set firewall name WAN_LOCAL rule 100 action 'accept'
set firewall name WAN_LOCAL rule 100 protocol 'udp'
set firewall name WAN_LOCAL rule 100 destination port '500'
set firewall name WAN_LOCAL rule 100 description 'Allow IKE'
set firewall name WAN_LOCAL rule 110 action 'accept'
set firewall name WAN_LOCAL rule 110 protocol 'udp'
set firewall name WAN_LOCAL rule 110 destination port '4500'
set firewall name WAN_LOCAL rule 110 description 'Allow NAT-T'
set firewall name WAN_LOCAL rule 120 action 'accept'
set firewall name WAN_LOCAL rule 120 protocol 'esp'
set firewall name WAN_LOCAL rule 120 description 'Allow ESP'
commit2. Ограничение доступа к управлению:
configure
set service ssh access-control allow from '10.0.0.0/8'
set service ssh access-control allow from '192.168.0.0/16'
set service ssh access-control deny from '0.0.0.0/0'
set service https access-control allow from '10.0.0.0/8'
set service https access-control deny from '0.0.0.0/0'
commit3. Rate limiting для защиты от DoS:
configure
set firewall name WAN_LOCAL rule 90 action 'drop'
set firewall name WAN_LOCAL rule 90 protocol 'udp'
set firewall name WAN_LOCAL rule 90 destination port '500,4500'
set firewall name WAN_LOCAL rule 90 recent count '10'
set firewall name WAN_LOCAL rule 90 recent time '60'
set firewall name WAN_LOCAL rule 90 state new 'enable'
commitДокументирование конфигурации
1. Описания в конфигурации:
configure
set vpn ipsec site-to-site peer office-branch description 'VPN to Moscow Office'
set vpn ipsec ike-group IKE-CORPORATE description 'Corporate VPN IKE parameters'
set vpn ipsec esp-group ESP-CORPORATE description 'Corporate VPN ESP parameters'
commit2. Ведение changelog:
# Добавление комментария к конфигурации
configure
commit comment "Added VPN tunnel to new branch office in SPb"3. Резервное копирование:
# Автоматическое резервное копирование конфигурации
configure
set system task-scheduler task backup-config crontab-spec '0 2 * * *'
set system task-scheduler task backup-config executable path '/config/scripts/backup.sh'
commitСкрипт резервного копирования:
#!/bin/bash
# /config/scripts/backup.sh
DATE=$(date +%Y%m%d-%H%M%S)
cp /config/config.boot /config/backups/config.boot.$DATE
# Оставляем последние 30 копий
ls -t /config/backups/config.boot.* | tail -n +31 | xargs rm -fТестирование и валидация
1. Регулярное тестирование:
- Проверка связности через VPN еженедельно
- Тестирование failover механизмов ежемесячно
- Проверка восстановления после отключения питания
2. Нагрузочное тестирование:
# iperf3 тестирование пропускной способности VPN
iperf3 -c 10.10.2.1 -t 60 -P 43. Проверка безопасности:
# Валидация криптографических параметров
show vpn ipsec sa detail | grep -E "encr|hash|DH"Рекомендации по безопасности
Защита приватных ключей
1. Парольная защита:
Всегда генерируйте ключи с парольной защитой:
generate pki key-pair install secure-key
# Введите надежный пароль при запросе2. Ограничение доступа к системе:
configure
# Двухфакторная аутентификация через RADIUS/TACACS+
set system login radius server 10.0.1.50 key 'radius-secret'
set system login user admin authentication encrypted-password '<hash>'
set system login user admin authentication radius
# Отключение root входа
set system login user root authentication encrypted-password '!'
commit3. Аудит доступа:
configure
set system syslog global facility auth level 'info'
set system syslog global facility authpriv level 'info'
commitЗащита от атак
1. Anti-replay защита:
IPsec автоматически включает anti-replay защиту. Проверка:
show vpn ipsec sa detail | grep -i replay2. DPD для обнаружения атак:
configure
set vpn ipsec ike-group IKE-GROUP dead-peer-detection action 'restart'
set vpn ipsec ike-group IKE-GROUP dead-peer-detection interval '30'
commit3. Rate limiting:
configure
set firewall name WAN_LOCAL rule 85 action 'drop'
set firewall name WAN_LOCAL rule 85 protocol 'udp'
set firewall name WAN_LOCAL rule 85 destination port '500'
set firewall name WAN_LOCAL rule 85 recent count '20'
set firewall name WAN_LOCAL rule 85 recent time '60'
commitСоответствие стандартам
1. Соответствие ГОСТ (для РФ):
VyOS поддерживает стандартные алгоритмы. Для ГОСТ криптографии требуется дополнительная интеграция.
2. Соответствие PCI DSS:
- Использование AES-256 или выше
- Регулярная ротация ключей (минимум ежегодно)
- Логирование всех событий безопасности
- Ограничение административного доступа
3. Соответствие HIPAA:
- Шифрование всех данных в транзите (AES-256)
- Аутентификация узлов (RSA 2048+ бит)
- Аудит и логирование доступа
- Регулярные проверки безопасности
Планирование disaster recovery
1. Документирование конфигурации:
- Схемы топологии VPN
- Список всех публичных ключей и их расположение
- Процедуры восстановления
2. Резервные копии:
# Автоматическое резервирование конфигурации и ключей
configure
set system task-scheduler task daily-backup crontab-spec '0 3 * * *'
set system task-scheduler task daily-backup executable path '/config/scripts/full-backup.sh'
commit3. Тестирование восстановления:
Регулярно проверяйте процесс восстановления:
- Восстановление конфигурации из резервной копии
- Импорт ключей на новую систему
- Проверка работоспособности VPN после восстановления
Заключение
RSA-аутентификация для IPsec VPN в VyOS предоставляет надежный и масштабируемый метод защиты VPN-туннелей. Ключевые преимущества включают:
- Безопасность: Асимметричная криптография исключает риски, связанные с общими ключами
- Масштабируемость: Упрощенное управление ключами в больших сетях
- Гибкость: Поддержка динамических IP-адресов и различных топологий
- Совместимость: Стандартные протоколы обеспечивают совместимость с различными VPN-решениями
Основные рекомендации:
- Используйте ключи длиной минимум 2048 бит (рекомендуется 3072 бита)
- Регулярно ротируйте ключи (каждые 12-24 месяца)
- Защищайте приватные ключи паролями
- Используйте современные криптографические алгоритмы (AES-256, SHA-256, DH-группа 14+)
- Включайте PFS (Perfect Forward Secrecy)
- Настраивайте Dead Peer Detection для автоматического восстановления
- Мониторьте состояние VPN-туннелей
- Регулярно обновляйте VyOS для получения исправлений безопасности
- Документируйте конфигурацию и процедуры
- Проводите регулярное тестирование и валидацию
При правильной настройке и управлении RSA-аутентификация обеспечивает надежную защиту для VPN-инфраструктуры любого масштаба - от простых Site-to-Site соединений до сложных Hub-and-Spoke и Full-Mesh топологий.