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 los pasos de configuración para configurar FlexVPN con un cliente integrado en Windows 10/11.
Cisco recomienda que conozca estos temas:
La guía de configuración se basa en las siguientes versiones de hardware y software:
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). Si tiene una red en vivo, asegúrese de entender el posible impacto de cualquier comando.
La CA debe permitirle incrustar el uso extendido de claves (EKU) requerido en el certificado. Por ejemplo, en el servidor IKEv2, Server Auth EKU
es obligatorio, mientras que el certificado del cliente necesita Client Auth EKU
. Las implementaciones locales pueden hacer uso de:
openssl.cnf
debe tener extendedKeyUsage = serverAuth, clientAuth, este archivo normalmente se encuentra en la ruta /etc/ssl/
.Laboratorio de topología
Si utiliza un servidor de CA de Cisco IOS, asegúrese de utilizar la versión más reciente del software de Cisco IOS, que asigna la EKU.
IOS-CA# show run | section crypto pki
crypto pki server IOS-CA
issuer-name cn=IOS-CA.cisco.com,ou=TAC,o=cisco
grant auto
eku server-auth client-auth
OpenSSL CA se basa en el archivo openssl.cnf. El archivo 'config' para el servidor OpenSSL debe tener:
keyUsage = nonRepudiation, digitalSignature, keyEncipherment, dataEncipherment
extendedKeyUsage = serverAuth, clientAuth
El certificado debe tener los campos EKU establecidos en 'Autenticación de servidor' para Cisco IOS y 'Autenticación de cliente' para el cliente. Normalmente, se utiliza la misma CA para firmar los certificados de cliente y de servidor. En este caso, tanto 'Autenticación del servidor' como 'Autenticación del cliente' se ven en el certificado del servidor y el certificado del cliente respectivamente, lo cual es aceptable.
Si la CA emite los certificados en formato PKCS (Public-Key Cryptography Standards, estándares de criptografía de clave pública) #12 en el servidor IKEv2 para los clientes y el servidor, y si la lista de revocación de certificados (CRL) no es accesible o no está disponible, se debe configurar:
crypto pki trustpoint FlexRootCA
revocation-check none
Ingrese este comando para importar el certificado PKCS#12:
copy ftp://user:***@OpenSSLServer/p12/FlexRootCA.p12* flash:/
crypto pki import FlexRootCA pkcs12 flash:/FlexRootCA.p12 password
!! Note: FlexRootCA.p12 is a pkcs12 format certificate that has CA Certificate bundled in it.
También puede convertir el pkcs12 a base64 en OpenSSL e importar el certificado en el terminal:
openssl base64 -in ikev2.p12 -out ikev2.pem
cat ikev2.pem —> copy the base64 output
crypto pki trustpoint FlexRootCA
enrollment terminal
revocation-check none
crypto pki import FlexRootCA pkcs12 terminal password
***paste the base64 output from the cat ikev2.pem here***
quit --> when the paste ends you need to type quit to finish
Si un servidor de CA de Cisco IOS otorga certificados automáticamente, el servidor IKEv2 debe configurarse con la URL del servidor de CA para recibir un certificado como se muestra en este ejemplo:
crypto pki trustpoint FlexRootCA
enrollment url http://:80
subject-name cn=ikev2.cisco.com,ou=TAC,o=cisco
revocation-check none
eku server-auth client-auth
Cuando se configura el punto de confianza, debe:
crypto pki authenticate FlexRootCA
crypto pki enroll FlexRootCA
Este es un ejemplo de una configuración IKEv2:
aaa authorization network winclient local
ip local pool mypool 172.16.0.101 172.16.0.250
!! Certificate MAP to match Remote Certificates, in our case the Windows Clients
crypto pki certificate map winclient_map 10
subject-name co ou = tac
!! One of the proposals that Windows 10/11 Built-In Client Likes
crypto ikev2 proposal winclient
encryption aes-cbc-256
integrity sha1
group 2
crypto ikev2 policy winclient
proposal winclient
!! IKEv2 Local Authorization Policy. Split-Tunneling does not work, as was
!! the case in good old l2tp over IPSec.
crypto ikev2 authorization policy winclient_author
pool mypool
crypto ikev2 profile winclient-rsa
match certificate winclient_map
identity local fqdn ikev2.cisco.com
authentication local rsa-sig
authentication remote rsa-sig
pki trustpoint FlexRootCA
aaa authorization group cert list winclient winclient_author
virtual-template 1
crypto ipsec transform-set aes256-sha1 esp-aes 256 esp-sha-hmac
crypto ipsec profile winclient_ikev2
set transform-set aes256-sha1
set ikev2-profile winclient-rsa
interface Virtual-Template1 type tunnel
ip unnumbered Loopback0
tunnel mode ipsec ipv4
tunnel protection ipsec profile winclient_ikev2
La dirección IP sin numerar de la plantilla virtual debe ser cualquier cosa excepto la dirección local utilizada para la conexión IPsec. (Si utiliza un cliente de hardware, intercambiaría información de ruteo a través del nodo de configuración IKEv2 y crearía un problema de ruteo recursivo en el cliente de hardware).
Nota: IOS XE versión 17.06.01a Id. de error de Cisco CSCwa76260 y el Id. de error de Cisco CSCwa80474 interfieren con la funcionalidad adecuada del cliente integrado de Windows, ya que utilizan group2 como grupo dh predeterminado. Con una actualización a una versión fija, se le notifica sobre la futura eliminación de los cifrados obsoletos, pero aún pueden funcionar. Información adicional:
1. Acceda a Settings > Network & Internet > VPN
y haga clic en o seleccione Add a VPN Connection
como se muestra en la imagen:
Configuración de VPN de Windows
2. Configure el proveedor de VPN como Windows (integrado), el nombre de la conexión, el nombre o la dirección del servidor, el tipo de VPN y el tipo de información de inicio de sesión (autenticación) y, a continuación, haga clic en Save
como se muestra en la imagen.
Windows agrega la configuración VPN
3. Haga clic en cambiar opciones de adaptador y haga clic con el botón derecho o seleccione el adaptador llamado FlexVPN-IOS
. Desplácese hasta Properties > Security
y seleccione Use machine certificates
como se muestra en la imagen:
Opciones de adaptador de Windows
El perfil FlexVPN-IOS está listo para conectarse después de importar un certificado al almacén de certificados del equipo.
1. Acceda a Settings > Network & internet > VPN
y haga clic en Agregar VPN o seleccione dicha opción:
Configuración de VPN de Windows 11
2. Configure el proveedor de VPN como Windows (integrado), el nombre de la conexión, el nombre o la dirección del servidor, el tipo de VPN y el tipo de información de inicio de sesión (autenticación) y, a continuación, guarde:
Configuración de la conexión VPN de Windows 11
3. Haga clic Network & Internet
de nuevo, seleccione Configuración de red avanzada y haga clic en o seleccione More network adapter options
como se muestra en la imagen:
Opciones de ruta del adaptador para Windows 11
Haga clic con el botón derecho del ratón o seleccione el adaptador llamado FlexVPN-IOS y desplácese hasta Propiedades, vaya a Security
y seleccione Usar certificados de equipo:
Opciones de adaptador de Windows 11
El perfil FlexVPN-IOS está listo para conectarse después de importar un certificado al almacén de certificados del equipo.
El certificado de cliente requiere estos factores:
1. Abra el certificado pfx o p12:
Haga clic en o seleccione la ubicación de la tienda Máquina local:
Paso 1 del Asistente para importación de certificados
2. Especifique la trayectoria del p12 o pfx como se muestra en la imagen.
Paso 2 del Asistente para importación de certificados
3. Escriba la contraseña para la clave privada como se muestra en la imagen:
Paso 3 del Asistente para importación de certificados
Nota: marcar la clave como exportable es opcional.
4. Haga clic o seleccione Place all certificates in
la tienda Personal:
Paso 4 del Asistente para importación de certificados
El pkcs12 generalmente incluye la cadena completa, CA y certificados intermedios. Si ese es el caso, debe asegurarse de que la CA esté instalada en el almacén de autoridades de certificados raíz de confianza.
En caso de que la CA no esté en el almacén de autoridades de certificados raíz de confianza, siga estos pasos para instalarla:
1. Abra el archivo CA pem o crt y haga clic o seleccione Install Certificate (Instalar certificado) como se muestra en la imagen.
certificado de CA
Si la CA no está en el almacén de autoridades de certificados raíz de confianza, verá este mensaje: "This CA Root certificate is not trusted...."
2. Haga clic en o seleccione la ubicación de almacén Máquina local:
Paso 1 del asistente de importación de certificados de CA
3. Haga clic o seleccione Place all certificates in the following store
y Trusted Root Certification Authorities
tienda:
Paso 2 del asistente de importación de certificados de CA
4. Finalice el Asistente de Importación de Certificados:
Paso 3 del asistente de importación de certificados de CA
La instalación del certificado siempre se puede confirmar con Windows Key+R
y abierto mmc.exe
or certlm.msc
.
Utilize esta sección para confirmar que su configuración funcione correctamente.
CSR1Kv# show crypto ikev2 session detail
IPv4 Crypto IKEv2 Session
Session-id:6, Status:UP-ACTIVE, IKE count:1, CHILD count:1
Tunnel-id Local Remote fvrf/ivrf Status
1 10.0.3.1/4500 192.168.56.1/4500 none/none READY
Encr: AES-CBC, keysize: 256, Hash: SHA96, DH Grp:2, Auth sign: RSA, Auth verify: RSA
Life/Active Time: 86400/5s 7 sec
CE id: 1007, Session-id: 6
Status Description: Negotiation done
Local spi: 3A330D1951062E50 Remote spi: 222ED6C38002E26D
Local id: ikev2.cisco.com
Remote id: ou=TAC,o=Cisco,c=BE,cn=Winclient
Local req msg id: 0 Remote req msg id: 2
Local next msg id: 0 Remote next msg id: 2
Local req queued: 0 Remote req queued: 2
Local window: 5 Remote window: 1 DPD configured for 0 seconds, retry 0
NAT-T is not detected
Cisco Trust Security SGT is disabled
Assigned host addr: 172.16.0.105
Initiator of SA : No
Child sa: local selector 0.0.0.0/0 - 255.255.255.255/65535
remote selector 172.16.0.105/0 - 172.16.0.105/65535
ESP spi in/out: 0xB01348F5/0x142CEC36
AH spi in/out: 0x0/0x0
CPI in/out: 0x0/0x0
Encr: AES-CBC, keysize: 128, esp_hmac: SHA96
ah_hmac: None, comp: IPCOMP_NONE, mode tunnel
CSR1Kv#show crypto ipsec sa peer 192.168.56.1
interface: Virtual-Access1
Crypto map tag: Virtual-Access1-head-0, local addr 10.0.3.1
protected vrf: (none)
local ident (addr/mask/prot/port): (0.0.0.0/0.0.0.0/0/0)
remote ident (addr/mask/prot/port): (172.16.0.105/255.255.255.255/0/0)
current_peer 192.168.56.1 port 4500
PERMIT, flags={origin_is_acl,}
#pkts encaps: 223, #pkts encrypt: 223, #pkts digest: 223
#pkts decaps: 315, #pkts decrypt: 315, #pkts verify: 315
#pkts compressed: 0, #pkts decompressed: 0
#pkts not compressed: 0, #pkts compr. failed: 0
#pkts not decompressed: 0, #pkts decompress failed: 0
#send errors 0, #recv errors 0
local crypto endpt.: 10.0.3.1, remote crypto endpt.: 192.168.56.1
plaintext mtu 1438, path mtu 1500, ip mtu 1500, ip mtu idb GigabitEthernet1
current outbound spi: 0x142CEC36(338488374)
PFS (Y/N): N, DH group: none
inbound esp sas:
spi: 0xB01348F5(2954053877)
transform: esp-aes esp-sha-hmac ,
in use settings ={Tunnel, }
conn id: 2017, flow_id: CSR:17, sibling_flags FFFFFFFF80000048, crypto map: Virtual-Access1-head-0
sa timing: remaining key lifetime (k/sec): (4607961/2461)
IV size: 16 bytes
replay detection support: Y
Status: ACTIVE(ACTIVE)
inbound ah sas:
inbound pcp sas:
outbound esp sas:
spi: 0x142CEC36(338488374)
transform: esp-aes esp-sha-hmac ,
in use settings ={Tunnel, }
conn id: 2018, flow_id: CSR:18, sibling_flags FFFFFFFF80000048, crypto map: Virtual-Access1-head-0
sa timing: remaining key lifetime (k/sec): (4607987/2461)
IV size: 16 bytes
replay detection support: Y
Status: ACTIVE(ACTIVE)
outbound ah sas:
outbound pcp sas:
Puede resolver problemas de la conexión FlexVPN y la negociación de certificados con estos debugs:
debug crypto condition peer <remove client public ip>
debug crypto ikev2
debug cry pki messages
debug cry pki transactions
En el cliente de Windows, puede verificar el Visor de eventos en los Registros de Windows y verificar la Aplicación, los eventos de conexión VPN utilizan el origen RasClient. Por ejemplo;
Registros del visor de eventos de Windows para RasClient
Revisión | Fecha de publicación | Comentarios |
---|---|---|
2.0 |
27-Jul-2023 |
Volver a publicar para HackaTZon |
1.0 |
19-May-2023 |
Versión inicial |