В наше время передавать через интернет личные или корпоративные данные в открытом виде может только псих. Если данные покидают просторы родной сети, то их неплохо бы зашифровать. Этим и займемся. У нас в распоряжении два роутера Cisco, за каждым из которых наши приватные сети. Что ж, объединим их используя технологию IPSec .
Конфигаруция VPN-a проходит в несколько этапов
- Настройка ISAKMP
- Настройка ipsec transformorm set
- Настройка ACL для фильтрации целевого траффика
- Настройка crypto map
- Применение crypto map к интерфейсу
- Настройка ACL для прохождения шифрованного трафика
Этап 1. Настройка ISAKMP.
В начале взаимодействия при построении IPSec туннеля создается мини-тунель для передачи служебных данных. В принципе он после построения основного туннеля никуда не девается. Для построения используется ISAKMP (Internet Security Association and Key Management Protocol) Для его настройки необходимо указать ряд параметров, которые используются в этой первой фазе построение туннеля.
- алгоритм шифрования
- алгоритм аутентификации
- ключ
- версия алгоритма Диффи-Хелмана (используется 1,2 и 5)
- время жизни туннеля
Для настройки вводим комманды
R1(config)#crypto isakmp policy 25Все эти параметры должны совпадать на обоих роутерах, иначе туннель не построится. Если какие-то команды не буду т отображаться в running-config, то это только потому что повторились параметры по-умолчанию. Разберем более подробно параметры команд.
R1(config-isakmp)# encryption 3des
R1(config-isakmp)# hash md5
R1(config-isakmp)# group 1
R1(config-isakmp)# authentication pre-share
R1(config-isakmp)# lifetime 3600
crypto isakmp policy 25 — параметр 25 может быть любым. От его значения построение туннеля не зависит. Можно создать несколько политик. Тогда роутеры будут искать общую совпадающую политику. Но надо учитывать, что роутеры будут перебирать политики начиная с 1-й, так что разумно будет указывать более стойкие политики перед слабыми.
Шифрование:
R1(config-isakmp)#encryption ?des — 56-битное шифрование. При современных мощностях вычислительной техники взламывается около 24 часов
3des Three key triple DES
aes AES - Advanced Encryption Standard.
des DES - Data Encryption Standard (56 bit keys).
3des — данные шифруются три раза алгоритмом des. Шифрование более стойкое, но тем не менее уязвимое
aes — самый стойкий алгоритм из предложенных. При его выборе можно также указать длину ключа (128, 192 или 256 бит)
Хеширование обеспечивает уверенность в том, что данные не изменялись посторонними личностями. Нам доступны два алгоритма
R1(config-isakmp)#hash ?
md5 Message Digest 5
sha Secure Hash Standard
Механизм sha считается более надежным.
Аутентификация:
R1(config-isakmp)#authentication ?Ну и время жизни придумываете сами в предложенном диапазоне
pre-share Pre-Shared Key
rsa-encr Rivest-Shamir-Adleman Encryption
rsa-sig Rivest-Shamir-Adleman Signature
R1(config-isakmp)#lifetime ?<60-86400> lifetime in seconds
Также на первом этапе необходимо указать ключ (preshared key), так как мы используем аутентификацию этим методом.
R1(config)#crypto isakmp key 0 SUPERSECRET address 64.155.10.1SUPERSECRET — это сам ключ, придумываете его сами, не ограничивайте себя в фантазии. Ключи должны совпадать на обоих роутерах.
64.155.10.1 — адрес удаленного хоста, с которым планируется наладить связь
Этап 2. Настройка ipsec transformorm set
Настроим методы шифрования и аутентификации данных (authentication header и encapsulation security payload), передаваемых между сетями. Параметры должны совпадать на обих роутерах.
R1(config)#crypto ipsec transform-set MyTS ?
ah-md5-hmac AH-HMAC-MD5 transform
ah-sha-hmac AH-HMAC-SHA transform
comp-lzs IP Compression using the LZS compression algorithm
esp-3des ESP transform using 3DES(EDE) cipher (168 bits)
esp-aes ESP transform using AES cipher
esp-des ESP transform using DES cipher (56 bits)
esp-md5-hmac ESP transform using HMAC-MD5 auth
esp-null ESP transform w/o cipher
esp-seal ESP transform using SEAL cipher (160 bits)
esp-sha-hmac ESP transform using HMAC-SHA auth
R1(config)#crypto ipsec transform-set MyTS ah-md5-hmac esp-3des
R1(cfg-crypto-trans)#mode tunnel
В целом, ничего нового. В синтаксисе после указания методов шифрования опционально можно указать длину ключа. Доступно два режима передачи: transport и tunnel. В первом режиме шифруется только содержимое пакета, во втором режиме весь пакет вместе с заголовками третьего уровня.
Также можно указать время жизни в секундах
R1(config)#crypto ipsec security-association lifetime seconds 18000Этап 3. Настройка ACL для фильтрации целевого траффика
Тут все просто. Создаем ACL, где указываем, какой траффик шифровать. Логично указать там данные проходящие между приватными сетями
R1(config)#ip access-list extended 105
R1(config-ext-nacl)#permit ip 10.1.0.0 0.0.255.255 10.2.0.0 0.0.255.255Этап 4. Настройка crypto map
Пришло время соединить воедино наш transform-set, ACL и привязать его к адресу уделенного хоста
R1(config)#crypto map CMap 10 ipsec-isakmpЭтап 5. Применение crypto map к интерфейсу
% NOTE: This new crypto map will remain disabled until a peer
and a valid access list have been configured.
R1(config-crypto-map)#set peer 64.155.10.1
R1(config-crypto-map)#match 105
R1(config-crypto-map)#set transform-set MyTS
R1(config-crypto-map)#
На этом этапе все crypto сконфигурированы, осталось дело за малым. Применяем созданный crypto map к интерфейсу, который смотрит в мир и с которого будет строиться тунель.
R1(config)#interface fa0/0
R1(config-if)#crypto map CMap
R1(config-if)#
Не надо забывать про наличие маршрута в удаленную сеть. Если такого нет, то добавляем маршрут
R1(config)#ip route 10.2.0.0 255.255.0.0 64.155.10.1Этап 6. Настройка ACL для прохождения шифрованного трафика
Разрешаем шифрованый траффик. Можно просто разрешить протоколы
R1(config)#ip access-list extended 110
R1(config-ext-nacl)#permit ahp host хх.хх.хх.хх host уу.уу.уу.уу
R1(config-ext-nacl)#permit esp host хх.хх.хх.хх host уу.уу.уу.уу
R1(config-ext-nacl)#permit udp host хх.хх.хх.хх host уу.уу.уу.уу
Если все сделано правильно, то туннель должен подняться
R1#show crypto session
Crypto session current status
Interface: FastEthernet0/0.10
Session status: UP-ACTIVE
Peer: 64.155.10.12 port 500
IKE SA: local 64.155.10.2 remote 64.155.10.1 /500 Active
IPSEC FLOW: permit ip 10.1.0.0/255.255.0.0 10.2.0.0/255.255.0.0
Active SAs: 4, origin: crypto map
No comments:
Post a Comment