Безопасность : Многофункциональные устройства защиты Cisco ASA серии 5500

PIX/ASA: Пример назначения клиентам VPN групповых политик VPN с использованием конфигурации LDAP

29 июля 2008 - Перевод, выполненный профессиональным переводчиком
Другие версии: PDF-версия:pdf | Машинный перевод (28 июля 2013) | Английский (31 июля 2007) | Отзыв

Содержание

Введение
Предварительные условия
     Требования
     Используемые компоненты
     Условные обозначения
     Схема сети
Общие сведения
Настройка
     Настройка устройства безопасности
     Настройка сервера LDAP
Проверка
     Просмотр сеансов
Устранение неполадок
     Отладки LDAP
     Назначение атрибутов не выполняется
Связанные обсуждения сообщества поддержки Cisco
Дополнительные сведения

Введение

В данном документе приведен пример конфигурации клиентов SSL VPN (SVC), которые подключаются к устройству адаптивной защиты Cisco серии 5500 (ASA) и которым затем назначаются различные групповые политики VPN в зависимости от ответа сервера протокола LDAP (упрощенный протокол доступа к каталогам Microsoft). ПО ASA 7.2.2 обеспечивает назначение атрибутов LDAP, благодаря чему атрибуты, отправленные от сервера LDAP, могут быть сопоставлены с атрибутами, распознанным ASA, таким как атрибут IETF RADIUS 25 (Класс).

В данном примере пользователям, имеющим право удаленного доступа (dial-in) к серверу AD/LDAP, назначается групповая политика "ALLOWACCESS"; пользователям, не обладающим правом удаленного доступа, назначается групповая политика "NOACCESS" ASA. Количество допустимых сеансов VPN групповой политики "NOACCESS" настроено на 0, что приводит к сбою подключения пользователя.

Примечание. В данной конфигурации используется клиент SSL VPN, но те же принципы могут быть применены к групповым политикам, которые используются другими клиентами VPN. Кроме того, данную конфигурацию можно использовать не только для отказа в доступе к VPN, но и для других целей. В данном примере атрибуты LDAP используются для назначения групповой политики пользователю. Параметры данной политики (допустимые протоколы, список разделенных туннелей или фильтр VPN) могут быть настроены в соответствии с потребностями.

Примечание. Функции WebVPN, например SVC, доступны только на устройстве безопасности ASA серии 5500, на модели PIX серии 500 они недоступны.

Предварительные условия

Требования

Убедитесь, что вы обеспечили выполнение следующих требований, прежде чем попробовать эту конфигурацию.

  • Общее представление о конфигурации SVC (клиент SSL VPN) в ASA.

  • Общее представление о конфигурации LDAP на сервере.

    Чтобы получить дополнительные сведения о протоколе LDAP, см. раздел RFC 3377 leavingcisco.com.

Используемые компоненты

Сведения, содержащиеся в данном документе, касаются следующих версий программного и аппаратного обеспечения.

  • Устройство адаптивной защиты Cisco серии 5500 (ASA), на котором установлена версия ПО 7.2.2

  • Клиент Cisco SSL VPN 1.1.3.173

  • Сервер Microsoft Windows 2003 Enterprise Server с пакетом обновлений 1 (SP1)

Данные для этого документа были получены при тестировании указанных устройств в специально созданных лабораторных условиях. Все устройства, описанные в данном документе, обладают ненастроенной (заданной по умолчанию) конфигурацией. При работе в действующей сети необходимо изучить все возможные последствия каждой команды.

Условные обозначения

Более подробную информацию о применяемых в документе обозначениях см. в статье Условные обозначения, используемые в технической документации Cisco.

Схема сети

В данном документе используется следующая настройка сети.

mappingsvctovpn1.gif

Примечание. Схемы IP-адресации, приведенные в этой конфигурации, нельзя использовать для маршрутизации в Интернете. Это адреса RFC 1918, которые использовались в лабораторной среде.

Общие сведения

В данном примере атрибут "msNPAllowDialin" AD/LDAP сопоставляется с атрибутом "CVPN3000-Radius-IETF-Class" ASA. Атрибут класса используется для обеспечения применения групповых политик на ASA.

  1. Пользователь инициирует подключение SVC к ASA.

  2. Адаптивное устройство безопасности ASA настроено на аутентификацию пользователей SVC с использованием сервера Microsoft AD/LDAP.

  3. ASA связывается с сервером LDAP с учетными данными (в данном случае администратора), настроенными на ASA, и ищет предоставленное имя пользователя.

  4. Если имя пользователя найдено, ASA предпринимает попытку связаться с сервером LDAP с использованием указанных пользователем учетных данных при входе.

  5. Если повторное установление связи выполнено успешно, ASA получает атрибуты пользователей, которые включают в себя msNPAllowDialin.

  6. Атрибут msNPAllowDialin сопоставляется с CVPN3000-Radius-IETF-Class с помощью настроенной карты атрибутов LDAP.

    • Значение FALSE сопоставляется со значением NOACCESS (ОТКАЗ В ДОСТУПЕ)

    • Значение TRUE сопоставляется со значением ALLLOWACCESS (РАЗРЕШИТЬ ДОСТУП)

  7. Рассматривается атрибут CVPN3000-Radius-IETF-Class, и выполняется определение групповой политики.

    • Значение NOACCESS приводит к назначению пользователю групповой политики NOACCESS.

    • Значение ALLOWACCESS приводит к назначению пользователю групповой политики ALLOWACCESS.

  8. Если применяется политика NOACCESS, пользователи не смогут выполнить вход. Если применяется политика ALLOWACCESS, соединение устанавливается успешно.

Настройка

Примечание. См. дополнительные сведения о командах, используемых в данном документе, в Средстве поиска команд (только для зарегистрированных пользователей).

Настройка устройства безопасности

Конфигурация ASA.

Адаптивное устройство безопасности Cisco

CiscoASA #show running-config 
: Saved
:
ASA Version 7.2(2)
!
hostname ciscoasa
domain-name default.domain.invalid
enable password 8Ry2YjIyt7RRXU24 encrypted
names
!
interface Vlan1
 nameif inside
 security-level 100
 ip address dhcp
!
interface Vlan2
 nameif outside
 security-level 0
 ip address 10.8.27.2 255.255.255.0
!
interface Ethernet0/0
!
interface Ethernet0/1
 shutdown
!
interface Ethernet0/2
 shutdown
!
interface Ethernet0/3
 shutdown
!
interface Ethernet0/4
 shutdown
!
interface Ethernet0/5
 switchport access vlan 2
!
interface Ethernet0/6
 shutdown
!
interface Ethernet0/7
 shutdown
!
passwd 2KFQnbNIdI.2KYOU encrypted
boot system disk0:/asa722-k8.bin
ftp mode passive
dns server-group DefaultDNS
 domain-name default.domain.invalid

!--- Список доступа для освобождения трафика новых клиентов VPN от NAT

access-list NONAT extended permit ip any 192.168.100.0 255.255.255.0

pager lines 24
mtu inside 1500
mtu outside 1500

!--- Пул IP-адресов для клиентов VPN

ip local pool CISCOPOOL 192.168.100.1-192.168.100.254

no failover
icmp unreachable rate-limit 1 burst-size 1
asdm image disk0:/asdm-522.bin
no asdm history enable
arp timeout 14400

!--- Конфигурация NAT

global (outside) 1 interface
nat (inside) 0 access-list NONAT
nat (inside) 1 0.0.0.0 0.0.0.0

route outside 0.0.0.0 0.0.0.0 10.8.27.1 1
timeout xlate 3:00:00
timeout conn 1:00:00 half-closed 0:10:00 udp 0:02:00 icmp 0:00:02
timeout sunrpc 0:10:00 h323 0:05:00 h225 1:00:00 mgcp 0:05:00 mgcp-pat 0:05:00
timeout sip 0:30:00 sip_media 0:02:00 sip-invite 0:03:00 sip-disconnect 0:02:00
timeout uauth 0:05:00 absolute

!--- Карта назначения атрибутов LDAP . msNPAllowDialin сопоставляется с 
   cVPN3000-IETF-Radius-Class
!--- Значение FALSE сопоставляется со значением NOACCESS
!--- Значение TRUE сопоставляется со значением ALLOWACCESS

ldap attribute-map CISCOMAP
  map-name  msNPAllowDialin cVPN3000-IETF-Radius-Class
  map-value msNPAllowDialin FALSE NOACCESS
  map-value msNPAllowDialin TRUE ALLOWACCESS

!--- Конфигурация сервера AAA

aaa-server LDAPGROUP protocol ldap
aaa-server LDAPGROUP host 172.18.254.49
 ldap-base-dn dc=rtpsecurity, dc=cisco, dc=com
 ldap-scope subtree
 ldap-naming-attribute sAMAccountName
 ldap-login-password *
 ldap-login-dn CN=Administrator,CN=Users,DC=rtpsecurity,DC=cisco,DC=com
 server-type microsoft
 ldap-attribute-map CISCOMAP


!--- Групповая политика NOACCESS.
!--- Значение одновременных подключений vpn (vpn-simultaneous-logins) установлено на 0 для предотвращения доступа

group-policy NOACCESS internal
group-policy NOACCESS attributes
 vpn-simultaneous-logins 0
 vpn-tunnel-protocol IPSec webvpn
 webvpn
  svc required


!--- Групповая политика ALLOWACCESS

group-policy ALLOWACCESS internal
group-policy ALLOWACCESS attributes
 banner value This is the ALLOWACCESS Policy
 vpn-tunnel-protocol IPSec webvpn
 webvpn
  svc required


username cisco password ffIRPGpDSOJh9YLq encrypted
no snmp-server location
no snmp-server contact
snmp-server enable traps snmp authentication linkup linkdown coldstart

!--- Туннельная группа, к которой подключаются пользователи

tunnel-group TESTWEBVPN type webvpn
tunnel-group TESTWEBVPN general-attributes
 address-pool CISCOPOOL
 authentication-server-group LDAPGROUP
tunnel-group TESTWEBVPN webvpn-attributes
 group-alias TestWebVPN enable

telnet timeout 5
ssh timeout 5
console timeout 0

!
class-map inspection_default
 match default-inspection-traffic
!
!
policy-map type inspect dns preset_dns_map
 parameters
  message-length maximum 512
policy-map global_policy
 class inspection_default
  inspect dns preset_dns_map
  inspect ftp
  inspect h323 h225
  inspect h323 ras
  inspect netbios
  inspect rsh
  inspect rtsp
  inspect skinny
  inspect esmtp
  inspect sqlnet
  inspect sunrpc
  inspect tftp
  inspect sip
  inspect xdmcp
!
service-policy global_policy global

!--- Конфигурация WebVPN.  "tunnel-group-list enable"
!--- позволяет пользователям выбирать туннельную группу TESTWEBVPN при выполнении входа.

webvpn
 enable outside
 svc image disk0:/sslclient-win-1.1.3.173.pkg 1
 svc enable
 tunnel-group-list enable

prompt hostname context
Cryptochecksum:80879cf44975e65beed984ee308f7c57
: end

Настройка сервера LDAP

Чтобы настроить сервер LDAP, выполните следующие действия:

  1. Выберите пользователя в каталоге Active Directory.

    mappingsvctovpn2.gif

  2. Настройте разрешение или отказ пользователю в удаленном доступе.

    mappingsvctovpn3.gif

    ИЛИ

    mappingsvctovpn4.gif

Проверка

Используйте этот раздел, чтобы убедиться в исправной работе конфигурации.

Средство Интерпретатор выходных данных (только для зарегистрированных клиентов) (OIT) поддерживает некоторые команды show. Используйте OIT для просмотра аналитики выходных данных команды show.

Просмотр сеансов

Используйте команду show vpn-sessiondb detail svc для просмотра сеансов подключения к SVC. В нижеприведенном примере пользователю matt, как и ожидалось, назначена политика ALLOWACCESS.

ciscoasa# sh vpn-sessiondb detail svc

Session Type: SVC Detailed

Username     : matt
Index        : 1
Assigned IP  : 192.168.100.1          Public IP    : 10.8.27.10
Protocol     : SVC                    Encryption   : 3DES
Hashing      : SHA1                   Auth Mode    : userPassword
TCP Dst Port : 443                    TCP Src Port : 1393
Bytes Tx     : 130163                 Bytes Rx     : 2625
Pkts Tx      : 131                    Pkts Rx      : 13
Pkts Tx Drop : 0                      Pkts Rx Drop : 0
Client Type  : Mozilla/4.0 (compatible; MSIE 6.0; 
   Windows NT 5.2; SV1; .NET CLR 1.1.4322)
Client Ver   : Cisco Systems SSL VPN Client 1, 1, 3, 173
Group Policy : ALLOWACCESS
Tunnel Group : TESTWEBVPN
Login Time   : 16:15:03 UTC Thu Aug 9 2007
Duration     : 0h:00m:05s
Filter Name  :

Поиск и устранение неполадок

Отладки LDAP

При включенной функции отладок LDAP можно наблюдать выполнение процесса назначения атрибутов. В первом примере показаны все выходные данные, когда значение msNPAllowDialin настроено на TRUE. Во втором примере показаны соответствующие выходные данные, когда значение настроено на FALSE.

msNPAllowDialin имеет значение TRUE:

ciscoasa# debug ldap 255
debug ldap  enabled at level 255
ciscoasa#
[34] Session Start
[34] New request Session, context 0x3bbe9f4, reqType = 1
[34] Fiber started
[34] Creating LDAP context with uri=ldap://172.18.254.49:389
[34] Binding as administrator
[34] Performing Simple authentication for Administrator to 172.18.254.49
[34] Connect to LDAP server: ldap://172.18.254.49:389, status = Successful
[34] LDAP Search:
        Base DN = [dc=rtpsecurity, dc=cisco, dc=com]
        Filter  = [sAMAccountName=matt]
        Scope   = [SUBTREE]
[34] User DN = [CN=matt,CN=Users,DC=rtpsecurity,DC=cisco,DC=com]
[34] Talking to Active Directory server 172.18.254.49
[34] Reading password policy for matt, 
   dn:CN=matt,CN=Users,DC=rtpsecurity,DC=cisco,DC=com
[34] Read bad password count 0
[34] Binding as user
[34] Performing Simple authentication for matt to 172.18.254.49
[34] Checking password policy for user matt
[34] Binding as administrator
[34] Performing Simple authentication for Administrator to 172.18.254.49
[34] Authentication successful for matt to 172.18.254.49
[34] Retrieving user attributes from server 172.18.254.49
[34] Retrieved Attributes:
[34]    objectClass: value = top
[34]    objectClass: value = person
[34]    objectClass: value = organizationalPerson
[34]    objectClass: value = user
[34]    cn: value = matt
[34]    givenName: value = matt
[34]    distinguishedName: value = CN=matt,
   CN=Users,DC=rtpsecurity,DC=cisco,DC=com
[34]    instanceType: value = 4
[34]    whenCreated: value = 20070809124516.0Z
[34]    whenChanged: value = 20070809142528.0Z
[34]    displayName: value = matt
[34]    uSNCreated: value = 102442
[34]    uSNChanged: value = 102453
[34]    name: value = matt
[34]    objectGUID: value = .eC...aI..X.....
[34]    userAccountControl: value = 66048
[34]    badPwdCount: value = 0
[34]    codePage: value = 0
[34]    countryCode: value = 0
[34]    badPasswordTime: value = 0
[34]    lastLogoff: value = 0
[34]    lastLogon: value = 0
[34]    pwdLastSet: value = 128311371167812500
[34]    primaryGroupID: value = 513
[34]    userParameters: value = m:                    d.
[34]    objectSid: value = .............."B.4.....K....
[34]    accountExpires: value = 9223372036854775807
[34]    logonCount: value = 0
[34]    sAMAccountName: value = matt
[34]    sAMAccountType: value = 805306368
[34]    userPrincipalName: value = matt@rtpsecurity.cisco.com
[34]    objectCategory: value = CN=Person,CN=Schema,
   CN=Configuration,DC=rtpsecurity,DC=cisco,DC=com
[34]    msNPAllowDialin: value = TRUE
[34]            mapped to cVPN3000-IETF-Radius-Class: value = ALLOWACCESS
[34] Fiber exit Tx=634 bytes Rx=2217 bytes, status=1
[34] Session End

msNPAllowDialin имеет значение FALSE:

ciscoasa# debug ldap 255
debug ldap  enabled at level 255
ciscoasa#
[31] Session Start
!--- Выходные данные сокращены

[31]    userPrincipalName: value = matt@rtpsecurity.cisco.com
[31]    objectCategory: value = CN=Person,CN=Schema,CN=Configuration,
   DC=rtpsecurity,DC=cisco,DC=com
[31]    msNPAllowDialin: value = FALSE
[31]            mapped to cVPN3000-IETF-Radius-Class: value = NOACCESS
[31] Fiber exit Tx=634 bytes Rx=2218 bytes, status=1
[31] Session End

Сопоставление атрибутов не выполняется

Все имена атрибутов в данном примере чувствительны к регистру. Если атрибуты LDAP не назначены атрибуту Cisco, убедитесь, что написание в карте атрибутов в точности совпадает с именем атрибута, отправленным сервером LDAP. Атрибуты отображаются в том виде, в котором они передаются из сервера LDAP с отладкой, описанной в вышеприведенном разделе.

Связанные обсуждения сообщества поддержки Cisco

В рамках сообщества поддержки Cisco можно задавать и отвечать на вопросы, обмениваться рекомендациями и совместно работать со своими коллегами.


Дополнительные сведения


Document ID: 91831