Cisco ASA/Easy VPN

Материал из Xgu.ru

Перейти к: навигация, поиск
stub.png
Данная страница находится в разработке.
Эта страница ещё не закончена. Информация, представленная здесь, может оказаться неполной или неверной.

Если вы считаете, что её стоило бы доработать как можно быстрее, пожалуйста, скажите об этом.

Автор: Наташа Самойленко


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)
  • В режиме general-attributes:
    • Привязывается пул адресов, который соответствует этой tunnel-group
    • Привязывается соответствующая групповая политика

Note-icon.gif

В 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 

[править] Настройка Easy VPN с аутентификацией по preshared key

RAVPN asa.png

[править] Пример пошаговой настройки

[править] Настройка 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

[править] Пример конфигурации

RAVPN asa.png

Конфигурация 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
!


[править] Настройка Easy VPN с аутентификацией по сертификатам

RAVPN asa.png

[править] Пример пошаговой настройки

Настройка 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

[править] Пример конфигурации

RAVPN asa.png

Конфигурация 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 на одном интерфейсе

RA L2L VPN asa.png

[править] Пример конфигурации

Конфигурация 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

[править] Дополнительная информация