O conjunto de documentação deste produto faz o possível para usar uma linguagem imparcial. Para os fins deste conjunto de documentação, a imparcialidade é definida como uma linguagem que não implica em discriminação baseada em idade, deficiência, gênero, identidade racial, identidade étnica, orientação sexual, status socioeconômico e interseccionalidade. Pode haver exceções na documentação devido à linguagem codificada nas interfaces de usuário do software do produto, linguagem usada com base na documentação de RFP ou linguagem usada por um produto de terceiros referenciado. Saiba mais sobre como a Cisco está usando a linguagem inclusiva.
A Cisco traduziu este documento com a ajuda de tecnologias de tradução automática e humana para oferecer conteúdo de suporte aos seus usuários no seu próprio idioma, independentemente da localização. Observe que mesmo a melhor tradução automática não será tão precisa quanto as realizadas por um tradutor profissional. A Cisco Systems, Inc. não se responsabiliza pela precisão destas traduções e recomenda que o documento original em inglês (link fornecido) seja sempre consultado.
Este documento descreve a configuração do Gerenciamento de senhas usando LDAPs para clientes AnyConnect que se conectam ao Cisco Firepower Threat Defense (FTD).
A Cisco recomenda que você tenha conhecimento básico destes tópicos:
As informações neste documento são baseadas nestas versões de software e hardware:
As informações neste documento foram criadas a partir de dispositivos em um ambiente de laboratório específico. Todos os dispositivos utilizados neste documento foram iniciados com uma configuração (padrão) inicial. Se a rede estiver ativa, certifique-se de que você entenda o impacto potencial de qualquer comando.
O servidor Windows é pré-configurado com ADDS e ADCS para testar o processo de gerenciamento de senha do usuário. Neste guia de configuração, essas contas de usuário são criadas.
Contas do usuário:
Administrador: usado como a conta do diretório para permitir que o FTD se vincule ao servidor do Ative Diretory.
admin: uma conta de administrador de teste usada para demonstrar a identidade do usuário.
Abrir Active Directory Users and Computers
através do Painel do Gerenciador do Servidor.
Abra o View Option
no painel superior e ative a opção Advanced Features
,conforme mostrado na imagem:
Isso permite a exibição de propriedades adicionais sob os objetos do AD.
Por exemplo, para encontrar o DN da raiz razor.local
, clique com o botão direito do mouse razor.local
e escolha Properties
, como mostrado nesta imagem:
Sob Properties
, escolha o Attribute Editor
guia. Localizar distinguishedName
em Atributos, clique em View
,conforme mostrado na imagem.
Essa ação abre uma nova janela em que o DN pode ser copiado e colado no FMC posteriormente.
Neste exemplo, o DN raiz é DC=razor
, DC=local
. Copie o valor e salve-o para depois. Clique em OK
para sair da janela Editor de atributos de string e clique em OK
novamente para sair das Propriedades.
Pressione Win+R
e insira mmc.exe
e clique em OK
, como mostrado nesta imagem.
Navegue até File > Add/Remove Snap-in...
, conforme mostrado nesta imagem:
Em snap-ins disponíveis, escolha Certificates
e clique em Add
, como mostrado nesta imagem:
Escolher Computer account
e clique em Next
, como mostrado nesta imagem:
Como mostrado aqui, clique em Finish
.
Agora, clique em OK
, como mostrado nesta imagem.
Expanda a Personal
e clique em Certificates
. O certificado usado por LDAPs deve ser emitido para o FQDN (Fully Qualified Domain Name, Nome de domínio totalmente qualificado) do servidor Windows. Neste servidor, há três certificados listados:
Um Certificado CA foi emitido para e por razor-WIN-E3SKFJQD6J7-CA
.
Um certificado CA emitido para e por supinfo-WIN-FNJVP9QUEH9-CA
.
Um certificado de identidade foi emitido para WIN-E3SKFJQD6J7.razor.local
por razor-WIN-E3SKFJQD6J7-CA
.
Neste guia de configuração, o FQDN é WIN-E3SKFJQD6J7.razor.local
e, portanto, os dois primeiros certificados não são válidos para uso como o certificado SSL LDAPs. O certificado de identidade emitido para WIN-E3SKFJQD6J7.razor.local
é um certificado que foi emitido automaticamente pelo serviço de CA do Windows Server. Clique duas vezes no certificado para verificar os detalhes.
Para ser usado como o Certificado SSL LDAPs, o certificado deve atender aos seguintes requisitos:
O nome comum ou nome alternativo do assunto DNS corresponde ao FQDN do Windows Server.
O certificado tem autenticação de servidor no campo Uso avançado de chave.
Sob o comando Details
para o certificado, escolha Subject Alternative Name
, onde o FQDN WIN-E3SKFJQD6J7.razor.local
está presente.
Sob Enhanced Key Usage
, Server Authentication
está presente.
Uma vez confirmado, sob o comando Certification Path
selecione o certificado de nível superior, que é o certificado raiz da CA, e clique em View Certificate
. Isso abre os detalhes do certificado para o certificado CA raiz conforme mostrado na imagem:
Sob o comando Details
do certificado CA raiz, clique em Copy to File
e navegue peloCertificate Export Wizard
que exporta a CA raiz no formato PEM.
Escolher Base-64 encoded X.509
como o formato do arquivo.
Abra o certificado de CA raiz armazenado no local selecionado na máquina com um bloco de notas ou algum outro editor de texto.
Essa ação mostra o certificado em formato PEM. Salve-o para usar mais tarde.
-----BEGIN CERTIFICATE-----
MIIDfTCCAmWgAwIBAgIQV4ymxtI3BJ9JHnDL+luYazANBgkqhkiG9w0BAQUFADBRMRUwEwYKCZImiZPyLGQBGRYFbG9jYWwxFTATBgoJkiaJk/IsZAEZFgVyYXp
vcjEhMB8GA1UEAxMYcmF6b3ItV0lOLUUzU0tGSlFENko3LUNBMB4XDTIxMDMyMjE0MzMxNVoXDTI2MDMyMjE0NDMxNVowUTEVMBMGCgmSJomT8ixkARkW
BWxvY2FsMRUwEwYKCZImiZPyLGQBGRYFcmF6b3IxITAfBgNVBAMTGHJhem9yLVdJTi1FM1NLRkpRRDZKNy1DQTCCASIwDQYJKoZIhvcNAQEBBQADggEPAD
CCAQoCggEBAL803nQ6xPpazjj+HBZYc+8fV++RXCG+cUnblxwtXOB2G4UxZ3LRrWznjXaS02Rc3qVw4lnOAziGs4ZMNM1X8UWeKuwi8QZQljJtuSBxL4yjWLyPIg
9dkncZaGtQ1cPmqcnCWunfTsaENKbgoKi4eXjpwwUSbEYwU3OaiiI/tp422ydy3Kgl7Iqt1s4XqpZmTezykWra7dUyXfkuESk6lEOAV+zNxfBJh3Q9Nzpc2IF/FtktWnhj
CSkTQTRXYryy8dJrWjAF/n6A3VnS/l7Uhujlx4CD20BkfQy6p5HpGxdc4GMTTnDzUL46ot6imeBXPHF0IJehh+tZk3bxpoxTDXECAwEAAaNRME8wCwYDVR0PBAQ
DAgGGMA8GA1UdEwEB/wQFMAMBAf8wHQYDVR0OBBYEFM+DkqQUAOdY379NnViaMIJAVTZ1MBAGCSsGAQQBgjcVAQQDAgEAMA0GCSqGSIb3DQEBBQU
AA4IBAQCiSm5U7U6Y7zXdx+dleJd0QmGgKayAAuYAD+MWNwC4NzFD8Yr7BnO6f/VnF6VGYPXa+Dvs7VLZewMNkp3i+VQpkBCKdhAV6qZu15697plajfI/eNPrcI
4sMZffbVrGlRz7twWY36J5G5vhNUhzZ1N2OLw6wtHg2SO8XlvpTS5fAnyCZgSK3VPKfXnn1HLp7UH5/SWN2JbPL15r+wCW84b8nrylbBfn0NEX7l50Ff502DYCP
GuDsepY7/u2uWfy/vpTJigeok2DH6HFfOET3sE+7rsIAY+of0kWW5gNwQ4hOwv4Goqj+YQRAXXi2OZyltHR1dfUUbwVENSFQtDnFA7X
-----END CERTIFICATE-----
1. Numa situação de múltiplos certificados de identificação que podem ser utilizados pelo LDAPS e quando há incerteza quanto ao que é utilizado, ou quando não há acesso ao servidor LDAPS, ainda é possível extrair a AC raiz de uma captura de pacotes efetuada no FTD.
2. Caso você tenha vários certificados válidos para Autenticação de Servidor no servidor LDAP (como o controlador de domínio do AD DS) armazenamento de certificados de computador local, observe que um certificado diferente é usado para comunicações LDAPS. A melhor solução para esse problema é remover todos os certificados desnecessários do repositório de certificados do computador local e ter apenas um certificado válido para a autenticação do servidor.
No entanto, se houver um motivo legítimo para você exigir dois ou mais certificados e ter pelo menos um servidor LDAP do Windows Server 2008, o armazenamento de certificados dos Serviços de Domínio Ative Diretory (NTDS\Personal) poderá ser usado para comunicações LDAPs.
Estas etapas demonstram como exportar um certificado habilitado para LDAPS de um repositório de certificados do computador local do controlador de domínio para o repositório de certificados do serviço dos Serviços de Domínio Ative Diretory (NTDS\Personal).
Navegue até o console MMC no servidor do Ative Diretory, escolha Arquivo e clique em Add/Remove Snap-in
.
Clique em Certificates
e clique em Add
.
No Certificates snap-in
, escolha Computer account
e clique em Next
.
IN Select Computer
, escolha Local Computer
, clique em OK
e clique em Finish
. IN Add or Remove Snap-ins
, clique em OK
.
No console de certificados de um computador que contém um certificado usado para Autenticação de Servidor, clique com o botão direito do mouse no certificate
, clique em All Tasks
e clique em Export
.
pfx
nas seções subsequentes. Consulte este artigo sobre como exportar um certificado no pfx
formato do MMC:Quando a exportação do certificado for concluída, navegue até Add/Remove Snap-in
ligado MMC console
. Clique em Certificates
e clique em Add
.
Escolher Service account
e clique em Next
.
No Select Computer
, escolha Local Computer
e clique em Next
.
Escolher Active Directory Domain Services
e clique em Finish
.
Na guia Add/Remove Snap-ins
, clique em OK
.
Expandir Certificates - Services (Active Directory Domain Services)
e clique em NTDS\Personal
.
Clique com o botão direito do mouse NTDS\Personal
, clique em All Tasks
e clique em Import
.
Na guia Certificate Import Wizard
bem-vindo, clique em Next
.
Na tela Arquivo a ser importado, clique em Browse
e localize o arquivo de certificado que você exportou anteriormente.
Na tela Aberta, verifique se a opção Troca de informações pessoais (*pfx
,*.p12
) é selecionado como o tipo de arquivo e, em seguida, navegue pelo sistema de arquivos para localizar o certificado exportado anteriormente. Em seguida, clique nesse certificado.
Clique em Open
e clique em Next
.
Na tela Senha, digite a senha definida para o arquivo e clique em Next
.
Na página Repositório de Certificados, certifique-se de que a opção Colocar todos os certificados esteja selecionada e leia Repositório de Certificados: NTDS\Personal
e clique em Next
.
Na guia Certificate Import Wizard
de conclusão, clique em Finish
. Em seguida, você verá uma mensagem de que a importação foi bem-sucedida. Clique em OK
. Verifica-se que o certificado foi importado no armazenamento de certificados: NTDS\Personal
.
Para implantar a configuração do AnyConnect, o FTD deve ser registrado com o servidor de licenciamento inteligente e uma licença Plus, Apex ou VPN Only válida deve ser aplicada ao dispositivo.
Navegue até System > Integration
. Navegue até Realms
e clique em Add Realm
, como mostrado nesta imagem:
Preencha os campos exibidos com base nas informações coletadas do servidor Microsoft para LDAPs. Antes disso, importe o Certificado de CA raiz que assinou o certificado do serviço LDAP no Windows Server em Objects > PKI > Trusted CAs > Add Trusted CA
, como é referenciado noDirectory Server Configuration
do território. Depois de concluído, clique em OK
.
Clique em Test
para garantir que o FMC possa ligar-se com êxito ao nome de usuário e à senha do diretório fornecidos na etapa anterior. Como esses testes são iniciados a partir do FMC e não por meio de uma das interfaces roteáveis configuradas no FTD (como interno, externo, dmz), uma conexão bem-sucedida (ou com falha) não garante o mesmo resultado para a autenticação do AnyConnect, já que as solicitações de autenticação LDAP do AnyConnect são iniciadas a partir de uma das interfaces roteáveis do FTD.
Ative o novo realm.
Escolha o perfil de conexão existente ou crie um novo, se for uma configuração inicial do AnyConnect. Aqui, é usado um perfil de conexão existente chamado 'AnyConnect-AD' mapeado com autenticação local.
Edite o perfil do Connection e mapeie o novo servidor LDAP configurado nas etapas anteriores, sob as configurações AAA do Perfil de conexão. Depois de concluído, clique em Save
no canto superior direito.
Habilite o gerenciamento de senhas no AAA > Advanced Settings
e salve a configuração.
Depois de concluir todas as configurações, clique no botãoDeploy
na parte superior direita.
Clique na caixa de seleção ao lado da configuração do FTD aplicada a ele e clique em Deploy
, como mostrado nesta imagem:
Esta é a configuração vista na CLI do FTD após a implantação bem-sucedida.
> show running-config aaa-server
aaa-server LDAP-Server protocol ldap <------ aaa-server group configured for LDAPs authentication
max-failed-attempts 4
realm-id 8
aaa-server LDAP-Server host WIN-E3SKFJQD6J7.razor.local <-------- LDAPs Server to which the queries are sent
server-port 636
ldap-base-dn DC=razor,DC=local
ldap-group-base-dn DC=razor,DC=local
ldap-scope subtree
ldap-naming-attribute sAMAccountName
ldap-login-password *****
ldap-login-dn *****@razor.local
ldap-over-ssl enable
server-type microsoft
> show running-config webvpn
webvpn
enable Outside
anyconnect image disk0:/csm/anyconnect-win-4.10.01075-webdeploy-k9.pkg 1 regex "Windows"
anyconnect profiles FTD-Client-Prof disk0:/csm/ftd.xml
anyconnect enable
tunnel-group-list enable
cache
no disable
error-recovery disable
> show running-config tunnel-group
tunnel-group AnyConnect-AD type remote-access
tunnel-group AnyConnect-AD general-attributes
address-pool Pool-1
authentication-server-group LDAP-Server <-------- LDAPs Server group name mapped to the tunnel-group
default-group-policy AnyConnect-Group
password-management password-expire-in-days 1 <-------- Password-management configuration mapped under the tunnel-group
tunnel-group AnyConnect-AD webvpn-attributes
group-alias Dev enable
> show running-config group-policy AnyConnect-Group
group-policy AnyConnect-Group internal <--------- Group-Policy configuration that is mapped once the user is authenticated
group-policy AnyConnect-Group attributes
vpn-simultaneous-logins 3
vpn-idle-timeout 35791394
vpn-idle-timeout alert-interval 1
vpn-session-timeout none
vpn-session-timeout alert-interval 1
vpn-filter none
vpn-tunnel-protocol ikev2 ssl-client <-------- Protocol specified as SSL to entertain the AnyConnect connection over port 443
split-tunnel-policy tunnelspecified
split-tunnel-network-list value Remote-Access-Allow
default-domain none
split-dns none
split-tunnel-all-dns disable
client-bypass-protocol disable
vlan none
address-pools none
webvpn
anyconnect ssl dtls enable
anyconnect mtu 1406
anyconnect firewall-rule client-interface public none
anyconnect firewall-rule client-interface private none
anyconnect ssl keepalive 20
anyconnect ssl rekey time none
anyconnect ssl rekey method none
anyconnect dpd-interval client 30
anyconnect dpd-interval gateway 30
anyconnect ssl compression none
anyconnect dtls compression none
anyconnect modules value none
anyconnect profiles value FTD-Client-Prof type user
anyconnect ask none default anyconnect
anyconnect ssl df-bit-ignore disable
> show running-config ssl
ssl trust-point ID-New-Cert Outside <-------- FTD ID-cert trustpoint name mapped to the outside interface on which AnyConnect Connections are entertained
1. Inicie uma Conexão com o perfil de conexão em questão. Depois que for determinado no login inicial que a senha deve ser alterada, uma vez que a senha anterior foi rejeitada pelo Microsoft Server quando expirou, o usuário é solicitado a alterar a senha.
Depois que o usuário digitar a nova senha para login, a conexão será estabelecida com êxito.
Verifique a conexão do usuário na CLI do FTD:
FTD_2# sh vpn-sessiondb anyconnect
Session Type: AnyConnect
Username : admin Index : 7 <------- Username, IP address assigned information of the client
Assigned IP : 10.1.x.x Public IP : 10.106.xx.xx
Protocol : AnyConnect-Parent SSL-Tunnel DTLS-Tunnel
License : AnyConnect Premium
Encryption : AnyConnect-Parent: (1)none SSL-Tunnel: (1)AES-GCM-256 DTLS-Tunnel: (1)AES-GCM-256
Hashing : AnyConnect-Parent: (1)none SSL-Tunnel: (1)SHA384 DTLS-Tunnel: (1)SHA384
Bytes Tx : 16316 Bytes Rx : 2109
Group Policy : AnyConnect-Group Tunnel Group : AnyConnect-AD <-------- Tunnel-Group to which the AnyConnect connection falls, and the group-policy assigned to user
Login Time : 13:22:24 UTC Mon Apr 25 2022
Duration : 0h:00m:51s
Inactivity : 0h:00m:00s
VLAN Mapping : N/A VLAN : none
Audt Sess ID : 0ac5e0fa000070006266a090
Security Grp : none Tunnel Zone : 0
Essa depuração pode ser executada na CLI de diagnóstico para solucionar problemas relacionados ao gerenciamento de senhas: debug ldap 255.
[24] Session Start
[24] New request Session, context 0x0000148f3c271830, reqType = Authentication
[24] Fiber started
[24] Creating LDAP context with uri=ldaps://10.106.71.234:636
[24] Connect to LDAP server: ldaps://10.106.71.234:636, status = Successful <-------- Successful connection to the LDAPs server over post 636
[24] supportedLDAPVersion: value = 3
[24] supportedLDAPVersion: value = 2
[24] Binding as *****@razor.local
[24] Performing Simple authentication for *****@razor.local to 10.106.71.234
[24] LDAP Search:
Base DN = [DC=razor,DC=local]
Filter = [sAMAccountName=admin]
Scope = [SUBTREE]
[24] User DN = [CN=admin,CN=Users,DC=razor,DC=local]
[24] Talking to Active Directory server 10.106.71.234
[24] Reading password policy for admin, dn:CN=admin,CN=Users,DC=razor,DC=local <--------- Once the client enters credentials during initial login, if the password is expired, then it is read and the user is asked to provide a new password
[24] Read bad password count 3
[24] Binding as admin
[24] Performing Simple authentication for admin to 10.106.71.234
[24] Simple authentication for admin returned code (49) Invalid credentials
[24] Message (admin): 80090308: LdapErr: DSID-0C0903C5, comment: AcceptSecurityContext error, data 773, v23f0
[24] Checking password policy
[24] New password is required for admin <---------- New password is asked to be provided
[24] Fiber exit Tx=622 bytes Rx=2771 bytes, status=-1
[24] Session End
[25] Session Start
[25] New request Session, context 0x0000148f3c271830, reqType = Modify Password
[25] Fiber started
[25] Creating LDAP context with uri=ldaps://10.106.71.234:636
[25] Connect to LDAP server: ldaps://10.106.71.234:636, status = Successful <----------- New connection is initiated to the LDAPs server for the password change
[25] supportedLDAPVersion: value = 3
[25] supportedLDAPVersion: value = 2
[25] Binding as *****@razor.local
[25] Performing Simple authentication for *****@razor.local to 10.106.71.234
[25] LDAP Search:
Base DN = [DC=razor,DC=local]
Filter = [sAMAccountName=admin]
Scope = [SUBTREE]
[25] User DN = [CN=admin,CN=Users,DC=razor,DC=local]
[25] Talking to Active Directory server 10.106.71.234
[25] Reading password policy for admin, dn:CN=admin,CN=Users,DC=razor,DC=local
[25] Read bad password count 3
[25] Change Password for admin successfully converted old password to unicode
[25] Change Password for admin successfully converted new password to unicode <----------- Client provides the new password value
[25] Password for admin successfully changed <----------- Password is changed successfully for the client
[25] Retrieved User Attributes:
[25] objectClass: value = top
[25] objectClass: value = person
[25] objectClass: value = organizationalPerson
[25] objectClass: value = user
[25] cn: value = admin
[25] givenName: value = admin
[25] distinguishedName: value = CN=admin,CN=Users,DC=razor,DC=local
[25] instanceType: value = 4
[25] whenCreated: value = 20201029053516.0Z
[25] whenChanged: value = 20220426032127.0Z
[25] displayName: value = admin
[25] uSNCreated: value = 16710
[25] uSNChanged: value = 98431
[25] name: value = admin
[25] objectGUID: value = ..0.].LH.....9.4
[25] userAccountControl: value = 512
[25] badPwdCount: value = 3
[25] codePage: value = 0
[25] countryCode: value = 0
[25] badPasswordTime: value = 132610388348662803
[25] lastLogoff: value = 0
[25] lastLogon: value = 132484577284881837
[25] pwdLastSet: value = 0
[25] primaryGroupID: value = 513
[25] objectSid: value = ................7Z|....RQ...
[25] accountExpires: value = 9223372036854775807
[25] logonCount: value = 0
[25] sAMAccountName: value = admin
[25] sAMAccountType: value = 805306368
[25] userPrincipalName: value = ******@razor.local
[25] objectCategory: value = CN=Person,CN=Schema,CN=Configuration,DC=razor,DC=local
[25] dSCorePropagationData: value = 20220425125800.0Z
[25] dSCorePropagationData: value = 20201029053516.0Z
[25] dSCorePropagationData: value = 16010101000000.0Z
[25] lastLogonTimestamp: value = 132953506361126701
[25] msDS-SupportedEncryptionTypes: value = 0
[25] uid: value = ******@razor.local
[25] Fiber exit Tx=714 bytes Rx=2683 bytes, status=1
[25] Session End
Geralmente, se a política de senha definida pelo Microsoft Server não for atendida durante o tempo em que o usuário fornecer a nova senha, a conexão será encerrada com o erro "A senha não atende aos requisitos da política de senha". Portanto, certifique-se de que a nova senha atenda à política definida pelo Microsoft Server para LDAPs.
Revisão | Data de publicação | Comentários |
---|---|---|
1.0 |
12-Sep-2023 |
Versão inicial |