L2TP/IPsec на Cisco ASA 5510 для подключения Windows клиентов с авторизацией в AD

By | 2016-07-16

Создаём пул адресов, из которых будет выдаваться IP-адреса клиентам:

ip local pool vpnn_access 10.0.1.2-10.0.1.254 mask 255.255.255.0

Добавляем aaa-сервер, чтобы пользователи могли авторизовываться в Active Directory:

aaa-server kerberos_server protocol kerberos
aaa-server kerberos_server (inside) host 10.0.0.10
  kerberos-realm MYDOMAIN

Разрешаем протокол IKEv1 на внешнем интерфейсе асы:
crypto ikev1 enable outside

Добавляем политику шифрования:
crypto ikev1 policy 100
  authentication pre-share
  encryption 3des
  hash sha
  group 2
  lifetime 86400

Добавляем трансформ-сет. Так как по умолчанию используется туннельный режим, принудительно указываем транспорт:
crypto ipsec ikev1 transform-set ESP-3DES-SHA-TRANS esp-3des esp-sha-hmac
crypto ipsec ikev1 transform-set ESP-3DES-SHA-TRANS mode transport

Создаём динамическую крипто-карту с нашим трансформ-сетом…
crypto dynamic-map SYSTEM_DEFAULT_CRYPTO_MAP 65535 set ikev1 transform-set ESP-3DES-SHA-TRANS

… и привязываем её к внешнему интерфейсу:
crypto map outside_map 65535 ipsec-isakmp dynamic SYSTEM_DEFAULT_CRYPTO_MAP
crypto map outside_map interface outside

Создаём access-list с сетями, доступ к которым будет через наш туннель (вообще, split-tunnel — это не безопасно, но тем не менее):

access-list split-tunnel standard permit 10.0.0.0 255.255.0.0

Указываем в политике группы имя домена, DNS-сервер и тип подключения:
group-policy l2tp_ra_gp attributes
  dns-server value 10.0.0.10 10.0.0.11
  vpn-tunnel-protocol l2tp-ipsec
  split-tunnel-policy tunnelspecified
  split-tunnel-network-list value split-tunnel
  default-domain value mydomain
  intercept-dhcp enable

Есть 3 пути задания имени туннельной группы:

  • 1) Задать произвольное имя в параметрах подключения клиента (tunnel-group MY_TUNNEL general-attributes);
  • 2) Если параметр не указан, то используется IP-адрес клиента (tunnel-group 10.10.10.10 general-attributes);
  • 3) Ну и если туннельной группы для IP-адреса нет, то используется группа DefaultRAGroup.

Т.к. клиенты будут использовать динамические IP-адреса и в VPN-клиенте Windows нельзя указать имя группы, то 3-й вариант — как раз наш случай.

tunnel-group DefaultRAGroup general-attributes
  address-pool vpnn_access
  authentication-server-group kerberos_server
  default-group-policy l2tp_ra_gp
tunnel-group DefaultRAGroup ipsec-attributes
  ikev1 pre-shared-key $tr0NgPr3$@r3D(!KeY)
  isakmp keepalive threshold 60 retry 3
tunnel-group DefaultRAGroup ppp-attributes
  authentication pap
  no authentication chap
  no authentication ms-chap-v1

Переходим к настройке Windows

Идем в «Параметры» -> «Сеть и Интернет» -> «VPN»

vpn_1

Нажимаем на «Добавление VPN-подключения»

vpn_2

Идем в «Панель управления» -> «Сеть и Интернет» -> «Центр управления сетями и общим доступом» -> «Изменение параметров адаптера», открываем свойства нашего подключения.

На вкладке «Безопасность» выставляем тип подключения «Протокол L2TP с IPSec», выбираем обязательное шифрование и разрешаем протоколы проверки подлинности PAP (для аутентификации через AD) и/или MS CHAPv2 (для локальной аутентификации)

vpn_3

В окне «Дополнительные свойства», вызываемом кнопкой «Дополнительные параметры», вводим общий ключ.

vpn_4

На вкладке «Сеть» отключаем IPv6, вызываем свойства IPv4 где нажимаем кнопку «Дополнительно». На вкладке «Параметры IP», необходимо снять галочку «Использовать шлюз в удаленной сети», чтобы клиент пользовался Интернетом минуя наш VPN, соответственно если в организации действует соответствующая политика информационной безопасности, то делать этого не нужно, но придется настроить на клиенте NAT/Proxy. Если же мы все-таки пускаем траффик в обход, то нужно снять галку «Отключить добавление маршрута, основанное на классе», иначе в таблице маршрутизации добавится запись заворачивающая сеть 10.0.0.0/8 в VPN, что может породить проблемы с доступом через сети мобильных операторов, использующих десятую сеть.

vpn_5

На этом все, нажимаем «Подключиться».

vpn_6

Если что-то пошло не так, включаем на асе дебаг и внимательно читаем.

В итоге имеем VPN-подключение без стороннего софта, такого как Cisco VPN Client (устарел, ставит драйвер) или Cisco AnyConnect (ставит драйвер).

P.S: Под найтивный клиент Android тоже работает.

 

3 thoughts on “L2TP/IPsec на Cisco ASA 5510 для подключения Windows клиентов с авторизацией в AD

  1. Antonio

    Годная статья. Детально!

    Reply
  2. Константин

    ПРивет, ошибку пишет (CISCO ASA 5505)
    crypto ikev1 enable outside ERROR INVALID INPUT DETECTED at MARKER
    Ругается на ikev2

    Reply
    1. alex Post author

      Привет.
      А на что указывает маркер? Это при вводе команды в режиме глобальеой конфигурации?

      Reply

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *