Cisco ASA/Easy VPN
Материал из Xgu.ru
- Автор: Наташа Самойленко
Cisco ASA 5505 может быть Easy VPN клиентом, остальные модели Cisco ASA поддерживают только функциональность сервера. В примерах на странице в роли клиента используется Cisco VPN Client.
Содержание |
[править] Общие принципы настройки Easy VPN на Cisco ASA
[править] Политика ISAKMP
В документации Cisco термины IKE и ISAKMP, как правило, взаимозаменяемы.
Политика ISAKMP указывает параметры первой фазы:
- Метод аутентификации (пароль, сертификаты)
- Протокол шифрования (DES, 3DES, AES)
- Алгоритм хеширования (MD5, SHA)
- Группа DH
- Время жизни SA
В Cisco ASA, кроме настройки политики ISAKMP, необходимо также включить ISAKMP на интерфейсе.
[править] Tunnel-group
Tunnel-group это объект, в котором при настройке Easy VPN, указываются такие параметры (перечислены не все доступные параметры, а только примеры):
- В режиме ipsec-attributes:
- Настройки аутентификации устройств:
- При аутентификации по паролю -- пароль
- при аутентификации по сертификатам -- соответствующая trustpoint.
- Настройки аутентификации пользователей (xauth или hybrid):
- Включается аутентификация xauth и указывается как она будет выполняться
- по умолчанию xauth включена и аутентификация выполняется по локальной базе пользователей
- Включается аутентификация hybrid (в Cisco VPN клиенте она называется mutual)
- Включается аутентификация xauth и указывается как она будет выполняться
- Настройки аутентификации устройств:
- В режиме general-attributes:
- Привязывается пул адресов, который соответствует этой tunnel-group
- Привязывается соответствующая групповая политика
|
В ASDM tunnel-group называется Connection Profile |
Пример настройки:
tunnel-group SALES type remote-access tunnel-group SALES general-attributes address-pool RVPN default-group-policy SALES_GROUP tunnel-group SALES ipsec-attributes pre-shared-key cisco123
[править] Tunnel-group DefaultRAGroup
В конфигурации существует tunnel-group DefaultRAGroup из которой наследуются все настройки, которые не были заданы явно в созданных tunnel-group. Её можно изменять.
По умолчанию она выглядит так (параметры webvpn и ppp удалены):
sh run all tunnel-group DefaultRAGroup tunnel-group DefaultRAGroup type remote-access tunnel-group DefaultRAGroup general-attributes no address-pool no ipv6-address-pool authentication-server-group LOCAL accounting-server-group RADIUS default-group-policy DfltGrpPolicy no dhcp-server no strip-realm no password-management no override-account-disable no strip-group no authorization-required authorization-dn-attributes CN OU tunnel-group DefaultRAGroup ipsec-attributes no pre-shared-key peer-id-validate req no chain no trust-point isakmp keepalive threshold 1500 retry 2 no radius-sdi-xauth isakmp ikev1-user-authentication xauth
[править] Групповая политика (group-policy)
После прохождения аутентификации (устройств и пользователей) на клиента назначаются параметры, которые указываются в групповой политике.
В group-policy можно задать, например, такие параметры:
- ACL для фильтрации трафика
- Политику туннелирования трафика и какой трафик попадет в туннель
- DNS-сервер
- и др.
Групповая политика может быть настроена локально или на RADIUS-сервере. Для того чтобы задать групповую политику на RADIUS, можно использовать несколько вариантов.
Внешняя group-policy:
Для того чтобы обращаться за параметрами для group-policy на RADIUS-сервер, необходимо указать в настройках ASA, что политика внешняя:
group-policy TEST_GROUP external server-group MY_RADIUS password cisco123
Для того чтобы задать соответствующие атрибуты на RADIUS, необходимо создать пользователя TEST_GROUP с паролем cisco123 и указать атрибуты для него.
Xauth на RADIUS-сервере:
Если аутентификация будет выполняться через RADIUS, который связан с существующим каталогом пользователей, например AD, то удобней будет сделать внешней аутентификацию xauth. Политики аутентификации на RADIUS-сервере можно привязать к группам пользователей в AD и для политики назначить атрибуты.
Настройка xauth на RADIUS-сервере:
tunnel-group TEST type remote-access tunnel-group TEST general-attributes authentication-server-group MY_RADIUS
Эти методы не исключают друг друга и могут использоваться вместе. Атрибуты привязанные к пользователю будут перебивать соответствующие атрибуты для групповой политики. Те атрибуты, которые не заданы для пользователя, будут наследоваться из групповой политики. Те, которые не заданы для групповой, будут наследоваться из политики по умолчанию
[править] Групповая политика по умолчанию DfltGrpPolicy
В конфигурации существует групповая политика по умолчанию DfltGrpPolicy из которой наследуются все настройки, которые не были заданы явно в созданных групповых политиках. Её можно изменять.
По умолчанию она выглядит так (параметры webvpn удалены):
sh run all DfltGrpPolicy group-policy DfltGrpPolicy internal group-policy DfltGrpPolicy attributes banner none wins-server none dns-server none dhcp-network-scope none vpn-access-hours none vpn-simultaneous-logins 2000 vpn-idle-timeout none vpn-session-timeout none vpn-filter none vpn-tunnel-protocol IPSec webvpn password-storage enable ip-comp disable re-xauth disable group-lock none pfs disable ipsec-udp disable ipsec-udp-port 10000 split-tunnel-policy tunnelall split-tunnel-network-list none default-domain none split-dns none intercept-dhcp 255.255.255.255 disable secure-unit-authentication disable user-authentication disable user-authentication-idle-timeout 30 ip-phone-bypass disable leap-bypass disable nem disable backup-servers keep-client-config msie-proxy server none msie-proxy method no-modify msie-proxy except-list none msie-proxy local-bypass disable nac disable nac-sq-period 300 nac-reval-period 36000 nac-default-acl none address-pools value vpn_users client-firewall none client-access-rule none
[править] Transform-set
Transform-set это объект, который описывает параметры второй фазы. В Cisco ASA не поддерживается протокол AH, есть только ESP.
В transform-set указывается:
- Протокол ESP
- Протокол шифрования (DES, 3DES, AES)
- Алгоритм хеширования (MD5, SHA)
[править] Crypto map. Dynamic crypto map
Crypto map это объект, в котором находятся наборы правил, относящиеся к разным туннелям IPsec. Так как к интерфейсу может быть применена только одна crypto map, то описать все туннели необходимо в одной и той же crypto map.
Для того чтобы отличать правила относящиеся в разным туннелям, правила группируются в наборы, которые объединяет общий порядковый номер правила в crypto map.
В каждом наборе правил crypto map можно указать такие параметры:
- Адрес удаленной стороны туннеля (peer)
- ACL, который указывает какие данные попадут в туннель
- Transform-set
- Группа DH для включения PFS
- Вставка обратного маршрута (RRI)
Однако, для Easy VPN необходимо использовать динамическую crypto map. Она отличается от обычной тем, что в ней указаны не все параметры. Для того чтобы применить динамическую crypto map к интерфейсу, она должна быть применена к обычной crypto map.
Пример настройки dynamic crypto map и применение её к обычной crypto map, а затем к внешнему интерфейсу:
crypto dynamic-map RVPN 10 set transform-set 3DES_SHA crypto dynamic-map RVPN 10 set reverse-route crypto map TEST_MAP 65535 ipsec-isakmp dynamic RVPN crypto map TEST_MAP interface outside
[править] Фильтрация данных VPN
По умолчанию в ASA включена команда sysopt connection permit-vpn, которая позволяет трафику VPN обходить входящий ACL интерфейса, на котором терминируется VPN. ACL присвоенные в процессе авторизации пользователей (group policy и per-user ACL) применяются.
Убедиться, что команда включена можно так:
ASA(config)# sh run all sysopt
Включить, если отключена:
ASA(config)# sysopt connection permit-vpn
[править]
[править] Пример пошаговой настройки
[править] Настройка ISAKMP
Включение ISAKMP (IKE) на интерфейсе:
ASA2(config)# isakmp enable outside
Настройка политики ISAKMP:
ASA2(config)# isakmp policy 10 ASA2(config-isakmp-policy)# authentication pre-share ASA2(config-isakmp-policy)# encryption 3des ASA2(config-isakmp-policy)# hash sha ASA2(config-isakmp-policy)# group 2
[править] Настройка назначения адресов
Пример создания пула адресов:
ip local pool SALES_POOL 172.16.2.1-172.16.2.100 mask 255.255.255.255
Назначение IP-адреса пользователю:
username SALES1 password FGxPirrtw9DRO2qS encrypted username SALES1 attributes vpn-framed-ip-address 172.16.2.101 255.255.255.255
[править] Настройка групповой политики
Создание внутренней групповой политики (настроен DNS-сервер, политика будет использоваться только для Easy VPN (не для SSLVPN)):
group-policy MANAGER_GROUP internal group-policy MANAGER_GROUP attributes dns-server value 10.0.2.10 vpn-tunnel-protocol IPSec
По умолчанию весь трафик клиента попадает в туннель, так как эта настройка наследуется из политики по умолчанию. Для того чтобы указать какой трафик должен попадать в туннель, необходимо создать ACL, который будет его описывать и изменить политику туннелирования.
Эта функция называется split tunneling.
Для групповой политики MANAGER_GROUP в туннель будет попадать только трафик, который идет в сеть 10.0.2.0/24:
access-list RVPN-SPLITT standard permit 10.0.2.0 255.255.255.0 group-policy MANAGER_GROUP attributes split-tunnel-policy tunnelspecified split-tunnel-network-list value RVPN-SPLITT
Если необходимо фильтровать трафик для того чтобы ограничить доступ к ресурсам локальной сети, то необходимо создать ACL, который будет описывать разрешенный доступ и применить его к групповой политике:
access-list RVPN-ALLOWED extended permit tcp any host 10.0.2.10 eq ftp access-list RVPN-ALLOWED extended permit tcp any host 10.0.2.10 eq www access-list RVPN-ALLOWED extended permit tcp any host 10.0.2.11 eq 3389 group-policy MANAGER_GROUP attributes vpn-filter value RVPN-ALLOWED
[править] Настройка tunnel-group
Настройка типа tunnel-group'ы:
ASA2(config)# tunnel-group SALES type remote-access
Настройка pre-shared key:
ASA2(config)# tunnel-group SALES ipsec-attributes ASA2(config-tunnel-ipsec)# pre-shared-key cisco123
Привязка пула адресов и групповой политики к tunnel-group:
ASA2(config)# tunnel-group SALES general-attributes ASA2(config-tunnel-general)# address-pool SALES_POOL ASA2(config-tunnel-general)# default-group-policy SALES_GROUP
[править] Настройка transform-set
ASA2(config)# crypto ipsec transform-set 3DES_SHA esp-3des esp-sha-hmac
[править] Настройка и применение crypto map
Настройка dynamic crypto map:
crypto dynamic-map RVPN 10 set transform-set 3DES_SHA crypto dynamic-map RVPN 10 set reverse-route
Применение crypto map:
crypto map TEST_MAP 65535 ipsec-isakmp dynamic RVPN ! crypto map TEST_MAP interface outside
[править] Пример конфигурации
Конфигурация ASA2 с комментариями:
interface GigabitEthernet0/0 nameif inside security-level 100 ip address 10.0.2.1 255.255.255.0 ! interface GigabitEthernet0/1 nameif outside security-level 0 ip address 192.168.2.2 255.255.255.0 ! route outside 0.0.0.0 0.0.0.0 192.168.2.1 ! # Включение ISAKMP на интерфейсе crypto isakmp enable outside ! # Настройка политики ISAKMP crypto isakmp policy 10 authentication pre-shared encryption 3des hash sha group 2 lifetime 86400 ! # Создание transform-set (параметры защиты данных передаваемых в туннеле) crypto ipsec transform-set 3DES_SHA esp-3des esp-sha-hmac ! # Применение transform-set к динамической crypto map crypto dynamic-map RVPN 10 set transform-set 3DES_SHA ! # Настройка вставки обратного статического маршрута к адресу выданному клиенту (RRI) crypto dynamic-map RVPN 10 set reverse-route ! # Применение динамической crypto map к статической crypto map TEST_MAP 65535 ipsec-isakmp dynamic RVPN ! # Применение crypto map к интерфейсу crypto map TEST_MAP interface outside ! # Создание пулов адресов для двух групп пользователей ip local pool SALES_POOL 172.16.2.1-172.16.2.100 mask 255.255.255.255 ip local pool MANAGER_POOL 172.16.3.3-172.16.3.5 mask 255.255.255.255 ! # Настройка ACL для указания какой трафик туннелировать access-list RVPN-SPLITT standard permit 10.0.2.0 255.255.255.0 ! # Настройка ACL для фильтрации трафика access-list RVPN-ALLOWED extended permit tcp any host 10.0.2.10 eq ftp access-list RVPN-ALLOWED extended permit tcp any host 10.0.2.10 eq www access-list RVPN-ALLOWED extended permit tcp any host 10.0.2.11 eq 3389 ! # Создание внутренней групповой политики group-policy MANAGER_GROUP internal ! # Настройка атрибутов политики group-policy MANAGER_GROUP attributes # DNS-сервер dns-server value 10.0.2.10 # Применение ACL для фильтрации трафика vpn-filter value RVPN-ALLOWED # Группа используется только для подключений Easy VPN vpn-tunnel-protocol IPSec # Туннелировать только трафик указанный в ACL split-tunnel-policy tunnelspecified # ACL указывающий какой трафик попадет в туннель split-tunnel-network-list value RVPN-SPLITT ! # Создание внутренней групповой политики group-policy SALES_GROUP internal ! # Настройка атрибутов политики group-policy SALES_GROUP attributes # DNS-сервер dns-server value 10.0.1.10 # Применение ACL для фильтрации трафика vpn-filter value RVPN-ALLOWED # Группа используется только для подключений Easy VPN vpn-tunnel-protocol IPSec # Туннелировать только трафик указанный в ACL split-tunnel-policy tunnelspecified # ACL указывающий какой трафик попадет в туннель split-tunnel-network-list value RVPN-SPLITT # По умолчанию будет использоваться домен cisco.com default-domain value cisco.com # DNS-запросы с указанными доменами отправлять в туннель split-dns value cisco.com example.com ! # Создание пользователя username MANAGER1 password cisco # Настройка атрибутов пользователя username MANAGER1 attributes # Групповая политика пользователя vpn-group-policy MANAGER_GROUP # Не применять к пользователю фильтр, несмотря на то что он есть в групповой политике vpn-filter none # Пользователь может принадлежать только группе MANAGER_GROUP group-lock value MANAGER_GROUP # Пользователь не может использоваться для управления ASA, например нельзя под ним подключаться к консоли service-type remote-access ! # Создание пользователя username ciscovpn password cisco # Настройка атрибутов пользователя (для данного пользователя все атрибуты наследуются из той групповой политики к которой он подключился) username ciscovpn attributes # Пользователь не может использоваться для управления ASA, например нельзя под ним подключаться к консоли service-type remote-access ! # Создание пользователя username SALES1 password cisco # Настройка атрибутов пользователя username SALES1 attributes # Групповая политика пользователя vpn-group-policy SALES_GROUP # Пользователь не может использоваться для управления ASA, например нельзя под ним подключаться к консоли service-type remote-access ! # Создание tunnel-group SALES (это имя будет вводиться в Cisco VPN client при подключении) tunnel-group SALES type remote-access # Настройка атрибутов tunnel-group SALES general-attributes # Привязка пула адресов address-pool SALES_POOL # Привязка групповой политики default-group-policy SALES_GROUP # Настройка атрибутов IPsec tunnel-group SALES ipsec-attributes # Настройка пароля pre-shared-key cisco123 ! # Создание tunnel-group MANAGER (это имя будет вводиться в Cisco VPN client при подключении) tunnel-group MANAGER type remote-access # Настройка атрибутов tunnel-group MANAGER general-attributes # Привязка пула адресов address-pool MANAGER_POOL # Привязка групповой политики default-group-policy MANAGER_GROUP # Настройка атрибутов IPsec tunnel-group MANAGER ipsec-attributes # Настройка пароля pre-shared-key cisco123 !
interface GigabitEthernet0/0 nameif inside security-level 100 ip address 10.0.2.1 255.255.255.0 ! interface GigabitEthernet0/1 nameif outside security-level 0 ip address 192.168.2.2 255.255.255.0 ! route outside 0.0.0.0 0.0.0.0 192.168.2.1 ! crypto isakmp enable outside crypto isakmp policy 10 authentication pre-shared encryption 3des hash sha group 2 lifetime 86400 ! crypto ipsec transform-set 3DES_SHA esp-3des esp-sha-hmac ! crypto dynamic-map RVPN 10 set transform-set 3DES_SHA crypto dynamic-map RVPN 10 set reverse-route ! ! crypto map TEST_MAP 65535 ipsec-isakmp dynamic RVPN ! crypto map TEST_MAP interface outside ! ip local pool SALES_POOL 172.16.2.1-172.16.2.100 mask 255.255.255.255 ip local pool MANAGER_POOL 172.16.3.3-172.16.3.5 mask 255.255.255.255 ! access-list RVPN-SPLITT standard permit 10.0.2.0 255.255.255.0 access-list RVPN-ALLOWED extended permit tcp any host 10.0.2.10 eq ftp access-list RVPN-ALLOWED extended permit tcp any host 10.0.2.10 eq www access-list RVPN-ALLOWED extended permit tcp any host 10.0.2.11 eq 3389 ! group-policy MANAGER_GROUP internal group-policy MANAGER_GROUP attributes dns-server value 10.0.2.10 vpn-filter value RVPN-ALLOWED vpn-tunnel-protocol IPSec split-tunnel-policy tunnelspecified split-tunnel-network-list value RVPN-SPLITT group-policy SALES_GROUP internal group-policy SALES_GROUP attributes dns-server value 10.0.1.10 vpn-filter value RVPN-ALLOWED vpn-tunnel-protocol IPSec split-tunnel-policy tunnelspecified split-tunnel-network-list value RVPN-SPLITT default-domain value cisco.com split-dns value cisco.com example.com username MANAGER1 password FGxPirrtw9DRO2qS encrypted username MANAGER1 attributes vpn-group-policy MANAGER_GROUP vpn-filter none group-lock value MANAGER_GROUP service-type remote-access username ciscovpn password 3USUcOPFUiMCO4Jk encrypted username ciscovpn attributes service-type remote-access username SALES1 password FGxPirrtw9DRO2qS encrypted username SALES1 attributes vpn-group-policy SALES_GROUP service-type remote-access ! tunnel-group SALES type remote-access tunnel-group SALES general-attributes address-pool SALES_POOL default-group-policy SALES_GROUP tunnel-group SALES ipsec-attributes pre-shared-key cisco123 ! tunnel-group MANAGER type remote-access tunnel-group MANAGER general-attributes address-pool MANAGER_POOL default-group-policy MANAGER_GROUP tunnel-group MANAGER ipsec-attributes pre-shared-key cisco123 !
[править] Настройка Easy VPN с аутентификацией по сертификатам
[править] Пример пошаговой настройки
Настройка ISAKMP (с изменением аутентификации на сертификаты), назначения адресов, групповых политик, transform-set, сrypto map совпадает с аналогичными настройками для аутентификации по паролю и здесь не повторяется.
[править] Настройка ASA для получения сертификата
Пример настройки trustpoint для получения сертификата от маршрутизатора Cisco, который выполняет роль CA:
crypto ca trustpoint TEST enrollment url http://192.168.1.1 subject-name CN=ASA2
Настройка trustpoint для получения сертификата от MS CA:
ASA2(config)# crypto ca trustpoint TEST ASA2(config-ca-trustpoint)# enrollment url http://10.0.2.10:80/certsrv/mscep/mscep.dll ASA2(config-ca-trustpoint)# subject-name CN=ASA2
Получение сертификата CA-сервера:
ASA2(config)# crypto ca authenticate TEST INFO: Certificate has the following attributes: Fingerprint: 3c6bd334 a8173e1b 28bd4d41 83a02f3a Do you accept this certificate? [yes/no]: yes Trustpoint CA certificate accepted.
Запрос на получение сертификата для ASA от CA-сервера:
ASA2(config)# crypto ca enroll TEST noconfirm % % Start certificate enrollment .. % The subject name in the certificate will be: CN=ASA2 % The fully-qualified domain name in the certificate will be: ASA2.unix.nt % Certificate request sent to Certificate Authority ASA1(config)# The certificate has been granted by CA!
[править] Настройка tunnel-group
Настройка типа tunnel-group'ы:
ASA2(config)# tunnel-group SALES type remote-access
Настройка trustpoint:
ASA2(config)# tunnel-group SALES ipsec-attributes ASA2(config-tunnel-ipsec)# trust-point TEST
Привязка пула адресов и групповой политики к tunnel-group:
ASA2(config)# tunnel-group SALES general-attributes ASA2(config-tunnel-general)# address-pool SALES_POOL ASA2(config-tunnel-general)# default-group-policy SALES_GROUP
[править] Настройка соответствия между сертификатом и tunnel-group
Создание правил, которые указывают какое поле в сертификате должно совпадать с указанным значением
crypto ca certificate map VPN 10 subject-name attr ou eq SALES crypto ca certificate map VPN 20 subject-name attr ou eq MANAGER
Включение просмотра правил tunnel-group-map при выборе tunnel-group
tunnel-group-map enable rules
Настройка соответствий между сертификатом и tunnel-group (если поля сертификата совпадут с правилом VPN 10 (то есть, OU = SALES), то это tunnel-group sales; если с правилом VPN 20, то это tunnel-group MANAGER):
tunnel-group-map VPN 10 SALES tunnel-group-map VPN 20 MANAGER
[править] Пример конфигурации
Конфигурация ASA2
interface GigabitEthernet0/0 nameif inside security-level 100 ip address 10.0.2.1 255.255.255.0 ! interface GigabitEthernet0/1 nameif outside security-level 0 ip address 192.168.2.2 255.255.255.0 ! route outside 0.0.0.0 0.0.0.0 192.168.2.1 ! crypto isakmp enable outside crypto isakmp policy 10 authentication rsa-sig encryption 3des hash sha group 2 lifetime 86400 ! crypto ca trustpoint TEST enrollment url http://10.0.2.10:80/certsrv/mscep/mscep.dll subject-name CN=ASA2 ! crypto ipsec transform-set 3DES_SHA esp-3des esp-sha-hmac ! crypto dynamic-map RVPN 10 set transform-set 3DES_SHA crypto dynamic-map RVPN 10 set reverse-route ! ! crypto map TEST_MAP 65535 ipsec-isakmp dynamic RVPN ! crypto map TEST_MAP interface outside ! ip local pool SALES_POOL 172.16.2.1-172.16.2.100 mask 255.255.255.255 ip local pool MANAGER_POOL 172.16.3.3-172.16.3.5 mask 255.255.255.255 ! access-list RVPN-SPLITT standard permit 10.0.2.0 255.255.255.0 access-list RVPN-ALLOWED extended permit tcp any host 10.0.2.10 eq ftp access-list RVPN-ALLOWED extended permit tcp any host 10.0.2.10 eq www access-list RVPN-ALLOWED extended permit tcp any host 10.0.2.11 eq 3389 ! group-policy MANAGER_GROUP internal group-policy MANAGER_GROUP attributes dns-server value 10.0.2.10 vpn-filter value RVPN-ALLOWED vpn-tunnel-protocol IPSec split-tunnel-policy tunnelspecified split-tunnel-network-list value RVPN-SPLITT group-policy SALES_GROUP internal group-policy SALES_GROUP attributes dns-server value 10.0.1.10 vpn-filter value RVPN-ALLOWED vpn-tunnel-protocol IPSec split-tunnel-policy tunnelspecified split-tunnel-network-list value RVPN-SPLITT default-domain value cisco.com split-dns value cisco.com example.com username MANAGER1 password FGxPirrtw9DRO2qS encrypted username MANAGER1 attributes vpn-group-policy MANAGER_GROUP vpn-filter none group-lock value MANAGER_GROUP service-type remote-access username ciscovpn password 3USUcOPFUiMCO4Jk encrypted username ciscovpn attributes service-type remote-access username SALES1 password FGxPirrtw9DRO2qS encrypted username SALES1 attributes vpn-group-policy SALES_GROUP service-type remote-access ! tunnel-group SALES type remote-access tunnel-group SALES general-attributes address-pool SALES_POOL default-group-policy SALES_GROUP tunnel-group SALES ipsec-attributes trust-point TEST ! tunnel-group MANAGER type remote-access tunnel-group MANAGER general-attributes address-pool MANAGER_POOL default-group-policy MANAGER_GROUP tunnel-group MANAGER ipsec-attributes trust-point TEST ! crypto ca certificate map VPN 10 subject-name attr ou eq SALES crypto ca certificate map VPN 20 subject-name attr ou eq MANAGER ! tunnel-group-map enable rules tunnel-group-map VPN 10 SALES tunnel-group-map VPN 20 MANAGER !
[править] Easy VPN и site-to-site VPN на одном интерфейсе
[править] Пример конфигурации
Конфигурация ASA2:
interface GigabitEthernet0/0 nameif inside security-level 100 ip address 10.0.2.1 255.255.255.0 ! interface GigabitEthernet0/1 nameif outside security-level 0 ip address 192.168.2.2 255.255.255.0 ! route outside 0.0.0.0 0.0.0.0 192.168.2.1 ! crypto isakmp enable outside crypto isakmp policy 10 authentication pre-shared encryption 3des hash sha group 2 lifetime 86400 ! tunnel-group 192.168.1.2 type ipsec-l2l tunnel-group 192.168.1.2 ipsec-attributes pre-shared-key cisco ! ! crypto ipsec transform-set 3DES_SHA esp-3des esp-sha-hmac ! crypto dynamic-map RVPN 10 set transform-set 3DES_SHA crypto dynamic-map RVPN 10 set reverse-route ! ! crypto map TEST_MAP 10 match address L2LACL crypto map TEST_MAP 10 set peer 192.168.1.2 crypto map TEST_MAP 10 set transform-set 3DES_SHA crypto map TEST_MAP 10 set reverse-route crypto map TEST_MAP 65535 ipsec-isakmp dynamic RVPN ! crypto map TEST_MAP interface outside ! access-list RVPN-SPLITT standard permit 10.0.2.0 255.255.255.0 access-list RVPN-ALLOWED extended permit tcp any host 10.0.2.10 eq ftp access-list RVPN-ALLOWED extended permit tcp any host 10.0.2.10 eq www access-list RVPN-ALLOWED extended permit tcp any host 10.0.2.11 eq 3389 ! ip local pool RVPN 172.16.2.1-172.16.2.100 mask 255.255.255.255 ! group-policy SALES_GROUP attributes dns-server value 10.0.1.10 vpn-filter value RVPN-ALLOWED vpn-tunnel-protocol IPSec split-tunnel-policy tunnelspecified split-tunnel-network-list value RVPN-SPLITT default-domain value cisco.com split-dns value cisco.com example.com ! username SALES1 password FGxPirrtw9DRO2qS encrypted username SALES1 attributes vpn-group-policy SALES_GROUP service-type remote-access ! tunnel-group SALES type remote-access tunnel-group SALES general-attributes address-pool SALES_POOL default-group-policy SALES_GROUP tunnel-group SALES ipsec-attributes pre-shared-key cisco123
Конфигурация ASA1:
interface GigabitEthernet0/0 nameif inside security-level 100 ip address 10.0.1.1 255.255.255.0 ! interface GigabitEthernet0/1 nameif outside security-level 0 ip address 192.168.1.2 255.255.255.0 ! route outside 0.0.0.0 0.0.0.0 192.168.1.1 ! crypto isakmp enable outside crypto isakmp policy 10 authentication pre-shared encryption 3des hash sha group 2 lifetime 86400 ! tunnel-group 192.168.2.2 type ipsec-l2l tunnel-group 192.168.2.2 ipsec-attributes pre-shared-key cisco ! access-list L2LACL extended permit ip 10.0.1.0 255.255.255.0 10.0.2.0 255.255.255.0 ! ! crypto ipsec transform-set 3DES_SHA esp-3des esp-sha-hmac ! crypto map TEST_MAP 10 match address L2LACL crypto map TEST_MAP 10 set peer 192.168.2.2 crypto map TEST_MAP 10 set transform-set 3DES_SHA crypto map TEST_MAP 10 set reverse-route ! crypto map TEST_MAP interface outside
[править] Подсказки по настройке VPN в CLI ASA
В Cisco ASA есть команда vpnsetup, которая позволяет посмотреть как настраивать различные виды VPN на ASA. В выводе команды показаны необходимые шаги и команды. Команда пригодится если под рукой нет документации или примера настройки.
Параметры команды (8.2):
- ipsec-remote-access
- l2tp-remote-access
- site-to-site
- ssl-remote-access
Пример вывода для ipsec-remote-access:
ASA1(config)# vpnsetup ipsec-remote-access steps Steps to configure a remote access IKE/IPSec connection with examples: 1. Configure Interfaces interface GigabitEthernet0/0 ip address 10.10.4.200 255.255.255.0 nameif outside no shutdown interface GigabitEthernet0/1 ip address 192.168.0.20 255.255.255.0 nameif inside no shutdown 2. Configure ISAKMP policy crypto isakmp policy 65535 authentication pre-share encryption aes hash sha 3. Setup an address pool ip local pool client-pool 192.168.1.1-192.168.1.254 4. Configure authentication method aaa-server MyRadius protocol radius aaa-server MyRadius host 192.168.0.254 key $ecretK3y 5. Define tunnel group tunnel-group client type remote-access tunnel-group client general-attributes address-pool client-pool authentication-server-group MyRadius tunnel-group client ipsec-attributes pre-shared-key VpnUs3rsP@ss 6. Setup ipsec parameters crypto ipsec transform-set myset esp-aes esp-sha-hmac 7. Setup dynamic crypto map crypto dynamic-map dynmap 1 set transform-set myset crypto dynamic-map dynmap 1 set reverse-route 8. Create crypto map entry and associate dynamic map with it crypto map mymap 65535 ipsec-isakmp dynamic dynmap 9. Attach crypto map to interface crypto map mymap interface outside 10. Enable isakmp on interface crypto isakmp enable outside
[править] Дополнительная информация
- Cisco ASA Configuration Guide 8.2 (англ.) — раздел по настройке VPN
- Порядок определения соответствующей tunnel-group в Cisco ASA (англ.)
- Атрибуты RADIUS для авторизации в VPN (англ.)
- Авторизация Easy VPN на RADIUS (англ.)