El conjunto de documentos para este producto aspira al uso de un lenguaje no discriminatorio. A los fines de esta documentación, "no discriminatorio" se refiere al lenguaje que no implica discriminación por motivos de edad, discapacidad, género, identidad de raza, identidad étnica, orientación sexual, nivel socioeconómico e interseccionalidad. Puede haber excepciones en la documentación debido al lenguaje que se encuentra ya en las interfaces de usuario del software del producto, el lenguaje utilizado en función de la documentación de la RFP o el lenguaje utilizado por un producto de terceros al que se hace referencia. Obtenga más información sobre cómo Cisco utiliza el lenguaje inclusivo.
Cisco ha traducido este documento combinando la traducción automática y los recursos humanos a fin de ofrecer a nuestros usuarios en todo el mundo contenido en su propio idioma. Tenga en cuenta que incluso la mejor traducción automática podría no ser tan precisa como la proporcionada por un traductor profesional. Cisco Systems, Inc. no asume ninguna responsabilidad por la precisión de estas traducciones y recomienda remitirse siempre al documento original escrito en inglés (insertar vínculo URL).
Este documento describe cómo configurar un Cisco Adaptive Security Appliance (ASA) como servidor de la Autoridad de Certificación (CA) y como gateway de Secure Sockets Layer (SSL) para Cisco AnyConnect Secure Mobility Clients.
Cisco recomienda que tenga conocimiento sobre estos temas:
ASDM 7.3 o superior
La información que contiene este documento se basa en las siguientes versiones de software y hardware.
PC que ejecuta un sistema operativo compatible según el Gráfico de compatibilidad.
Nota: Descargue el paquete AnyConnect VPN Client (anyconnect-win*.pkg) de Cisco Software Download (sólo clientes registrados) . Copie el AnyConnect VPN client en la memoria flash ASA, que será descargada a los equipos de los usuarios remotos para establecer la conexión SSL VPN con el ASA. Consulte la sección Instalación de AnyConnect Client de la guía de configuración ASA para obtener más información.
La información que contiene este documento se creó a partir de los dispositivos en un ambiente de laboratorio específico. Todos los dispositivos que se utilizan en este documento se pusieron en funcionamiento con una configuración verificada (predeterminada). If your network is live, make sure that you understand the potential impact of any command.
La autoridad de certificación en ASA proporciona estas funcionalidades:
Directrices y limitaciones
En esta sección se describe cómo configurar Cisco ASA como servidor de CA local.
Nota: Use el Command Lookup Tool (únicamente clientes registrados) para obtener más información sobre los comandos que se utilizan en esta sección.
CLI equivalente:
ASA(config)# crypto ca server ASA(config-ca-server)# issuer-name CN=ASA.local ASA(config-ca-server)# subject-name-default CN=ASA.local ASA(config-ca-server)# lifetime certificate 365 ASA(config-ca-server)# lifetime ca-certificate 1095 ASA(config-ca-server)# passphrase cisco123 ASA(config-ca-server)# no shutdown % Some server settings cannot be changed after CA certificate generation. Keypair generation process begin. Please wait... Completed generation of the certificate and keypair... Archiving certificate and keypair to storage... Complete
Estos son campos adicionales que se pueden configurar en Configuración del servidor de la CA local.
URL de punto de distribución CRL | Esta es la ubicación de CRL en ASA. La ubicación predeterminada es http://hostname.domain/+CSCOCA+/asa_ca.crl, pero se puede modificar la dirección URL. |
Interfaz y puerto de Publish-CRL | Para que la CRL esté disponible para la descarga HTTP en una interfaz y un puerto determinados, elija una interfaz de publicación de CRL en la lista desplegable. A continuación, introduzca el número de puerto, que puede ser cualquier número entre 1 y 65535. El número de puerto predeterminado es el puerto TCP 80. |
Duración de CRL | La entidad emisora de certificados local actualiza y vuelve a emitir la CRL cada vez que se revoca o anula un certificado de usuario, pero si no hay cambios en la revocación, la CRL se vuelve a emitir automáticamente cada vez que dura la CRL, el período de tiempo especificado con el comando lifetime crl durante la configuración de la entidad emisora de certificados local. Si no especifica una duración de CRL, el período de tiempo predeterminado es de seis horas. |
Ubicación de almacenamiento de base de datos | ASA accede e implementa la información de usuario, los certificados emitidos y las listas de revocación mediante una base de datos de CA local. Esta base de datos reside en la memoria flash local de forma predeterminada, o se puede configurar para residir en un sistema de archivos externo que esté montado y al que el ASA pueda acceder. |
Nombre de asunto predeterminado | Introduzca un asunto predeterminado (cadena de DN) para anexar a un nombre de usuario en los certificados emitidos. Los atributos de DN permitidos se proporcionan en esta lista: ·CN (nombre común)SN (apellido) ·O (nombre de la organización) ·L (localidad) ·C (País) ·OU (Unidad organizativa) ·EA (dirección de correo electrónico) ·ST (Estado/Provincia) ·T (Título) |
Período de inscripción | Establece el límite de tiempo de inscripción en horas dentro de las cuales el usuario podría recuperar el archivo PKCS12 de ASA. El valor predeterminado es 24 horas. Nota: Si el período de inscripción vence antes de que el usuario recupere el archivo PKCS12 que incluye el certificado de usuario, la inscripción no está permitida. |
Vencimiento de contraseña única | Define la cantidad de tiempo en horas que OTP es válido para la inscripción de usuarios. Este período de tiempo comienza cuando se permite al usuario inscribirse. El valor predeterminado es 72 horas. |
Recordatorio de vencimiento del certificado | Especifica el número de días que deben transcurrir antes de que caduque el certificado para que se envíe a los propietarios de certificados un aviso inicial de reinscripción. |
Especifique los detalles del usuario: Nombre de usuario, ID de correo electrónico y nombre del asunto, como se muestra en esta imagen.
CLI equivalente:
ASA(config)# crypto ca server user-db add user1 dn CN=user1,OU=TAC email user1@cisco.com
CLI para verificar el estado del usuario:
ASA# show crypto ca server user-db username: user1 email: user1@cisco.com dn: CN=user1,OU=TAC allowed: 19:03:11 UTC Thu Jan 14 2016 notified: 1 times enrollment status: Allowed to Enroll
Enviar correo electrónico a OTP (requiere que el servidor SMTP y la configuración de correo electrónico se configuren en la configuración del servidor de la CA).
O
Consulte directamente el OTP y compártalo con el usuario haciendo clic en Ver/Volver a generar OTP. Esto también se puede utilizar para regenerar la OTP.
CLI equivalente:
!! Email the OTP to the user
ASA# crypto ca server user-db allow user1 email-otp
!! Display the OTP on terminal
ASA# crypto ca server user-db allow user1 display-otp
Username: user1
OTP: 18D14F39C8F3DD84
Enrollment Allowed Until: 14:18:34 UTC Tue Jan 12 2016
!! Enable web-access on the "Internet" interface of the ASA
ASA(config)# webvpn ASA(config-webvpn)#enable Internet
https://IP/FQDN>/+CSCOCA+/enroll.html
La frase de contraseña para instalar el certificado de cliente es la misma que la OTP recibida anteriormente.
El asistente de configuración/CLI de AnyConnect se puede utilizar para configurar AnyConnect Secure Mobility Client. Asegúrese de que se haya cargado un paquete de AnyConnect Client en la memoria flash o el disco del firewall de ASA antes de continuar.
Complete estos pasos para configurar AnyConnect Secure Mobility Client mediante el asistente de configuración:
2. Introduzca el nombre del perfil de conexión, seleccione la interfaz en la que finalizará la VPN en el menú desplegable VPN Access Interface (Interfaz de acceso a VPN) y haga clic en Next (Siguiente).
3. Marque la casilla de control SSL para activar Secure Sockets Layer (SSL). El certificado del dispositivo puede ser un certificado emitido por una autoridad de certificación (CA) de confianza (como Verisign o Entrust) o un certificado firmado automáticamente. Si el certificado ya está instalado en ASA, se puede elegir en el menú desplegable.
Nota: Este certificado es el certificado del lado del servidor que ASA presentará a los clientes SSL. Si no hay certificados de servidor instalados actualmente en el ASA de los que se debe generar un certificado autofirmado, haga clic en Manage.
Para instalar un certificado de terceros, siga los pasos que se describen en el documento Certificados de proveedores de terceros para la instalación manual de ASA 8.x para usar con el ejemplo de configuración de WebVPN de Cisco.
4. Haga clic en Agregar para agregar el paquete de cliente AnyConnect (archivo .pkg) desde la unidad local o desde la memoria flash/disco de ASA.
Haga clic en Buscar Flash para agregar la imagen de la unidad flash, o haga clic en Cargar para agregar la imagen de la unidad local de la máquina host.
5. La autenticación de usuario se puede completar a través de los grupos de servidores Autenticación, Autorización y Contabilización (AAA). Si los usuarios ya están configurados, elija LOCAL y haga clic en Next. De lo contrario, agregue un usuario a la base de datos de usuarios locales y haga clic en Next.
Nota: En este ejemplo, se configura la autenticación LOCAL, lo que significa que la base de datos de usuarios locales en ASA se utilizará para la autenticación.
6. Asegúrese de que el Pool de Direcciones para los clientes VPN esté configurado. Si ya se ha configurado un grupo de direcciones IP, selecciónelo en el menú desplegable. Si no es así, haga clic en New para configurar. Una vez finalizado, haga clic en Next.
7. Opcionalmente, configure los servidores y DN del Sistema de nombres de dominio (DNS) en los campos DNS y Nombre de dominio y, a continuación, haga clic en Siguiente.
8. Asegúrese de que el tráfico entre el cliente y la subred interna debe estar exento de cualquier traducción de direcciones de red (NAT) dinámica. Active la casilla de verificación Exención del tráfico VPN de la traducción de direcciones de red y configure la interfaz LAN que se utilizará para la exención. Además, especifique la red local que debe estar exenta y haga clic en Next.
9. Haga clic en Next.
10. El último paso muestra el resumen. Haga clic en Finalizar para completar la configuración.
La configuración de AnyConnect Client ahora está completa. Sin embargo, al configurar AnyConnect a través del asistente de configuración, se configura el método de autenticación como AAA de forma predeterminada. Para autenticar los clientes a través de certificados y nombre de usuario/contraseña, el grupo de túnel (perfil de conexión) debe configurarse para utilizar certificados y AAA como método de autenticación.
!! *****Configure the VPN Pool*****
ip local pool VPN_Pool 10.10.10.1-10.10.10.200 mask 255.255.255.0 !! *****Configure Address Objects for VPN Pool and Local Network*****
object network NETWORK_OBJ_10.10.10.0_24 subnet 10.10.10.0 255.255.255.0
object network NETWORK_OBJ_192.168.10.0_24 subnet 192.168.10.0 255.255.255.0 exit !! *****Configure WebVPN*****
webvpn enable Internet anyconnect image disk0:/anyconnect-win-4.2.00096-k9.pkg 1 anyconnect enable tunnel-group-list enable exit !! *****Configure User*****
username user1 password mbO2jYs13AXlIAGa encrypted privilege 2 !! *****Configure Group-Policy*****
group-policy GroupPolicy_SSL_GRP internal group-policy GroupPolicy_SSL_GRP attributes vpn-tunnel-protocol ssl-client dns-server none wins-server none default-domain none exit !! *****Configure Tunnel-Group*****
tunnel-group SSL_GRP type remote-access tunnel-group SSL_GRP general-attributes authentication-server-group LOCAL default-group-policy GroupPolicy_SSL_GRP address-pool VPN_Pool tunnel-group SSL_GRP webvpn-attributes authentication aaa certificate group-alias SSL_GRP enable exit !! *****Configure NAT-Exempt Policy*****
nat (Inside,Internet) 1 source static NETWORK_OBJ_192.168.10.0_24 NETWORK_OBJ_192.168.10.0_24 destination static NETWORK_OBJ_10.10.10.0_24 NETWORK_OBJ_10.10.10.0_24 no-proxy-arp route-lookup
Utilize esta sección para confirmar que su configuración funcione correctamente.
Nota: la herramienta Output Interpreter Tool (sólo clientes registrados) admite ciertos comandos show. Utilice la herramienta para ver una análisis de información de salida del comando show.
Asegúrese de que el servidor de la CA esté habilitado.
show crypto ca server
ASA(config)# show crypto ca server Certificate Server LOCAL-CA-SERVER:
Status: enabled
State: enabled
Server's configuration is locked (enter "shutdown" to unlock it)
Issuer name: CN=ASA.local
CA certificate fingerprint/thumbprint: (MD5)
32e868b9 351a1b07 4b59cce5 704d6615
CA certificate fingerprint/thumbprint: (SHA1)
6136511b 14aa1bbe 334c2659 ae7015a9 170a7c4d
Last certificate issued serial number: 0x1
CA certificate expiration timer: 19:25:42 UTC Jan 8 2019
CRL NextUpdate timer: 01:25:42 UTC Jan 10 2016
Current primary storage dir: flash:/LOCAL-CA-SERVER/
Auto-Rollover configured, overlap period 30 days
Autorollover timer: 19:25:42 UTC Dec 9 2018
WARNING: Configuration has been modified and needs to be saved!!
Asegúrese de que el usuario puede inscribirse después de agregar:
*****Before Enrollment***** ASA# show crypto ca server user-db username: user1 email: user1@cisco.com dn: CN=user1,OU=TAC allowed: 19:03:11 UTC Thu Jan 14 2016 notified: 1 times enrollment status: Allowed to Enroll >>> Shows the status "Allowed to Enroll" *****After Enrollment***** username: user1 email: user1@cisco.com dn: CN=user1,OU=TAC allowed: 19:05:14 UTC Thu Jan 14 2016 notified: 1 times enrollment status: Enrolled, Certificate valid until 19:18:30 UTC Tue Jan 10 2017, Renewal: Allowed
Puede comprobar los detalles de la conexión anyconnect a través de CLI o ASDM.
Mediante CLI
show vpn-sessiondb detail anyconnect
ASA# show vpn-sessiondb detail anyconnect Session Type: AnyConnect Detailed Username : user1 Index : 1 Assigned IP : 10.10.10.1 Public IP : 10.142.189.181 Protocol : AnyConnect-Parent SSL-Tunnel DTLS-Tunnel License : AnyConnect Essentials Encryption : AnyConnect-Parent: (1)none SSL-Tunnel: (1)RC4 DTLS-Tunnel: (1)AES128 Hashing : AnyConnect-Parent: (1)none SSL-Tunnel: (1)SHA1 DTLS-Tunnel: (1)SHA1 Bytes Tx : 13822 Bytes Rx : 13299 Pkts Tx : 10 Pkts Rx : 137 Pkts Tx Drop : 0 Pkts Rx Drop : 0 Group Policy : GroupPolicy_SSL_GRP Tunnel Group : SSL_GRP Login Time : 19:19:10 UTC Mon Jan 11 2016 Duration : 0h:00m:47s Inactivity : 0h:00m:00s NAC Result : Unknown VLAN Mapping : N/A VLAN : none AnyConnect-Parent Tunnels: 1 SSL-Tunnel Tunnels: 1 DTLS-Tunnel Tunnels: 1 AnyConnect-Parent: Tunnel ID : 1.1 Public IP : 10.142.189.181 Encryption : none Hashing : none TCP Src Port : 52442 TCP Dst Port : 443 Auth Mode : Certificate and userPassword Idle Time Out: 30 Minutes Idle TO Left : 29 Minutes Client OS : Windows Client Type : AnyConnect Client Ver : Cisco AnyConnect VPN Agent for Windows 4.2.00096 Bytes Tx : 6911 Bytes Rx : 768 Pkts Tx : 5 Pkts Rx : 1 Pkts Tx Drop : 0 Pkts Rx Drop : 0 SSL-Tunnel: Tunnel ID : 1.2 Assigned IP : 10.10.10.1 Public IP : 10.142.189.181 Encryption : RC4 Hashing : SHA1 Encapsulation: TLSv1.0 TCP Src Port : 52443 TCP Dst Port : 443 Auth Mode : Certificate and userPassword Idle Time Out: 30 Minutes Idle TO Left : 29 Minutes Client OS : Windows Client Type : SSL VPN Client Client Ver : Cisco AnyConnect VPN Agent for Windows 4.2.00096 Bytes Tx : 6911 Bytes Rx : 152 Pkts Tx : 5 Pkts Rx : 2 Pkts Tx Drop : 0 Pkts Rx Drop : 0 DTLS-Tunnel: Tunnel ID : 1.3 Assigned IP : 10.10.10.1 Public IP : 10.142.189.181 Encryption : AES128 Hashing : SHA1 Encapsulation: DTLSv1.0 UDP Src Port : 59167 UDP Dst Port : 443 Auth Mode : Certificate and userPassword Idle Time Out: 30 Minutes Idle TO Left : 30 Minutes Client OS : Windows Client Type : DTLS VPN Client Client Ver : Cisco AnyConnect VPN Agent for Windows 4.2.00096 Bytes Tx : 0 Bytes Rx : 12907 Pkts Tx : 0 Pkts Rx : 142 Pkts Tx Drop : 0 Pkts Rx Drop : 0 NAC: Reval Int (T): 0 Seconds Reval Left(T): 0 Seconds SQ Int (T) : 0 Seconds EoU Age(T) : 51 Seconds Hold Left (T): 0 Seconds Posture Token: Redirect URL :
Vía ASDM
Detalles: proporciona más información sobre la sesión.
Cerrar sesión: para cerrar la sesión del usuario manualmente desde el equipo de cabecera
Ping: para hacer ping al cliente AnyConnect desde el equipo de cabecera
En esta sección se brinda información que puede utilizar para resolver problemas en su configuración.
Nota: Consulte Información Importante sobre Comandos Debug antes de utilizar los comandos debug.
Precaución: En ASA, puede establecer varios niveles de depuración; de forma predeterminada, se utiliza el nivel 1. Si cambia el nivel de depuración, puede aumentar la verbosidad de los depuradores. Hágalo con precaución, especialmente en entornos de producción.
Este resultado de depuración muestra cuándo el servidor de la CA está habilitado mediante el comando no shut.
ASA# debug crypto ca 255 ASA# debug crypto ca server 255 ASA# debug crypto ca message 255 ASA# debug crypto ca transaction 255 CRYPTO_CS: input signal enqueued: no shut >>>>> Command issued to Enable the CA server Crypto CS thread wakes up! CRYPTO_CS: enter FSM: input state disabled, input signal no shut CRYPTO_CS: starting enabling checks CRYPTO_CS: found existing serial file. CRYPTO_CS: started CA cert timer, expiration time is 17:53:33 UTC Jan 13 2019 CRYPTO_CS: Using existing trustpoint 'LOCAL-CA-SERVER' and CA certificate CRYPTO_CS: file opened: flash:/LOCAL-CA-SERVER/LOCAL-CA-SERVER.ser CRYPTO_CS: DB version 1 CRYPTO_CS: last issued serial number is 0x4 CRYPTO_CS: closed ser file CRYPTO_CS: file opened: flash:/LOCAL-CA-SERVER/LOCAL-CA-SERVER.crl CRYPTO_CS: CRL file LOCAL-CA-SERVER.crl exists. CRYPTO_CS: Read 220 bytes from crl file. CRYPTO_CS: closed crl file CRYPTO_PKI: Storage context locked by thread Crypto CA Server CRYPTO_PKI: inserting CRL CRYPTO_PKI: set CRL update timer with delay: 20250 CRYPTO_PKI: the current device time: 18:05:17 UTC Jan 16 2016 CRYPTO_PKI: the last CRL update time: 17:42:47 UTC Jan 16 2016 CRYPTO_PKI: the next CRL update time: 23:42:47 UTC Jan 16 2016 CRYPTO_PKI: CRL cache delay being set to: 20250000 CRYPTO_PKI: Storage context released by thread Crypto CA Server CRYPTO_CS: Inserted Local CA CRL into cache! CRYPTO_CS: shadow not configured; look for shadow cert CRYPTO_CS: failed to find shadow cert in the db CRYPTO_CS: set shadow generation timer CRYPTO_CS: shadow generation timer has been set CRYPTO_CS: Enabled CS. CRYPTO_CS: exit FSM: new state enabled CRYPTO_CS: cs config has been locked. Crypto CS thread sleeps!
Este resultado de depuración muestra la inscripción del cliente
ASA# debug crypto ca 255 ASA# debug crypto ca server 255 ASA# debug crypto ca message 255 ASA# debug crypto ca transaction 255 CRYPTO_CS: writing serial number 0x2. CRYPTO_CS: file opened: flash:/LOCAL-CA-SERVER/LOCAL-CA-SERVER.ser CRYPTO_CS: Writing 32 bytes to ser file CRYPTO_CS: Generated and saving a PKCS12 file for user user1 at flash:/LOCAL-CA-SERVER/user1.p12
La Inscripción del Cliente puede fallar bajo estas condiciones:
Escenario 1.
CLI equivalente:
ASA(config)# show crypto ca server user-db username: user1 email: user1@cisco.com dn: CN=user1,OU=TAC allowed: <not allowed> notified: 0 times enrollment status: Not Allowed to Enroll
Situación hipotética 2.
Es posible que el cliente no pueda acceder al portal de inscripción de ASA en estos casos:
ASA(config)# show run webvpn webvpn port 4433 enable Internet no anyconnect-essentials anyconnect image disk0:/anyconnect-win-4.2.00096-k9.pkg 1
anyconnect enable
tunnel-group-list enable
Situación hipotética 3.
ASA(config)# debug crypto ca 255 ASA(config)# debug crypto ca server 255 ASA(config)# debug crypto ca message 255 ASA(config)# debug crypto ca transaction 255 ASA(config)# debug crypto ca trustpool 255 CRYPTO_CS: writing serial number 0x2. CRYPTO_CS: file opened: flash:/LOCAL-CA-SERVER/LOCAL-CA-SERVER.ser CRYPTO_CS: Writing 32 bytes to ser file CRYPTO_CS: Generated and saving a PKCS12 file for user user1 at flash:/LOCAL-CA-SERVER/user1.p12 CRYPTO_CS: Failed to write to opened PKCS12 file for user user1, fd: 0, status: -1. CRYPTO_CS: Failed to generate pkcs12 file for user user1 status: -1. CRYPTO_CS: Failed to process enrollment in-line for user user1. status: -1
Revisión | Fecha de publicación | Comentarios |
---|---|---|
1.0 |
03-Aug-2016 |
Versión inicial |