Este documento demonstra como configurar a Cisco Adaptive Security Appliance (ASA) para usar um servidor LDAP para autenticação de usuários da WebVPN. O servidor LDAP neste exemplo é o Microsoft Active Directory. Essa configuração é realizada com o Adaptive Security Device Manager (ASDM) 6.0(2) em um ASA que executa a versão de software 8.0(2).
Observação: neste exemplo, a autenticação do Lightweight Diretory Access Protocol (LDAP) está configurada para usuários do WebVPN, mas essa configuração também pode ser usada para todos os outros tipos de clientes de acesso remoto. Basta atribuir o grupo de servidores AAA ao perfil de conexão desejado (grupo de túneis), como mostrado.
É necessária uma configuração básica de VPN. Neste exemplo, WebVPN é usado.
Neste exemplo, o ASA verifica com um servidor LDAP para verificar a identidade dos usuários que ele autentica. Este processo não funciona como um serviço de usuário de discagem de autenticação remota (RADIUS - Remote Authentication Dial-In User Service) tradicional ou como uma troca de Terminal Access-Controller Access-Control System Plus (TACACS+ - Sistema de Controle de Acesso de Terminal). Estas etapas explicam, em um alto nível, como o ASA usa um servidor LDAP para verificar as credenciais do usuário.
O usuário inicia uma conexão com o ASA.
O ASA está configurado para autenticar esse usuário com o servidor Microsoft Ative Diretory (AD)/LDAP.
O ASA vincula-se ao servidor LDAP com as credenciais configuradas no ASA (admin neste caso) e pesquisa o nome de usuário fornecido. O usuário admin também obtém as credenciais apropriadas para listar o conteúdo no Ative Diretory. Consulte http://support.microsoft.com/?id=320528 para obter mais informações sobre como conceder privilégios de consulta LDAP.
Nota: O site da Microsoft em http://support.microsoft.com/?id=320528 é gerenciado por um provedor de terceiros. A Cisco não se responsabiliza por seu conteúdo.
Se o nome de usuário for encontrado, o ASA tentará vincular-se ao servidor LDAP com as credenciais que o usuário forneceu no login.
Se a segunda ligação for bem-sucedida, a autenticação será bem-sucedida e o ASA processará os atributos do usuário.
Observação: neste exemplo, os atributos não são usados para nada. Consulte ASA/PIX: Mapeamento de Clientes VPN para Políticas de Grupo VPN através do Exemplo de Configuração LDAP para ver um exemplo de como o ASA pode processar atributos LDAP.
Nesta seção, você verá as informações para configurar o ASA para usar um servidor LDAP para a autenticação de clientes WebVPN.
Conclua estas etapas no ASDM para configurar o ASA para se comunicar com o servidor LDAP e autenticar clientes WebVPN.
Navegue para Configuration > Remote Access VPN > AAA Setup > AAA Server Groups.
Clique em Add ao lado de AAA Server Groups
Especifique um nome para o novo grupo de servidores AAA e escolha LDAP como o protocolo.
Verifique se o novo grupo está selecionado no painel superior e clique em Adicionar ao lado do painel Servidores no grupo selecionado.
Forneça as informações de configuração para o servidor LDAP. A captura de tela subsequente ilustra um exemplo de configuração. Esta é uma explicação de muitas das opções de configuração:
Nome da interface — a interface que o ASA usa para acessar o servidor LDAP
Nome do servidor ou endereço IP — o endereço que o ASA usa para acessar o servidor LDAP
Tipo de servidor — o tipo de servidor LDAP, como Microsoft
DN base — o local na hierarquia LDAP onde o servidor deve começar a pesquisar
Escopo — a extensão da pesquisa na hierarquia LDAP que o servidor deve fazer
Atributo de Nomeação — o atributo (ou atributos) de Nome Distinto Relativo que identifica exclusivamente uma entrada no servidor LDAP. sAMAccountName é o atributo padrão no Microsoft Ative Diretory. Outros atributos comumente usados são CN, UID e userPrincipalName.
DN de login — o DN com privilégios suficientes para poder pesquisar/ler/pesquisar usuários no servidor LDAP
Senha de Login — a senha para a conta DN
Mapa de atributos LDAP — um mapa de atributos LDAP a ser usado com respostas deste servidor. Consulte ASA/PIX: Mapeamento de Clientes VPN para Políticas de Grupo VPN através do Exemplo de Configuração LDAP para obter mais informações sobre como configurar mapas de atributos LDAP.
Depois de configurar o grupo de servidores AAA e adicionar um servidor a ele, é necessário configurar seu perfil de conexão (grupo de túneis) para usar a nova configuração AAA. Navegue para Configuration > Remote Access VPN > Clientless SSL VPN Access > Connection Profiles.
Escolha o perfil de conexão (grupo de túneis) para o qual deseja configurar AAA e clique em Edit
Em Authentication, escolha o grupo de servidores LDAP criado anteriormente.
Conclua estas etapas na interface de linha de comando (CLI) para configurar o ASA para se comunicar com o servidor LDAP e autenticar clientes WebVPN.
ciscoasa#configure terminal !--- Configure the AAA Server group. ciscoasa(config)#aaa-server LDAP_SRV_GRP protocol ldap !--- Configure the AAA Server. ciscoasa(config-aaa-server-group)#aaa-server LDAP_SRV_GRP (inside) host 192.168.1.2 ciscoasa(config-aaa-server-host)#ldap-base-dn dc=ftwsecurity, dc=cisco, dc=com ciscoasa(config-aaa-server-host)#ldap-login-dn cn=admin, cn=users, dc=ftwsecurity, dc=cisco, dc=com ciscoasa(config-aaa-server-host)#ldap-login-password ********** ciscoasa(config-aaa-server-host)#ldap-naming-attribute sAMAccountName ciscoasa(config-aaa-server-host)#ldap-scope subtree ciscoasa(config-aaa-server-host)#server-type microsoft ciscoasa(config-aaa-server-host)#exit !--- Configure the tunnel group to use the new AAA setup. ciscoasa(config)#tunnel-group ExampleGroup2 general-att ciscoasa(config-tunnel-general)#authentication-server-group LDAP_SRV_GRP
Opcional. O ASA atualmente não suporta o mecanismo de referência LDAP para pesquisas de vários domínios (ID de bug Cisco CSCsj32153). Pesquisas em vários domínios têm suporte com o AD no modo de Servidor de Catálogo Global. Para executar pesquisas em vários domínios, configure o servidor AD para o modo Servidor de Catálogo Global, normalmente com os parâmetros-chave para a entrada do servidor LDAP no ASA. A chave é usar um atributo de nome ldap que deve ser exclusivo na árvore de diretórios.
server-port 3268 ldap-scope subtree ldap-naming-attribute userPrincipalName
Use esta seção para confirmar se a sua configuração funciona corretamente.
Verifique sua configuração LDAP com o botão Test na tela de configuração de grupos do servidor AAA. Depois de fornecer um nome de usuário e senha, este botão permite enviar uma solicitação de autenticação de teste ao servidor LDAP.
Navegue para Configuration > Remote Access VPN > AAA Setup > AAA Server Groups.
Selecione o grupo de servidores AAA desejado no painel superior.
Selecione o servidor AAA que deseja testar no painel inferior.
Clique no botão Test à direita do painel inferior.
Na janela exibida, clique no botão de opção Authentication e forneça as credenciais com as quais deseja testar. Clique em OK quando terminar.
Depois que o ASA entra em contato com o servidor LDAP, uma mensagem de êxito ou falha é exibida.
Você pode usar o comando test na linha de comando para testar sua configuração AAA. Uma solicitação de teste é enviada ao servidor AAA e o resultado aparece na linha de comando.
ciscoasa#test aaa-server authentication LDAP_SRV_GRP host 192.168.1.2 username kate password cisco123 INFO: Attempting Authentication test to IP address <192.168.1.2> (timeout: 12 seconds) INFO: Authentication Successful
Se você não tiver certeza da sequência de DN atual a ser usada, execute o comando dsquery em um servidor Windows Ative Diretory de um prompt de comando para verificar a sequência de DN apropriada de um objeto de usuário.
C:\Documents and Settings\Administrator>dsquery user -samid kate !--- Queries Active Directory for samid id "kate" "CN=Kate Austen,CN=Users,DC=ftwsecurity,DC=cisco,DC=com"
O comando debug ldap 255 pode ajudar a solucionar problemas de autenticação nesse cenário. Esse comando habilita a depuração LDAP e permite que você observe o processo que o ASA usa para se conectar ao servidor LDAP. Essas saídas mostram o ASA se conectar ao servidor LDAP conforme descrito na seção Informações de fundo deste documento.
Esta depuração mostra uma autenticação bem-sucedida:
ciscoasa#debug ldap 255 [7] Session Start [7] New request Session, context 0xd4b11730, reqType = 1 [7] Fiber started [7] Creating LDAP context with uri=ldap://192.168.1.2:389 [7] Connect to LDAP server: ldap://192.168.1.2:389, status = Successful [7] defaultNamingContext: value = DC=ftwsecurity,DC=cisco,DC=com [7] supportedLDAPVersion: value = 3 [7] supportedLDAPVersion: value = 2 [7] supportedSASLMechanisms: value = GSSAPI [7] supportedSASLMechanisms: value = GSS-SPNEGO [7] supportedSASLMechanisms: value = EXTERNAL [7] supportedSASLMechanisms: value = DIGEST-MD5 !--- The ASA connects to the LDAP server as admin to search for kate. [7] Binding as administrator [7] Performing Simple authentication for admin to 192.168.1.2 [7] LDAP Search: Base DN = [dc=ftwsecurity, dc=cisco, dc=com] Filter = [sAMAccountName=kate] Scope = [SUBTREE] [7] User DN = [CN=Kate Austen,CN=Users,DC=ftwsecurity,DC=cisco,DC=com] [7] Talking to Active Directory server 192.168.1.2 [7] Reading password policy for kate, dn:CN=Kate Austen,CN=Users, DC=ftwsecurity,DC=cisco,DC=com [7] Read bad password count 1 !--- The ASA binds to the LDAP server as kate to test the password. [7] Binding as user [7] Performing Simple authentication for kate to 192.168.1.2 [7] Checking password policy for user kate [7] Binding as administrator [7] Performing Simple authentication for admin to 192.168.1.2 [7] Authentication successful for kate to 192.168.1.2 [7] Retrieving user attributes from server 192.168.1.2 [7] Retrieved Attributes: [7] objectClass: value = top [7] objectClass: value = person [7] objectClass: value = organizationalPerson [7] objectClass: value = user [7] cn: value = Kate Austen [7] sn: value = Austen [7] givenName: value = Kate [7] distinguishedName: value = CN=Kate Austen,CN=Users,DC=ftwsecurity, DC=cisco,DC=com [7] instanceType: value = 4 [7] whenCreated: value = 20070815155224.0Z [7] whenChanged: value = 20070815195813.0Z [7] displayName: value = Kate Austen [7] uSNCreated: value = 16430 [7] memberOf: value = CN=Castaways,CN=Users,DC=ftwsecurity,DC=cisco,DC=com [7] memberOf: value = CN=Employees,CN=Users,DC=ftwsecurity,DC=cisco,DC=com [7] uSNChanged: value = 20500 [7] name: value = Kate Austen [7] objectGUID: value = ..z...yC.q0..... [7] userAccountControl: value = 66048 [7] badPwdCount: value = 1 [7] codePage: value = 0 [7] countryCode: value = 0 [7] badPasswordTime: value = 128321799570937500 [7] lastLogoff: value = 0 [7] lastLogon: value = 128321798130468750 [7] pwdLastSet: value = 128316667442656250 [7] primaryGroupID: value = 513 [7] objectSid: value = ............Q..p..*.p?E.Z... [7] accountExpires: value = 9223372036854775807 [7] logonCount: value = 0 [7] sAMAccountName: value = kate [7] sAMAccountType: value = 805306368 [7] userPrincipalName: value = kate@ftwsecurity.cisco.com [7] objectCategory: value = CN=Person,CN=Schema,CN=Configuration, DC=ftwsecurity,DC=cisco,DC=com [7] dSCorePropagationData: value = 20070815195237.0Z [7] dSCorePropagationData: value = 20070815195237.0Z [7] dSCorePropagationData: value = 20070815195237.0Z [7] dSCorePropagationData: value = 16010108151056.0Z [7] Fiber exit Tx=685 bytes Rx=2690 bytes, status=1 [7] Session End
Esta depuração mostra uma autenticação que falha devido a uma senha incorreta:
ciscoasa#debug ldap 255 [8] Session Start [8] New request Session, context 0xd4b11730, reqType = 1 [8] Fiber started [8] Creating LDAP context with uri=ldap://192.168.1.2:389 [8] Connect to LDAP server: ldap://192.168.1.2:389, status = Successful [8] defaultNamingContext: value = DC=ftwsecurity,DC=cisco,DC=com [8] supportedLDAPVersion: value = 3 [8] supportedLDAPVersion: value = 2 [8] supportedSASLMechanisms: value = GSSAPI [8] supportedSASLMechanisms: value = GSS-SPNEGO [8] supportedSASLMechanisms: value = EXTERNAL [8] supportedSASLMechanisms: value = DIGEST-MD5 !--- The ASA connects to the LDAP server as admin to search for kate. [8] Binding as administrator [8] Performing Simple authentication for admin to 192.168.1.2 [8] LDAP Search: Base DN = [dc=ftwsecurity, dc=cisco, dc=com] Filter = [sAMAccountName=kate] Scope = [SUBTREE] [8] User DN = [CN=Kate Austen,CN=Users,DC=ftwsecurity,DC=cisco,DC=com] [8] Talking to Active Directory server 192.168.1.2 [8] Reading password policy for kate, dn:CN=Kate Austen,CN=Users, DC=ftwsecurity,DC=cisco,DC=com [8] Read bad password count 1 !--- The ASA attempts to bind as kate, but the password is incorrect. [8] Binding as user [8] Performing Simple authentication for kate to 192.168.1.2 [8] Simple authentication for kate returned code (49) Invalid credentials [8] Binding as administrator [8] Performing Simple authentication for admin to 192.168.1.2 [8] Reading bad password count for kate, dn: CN=Kate Austen,CN=Users, DC=ftwsecurity,DC=cisco,DC=com [8] Received badPwdCount=1 for user kate [8] badPwdCount=1 before, badPwdCount=1 after for kate [8] now: Tue, 28 Aug 2007 15:33:05 GMT, lastset: Wed, 15 Aug 2007 15:52:24 GMT, delta=1122041, maxage=3710851 secs [8] Invalid password for kate [8] Fiber exit Tx=788 bytes Rx=2904 bytes, status=-1 [8] Session End
Esta depuração mostra uma autenticação que falha porque o usuário não pode ser encontrado no servidor LDAP:
ciscoasa#debug ldap 255 [9] Session Start [9] New request Session, context 0xd4b11730, reqType = 1 [9] Fiber started [9] Creating LDAP context with uri=ldap://192.168.1.2:389 [9] Connect to LDAP server: ldap://192.168.1.2:389, status = Successful [9] defaultNamingContext: value = DC=ftwsecurity,DC=cisco,DC=com [9] supportedLDAPVersion: value = 3 [9] supportedLDAPVersion: value = 2 [9] supportedSASLMechanisms: value = GSSAPI [9] supportedSASLMechanisms: value = GSS-SPNEGO [9] supportedSASLMechanisms: value = EXTERNAL [9] supportedSASLMechanisms: value = DIGEST-MD5 !--- The user mikhail is not found. [9] Binding as administrator [9] Performing Simple authentication for admin to 192.168.1.2 [9] LDAP Search: Base DN = [dc=ftwsecurity, dc=cisco, dc=com] Filter = [sAMAccountName=mikhail] Scope = [SUBTREE] [9] Requested attributes not found [9] Fiber exit Tx=256 bytes Rx=607 bytes, status=-1 [9] Session End
As depurações mostram esta mensagem de erro quando a conectividade entre o ASA e o servidor de autenticação LDAP não funciona:
ciscoasa# debug webvpn 255 INFO: debug webvpn enabled at level 255. ciscoasa# webvpn_portal.c:ewaFormSubmit_webvpn_login[2162] ewaFormSubmit_webvpn_login: tgCookie = NULL ewaFormSubmit_webvpn_login: cookie = 1 ewaFormSubmit_webvpn_login: tgCookieSet = 0 ewaFormSubmit_webvpn_login: tgroup = NULL ....not resuming [2587] webvpn_portal.c:http_webvpn_kill_cookie[787] webvpn_auth.c:http_webvpn_pre_authentication[2327] WebVPN: calling AAA with ewsContext (-847917520) and nh (-851696992)! webvpn_auth.c:webvpn_add_auth_handle[5118] WebVPN: started user authentication... webvpn_auth.c:webvpn_aaa_callback[5158] WebVPN: AAA status = (ERROR) webvpn_portal.c:ewaFormSubmit_webvpn_login[2162] ewaFormSubmit_webvpn_login: tgCookie = NULL ewaFormSubmit_webvpn_login: cookie = 1 ewaFormSubmit_webvpn_login: tgCookieSet = 0 ewaFormSubmit_webvpn_login: tgroup = NULL ....resuming [2564] webvpn_auth.c:http_webvpn_post_authentication[1506] WebVPN: user: (utrcd01) auth error.
Revisão | Data de publicação | Comentários |
---|---|---|
1.0 |
28-Aug-2007 |
Versão inicial |