Ключевая схема RSA#
Описание#
Ключевая схема RSA может использоваться для таких сервисов, как обмен ключами и для организации шифрования. Для того чтобы стек протоколов IPSec работал с динамическими адресами с одной и другой стороны, необходимо использовать ключи RSA для аутентификации. Настройка данной ключевой схемы проста и осуществляется быстро.
Настройка#
Пример настройки#
Пример настройки RSA между двумя маршрутизаторами.
Сначала на обоих маршрутизаторах необходимо выполнить команду
generate vpn rsa-key bits 2048
в режиме Администрирования.
Опционально можно выбрать длину ключа, отличную от значения
по умолчанию - 2048.
fakel@left# run generate vpn rsa-key bits 2048
Generating rsa-key to /config/ipsec.d/rsa-keys/localhost.key
Your new local RSA key has been generated
The public portion of the key is:
0sAQO2335[long string here]
Обязательно скопируйте или запиши данный ключ RSA, так как его нужно будет на противоположный маршрутизатор.
set vpn rsa-keys rsa-key-name LEFT rsa-key KEYGOESHERE
После подготовки RSA ключей, можно переходить к настройке IPsec.
Основные моменты:
Поскольку оба маршрутизатора не знают своих активных публичных адресов, нужно установить локальный адрес пира в значение «any».
На инициаторе нужно установить адрес пира в его публичный адрес, а на ответчике - только id.
На инициаторе нужно установить опцию remote-id, чтобы он мог правильно идентифицировать IKE-трафик от ответчика.
На ответчике нужно установить локальный id, чтобы инициатор мог знать, кто с ним разговаривает, чтобы точка №3 работала.
Включить обход NAT с обеих сторон, выполнив команду
set vpn ipsec nat-traversal enable
.
Команды для настройки первого маршрутизатора:
set vpn rsa-keys rsa-key-name RIGHT rsa-key <PUBLIC KEY FROM THE RIGHT>
set vpn ipsec ipsec-interfaces interface eth0
set vpn ipsec nat-traversal 'enable'
set vpn ipsec esp-group MyESPGroup proposal 1 encryption aes128
set vpn ipsec esp-group MyESPGroup proposal 1 hash sha1
set vpn ipsec ike-group MyIKEGroup proposal 1 dh-group 2
set vpn ipsec ike-group MyIKEGroup proposal 1 encryption aes128
set vpn ipsec ike-group MyIKEGroup proposal 1 hash sha1
set vpn ipsec site-to-site peer 192.0.2.60 authentication mode rsa
set vpn ipsec site-to-site peer 192.0.2.60 authentication id @LEFT
set vpn ipsec site-to-site peer 192.0.2.60 authentication rsa-key-name RIGHT
set vpn ipsec site-to-site peer 192.0.2.60 authentication remote-id RIGHT
set vpn ipsec site-to-site peer 192.0.2.60 default-esp-group MyESPGroup
set vpn ipsec site-to-site peer 192.0.2.60 ike-group MyIKEGroup
set vpn ipsec site-to-site peer 192.0.2.60 local-address any
set vpn ipsec site-to-site peer 192.0.2.60 connection-type initiate
set vpn ipsec site-to-site peer 192.0.2.60 tunnel 1 local prefix 192.168.99.1/32
set vpn ipsec site-to-site peer 192.0.2.60 tunnel 1 remote prefix 192.168.99.2/32
Команды для настройки второго маршрутизатора:.
set vpn rsa-keys rsa-key-name LEFT rsa-key <PUBLIC KEY FROM THE LEFT>
set vpn ipsec ipsec-interfaces interface eth0
set vpn ipsec nat-traversal 'enable'
set vpn ipsec esp-group MyESPGroup proposal 1 encryption aes128
set vpn ipsec esp-group MyESPGroup proposal 1 hash sha1
set vpn ipsec ike-group MyIKEGroup proposal 1 dh-group 2
set vpn ipsec ike-group MyIKEGroup proposal 1 encryption aes128
set vpn ipsec ike-group MyIKEGroup proposal 1 hash sha1
set vpn ipsec site-to-site peer @LEFT authentication id @RIGHT
set vpn ipsec site-to-site peer @LEFT authentication mode rsa
set vpn ipsec site-to-site peer @LEFT authentication rsa-key-name LEFT
set vpn ipsec site-to-site peer @LEFT connection-type respond
set vpn ipsec site-to-site peer @LEFT default-esp-group MyESPGroup
set vpn ipsec site-to-site peer @LEFT ike-group MyIKEGroup
set vpn ipsec site-to-site peer @LEFT local-address any
set vpn ipsec site-to-site peer @LEFT tunnel 1 local prefix 192.168.99.2/32
set vpn ipsec site-to-site peer @LEFT tunnel 1 remote prefix 192.168.99.1/32
Список команд#
Основные настройки#
- • set vpn rsa-keys rsa-key-name <name> rsa-key <text>#
- • set vpn ipsec ipsec-interfaces interface <ethN>#
- • set vpn ipsec nat-traversal <enable | disable>#
- • set vpn ipsec esp-group <text> proposal <1-65535> encryption <type>#
- • set vpn ipsec esp-group <text> proposal <1-65535> hash <type>#
- • set vpn ipsec ike-group <text> proposal <1-65535> dh-group <number>#
- • set vpn ipsec ike-group <text> proposal <1-65535> encryption <type>#
- • set vpn ipsec ike-group <text> proposal <1-65535> hash <type>#
- • set vpn ipsec site-to-site peer <x.x.x.x> authentication mode <pre-shared-secret | rsa | x509>#
- • set vpn ipsec site-to-site peer <x.x.x.x> authentication id <test>#
- • set vpn ipsec site-to-site peer <x.x.x.x> authentication rsa-key-name <text>#
- • set vpn ipsec site-to-site peer <x.x.x.x> authentication remote-id <text>#
- • set vpn ipsec site-to-site peer <x.x.x.x> default-esp-group <text>#
- • set vpn ipsec site-to-site peer <x.x.x.x> ike-group <text>#
- • set vpn ipsec site-to-site peer <x.x.x.x> local-address <x.x.x.x>#
- • set vpn ipsec site-to-site peer <x.x.x.x> connection-type <initiate | respond>#
- • set vpn ipsec site-to-site peer <x.x.x.x> tunnel <0-4294967295> local prefix <x.x.x.x/x>#
- • set vpn ipsec site-to-site peer <x.x.x.x> tunnel <0-4294967295> remote prefix <x.x.x.x/x>#