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 generar e importar certificados en WLCs de AireOS.
Cisco recomienda que tenga conocimiento sobre estos temas:
La información que contiene este documento se basa en las siguientes versiones de software y hardware.
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.
Una cadena de certificados es una secuencia de certificados en la que cada certificado de la cadena está firmado por el certificado subsiguiente.
El propósito de una cadena de certificados es establecer una cadena de confianza desde un certificado de peer a un certificado de CA de confianza. La CA comprueba la identidad en el certificado de peer cuando se firma.
Si la CA es de confianza (lo que se indica mediante la presencia de una copia del certificado de CA en el directorio de certificados raíz), esto implica que también puede confiar en el certificado del mismo nivel firmado.
A menudo, los clientes no aceptan los certificados porque no fueron creados por una CA conocida. El cliente normalmente afirma que la validez del certificado no se puede verificar.
Este es el caso cuando el certificado está firmado por una CA intermedia, que el explorador del cliente no conoce. En tales casos, es necesario utilizar un certificado SSL encadenado o un grupo de certificados.
El controlador permite que el certificado del dispositivo se descargue como un certificado encadenado para la autenticación web.
El WLC no soporta los certificados encadenados más de 10KB en tamaño en el WLC. Sin embargo, esta restricción ha sido eliminada en la versión 7.0.230.0 y posterior del WLC.
Nota: los certificados en cadena son compatibles y, en realidad, son necesarios para la autenticación web y la administración web.
Nota: los certificados comodín son totalmente compatibles con EAP local, administración o autenticación web.
Los certificados de autenticación Web pueden ser cualquiera de los siguientes:
Nota: En la versión 7.6 y posterior del WLC, solamente los certificados encadenados son soportados (y por lo tanto requeridos).
Para generar un certificado no encadenado con fines de administración, utilice este documento y haga caso omiso de las partes en las que el certificado se combina con el certificado de CA.
Este documento explica cómo instalar correctamente un certificado de Secure Socket Layer (SSL) encadenado en un WLC.
Hay dos formas de generar una CSR. Ya sea manualmente con OpenSSL (la única manera posible en el software WLC anterior a 8.3) o vaya en el WLC mismo para generar el CSR (disponible después de 8.3.102).
Nota: Chrome versión 58 y posterior no confía en el nombre común del certificado solo y requiere que el nombre alternativo del sujeto también esté presente. En la siguiente sección se explica cómo agregar campos SAN al CSR de OpenSSL, que es un nuevo requisito para este navegador.
Complete estos pasos para generar un CSR con OpenSSL:
Nota: OpenSSL versión 0.9.8 es la versión recomendada para las versiones antiguas de WLC; sin embargo, a partir de la versión 7.5, también se agregó soporte para OpenSSL versión 1.0 (consulte Cisco bug ID CSCti65315 - Need Support for certificates generados con OpenSSL v1.0) y es la versión recomendada para usar. OpenSSL 1.1 funciona también fue probado y funciona en 8.x y versiones posteriores del WLC.
[req] req_extensions = v3_req [ v3_req ] # Extensions to add to a certificate request basicConstraints = CA:FALSE keyUsage = nonRepudiation, digitalSignature, keyEncipherment subjectAltName = @alt_names [alt_names] DNS.1 = server1.example.com DNS.2 = mail.example.com DNS.3 = www.example.com DNS.4 = www.sub.example.com DNS.5 = mx.example.com DNS.6 = support.example.comLas líneas que comienzan por "DNS.1", "DNS.2" (y así sucesivamente) deben contener todos los nombres alternativos de sus certificados. Luego escriba cualquier URL posible utilizado para el WLC. Las líneas en negrita en el ejemplo anterior no estaban presentes o se comentaron en nuestra versión de laboratorio de openSSL. Puede variar mucho con el sistema operativo y la versión openssl. Guardamos esta versión modificada de la configuración como openssl-san.cnf para este ejemplo.
OpenSSL>req -new -newkey rsa:3072 -nodes -keyout mykey.pem -out myreq.pem -config openssl-san.cnf
Nota: Los WLC soportan un tamaño de clave máximo de 4096 bits a partir de la versión de software 8.5.
Nota: Es importante proporcionar el nombre común correcto. Asegúrese de que el nombre de host que se utiliza para crear el certificado (Nombre común) coincida con la entrada del nombre de host del Sistema de nombres de dominio (DNS) para la dirección IP de la interfaz virtual en el WLC y que el nombre exista también en el DNS. Además, después de realizar el cambio en la interfaz de IP virtual (VIP), debe reiniciar el sistema para que este cambio surta efecto.
OpenSSL>req -new -newkey rsa:3072 -nodes -keyout mykey.pem -out myreq.pem -config openssl-san.cnf
Loading 'screen' into random state - done
Generate a 1024 bit RSA private key
................................................................++++++
...................................................++++++
writing new private key to 'mykey.pem'
-----
You are about to be asked to enter information that is incorporated
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there is a default value,
If you enter '.', the field is left blank.
-----
Country Name (2 letter code) [AU]:US
State or Province Name (full name) [Some-State]:CA
Locality Name (eg, city) []:San Jose
Organization Name (eg, company) [Internet Widgits Pty Ltd]:ABC
Organizational Unit Name (eg, section) []:CDE
Common Name (eg, YOUR name) []:XYZ.ABC
Email Address []:(email address)
Please enter the following 'extra' attributes
to be sent with your certificate request
A challenge password []:Test123
An optional company name []:OpenSSL>
Si su WLC ejecuta la versión de software 8.3.102 o posterior, la opción más segura es utilizar el WLC para generar el CSR. La ventaja es que la clave se genera en el WLC y nunca sale del WLC; por lo tanto, nunca se expone en el mundo exterior.
A partir de ahora, este método no permite configurar SAN en el CSR, lo que se sabe que provoca problemas con determinados navegadores, que requieren la presencia de un atributo SAN. Algunas CA permiten insertar campos SAN a la hora de la firma, por lo que es una buena idea consultar con su CA.
La generación de CSR por el WLC mismo utiliza un tamaño de clave de 2048 bits y el tamaño de clave de ECDSA es de 256 bits.
Nota: Si ejecuta el comando csr generation y no instala el certificado subsiguiente todavía, su WLC se hace completamente inalcanzable en HTTPS en el reinicio siguiente, pues el WLC utiliza la llave CSR recién generada después del reinicio pero no tiene el certificado que va con él.
Para generar un CSR para la autenticación web, ingrese este comando:
(WLC) >config certificate generate csr-webauth BE BR Brussels Cisco TAC mywebauthportal.wireless.com tac@cisco.com
-----INICIAR SOLICITUD DE CERTIFICADO-----
MIICqjCCAZICAQAwZTELMAkGA1UECAwCQlIxETAPBgNVBAcMCEJydXNzZWxzMQ4w
DAYDVQKDAVDaXNjbzEMMAoGA1UECwwDVEFDMSUwYDVQDDBxteXdlYmF1dGhw
b3J0YWwud2lyZWxlc3MuY29tMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKC
AQEAnssc0BxlJ2ULa3xgJH5lAUtbd9CuQVqqf2nflh+V1tu82rzTvz38bjF3g+MX
JiaBbKMA27VJH1J2K2ycDMlhjyYpH9N59T4fXvZr3JNGVfmHIRuYDnCSdil0ookK
FU4sDwXyOxR6gfB6m+Uv5SCOuzfBsTz5bfQ1NlZqg1hNemnhqVgbXEd90sgJmaF2
0tsL0jUhbLosdwMLUbZ5LUa34mvufoI3VAKA0cmWZh2WzMJiaI2JpbO0afRO3kSg
x3XDkZiR7Z9a8rK6Xd8rwDlx0TcMFWdWVcKMDgh7Tw+Ba1cUjjIMzKT6OjFGOGu
yNkgYefrrBN+WkDdc6c55bxErwIDAQABoAAwDQYJKoZIhvcNAQELBQADggEBAB0K
ZvEpAafoovphlcXIElL2DSwVzjlbd9u7T5JRGgqri1l9/0wzxFjTymQofga427mj
5dNqlCWxRFmKhAmO0fGQkUoP1YhJRxidu+0T8O46s/stbhj9nuInmoTgPaA0s3YH
tDdWgjmV2ASnroUV9oBNu3wR6RQtKDX/CnTSRG5YufTWOVf9IRnL9LkU6pzA69Xd
YHPLnD2ygR1Q+3Is4+5Jw6ZQAaqlPWyVQccvGyFacscA7L+nZK3SSITzGt9B2HAa
PQ8DQOaCwnqt2efYmaezGiHOR8XHOaWcNoJQCFOnb4KK6/1aF/7eOS4LMA+jSzt4
Wkc/wH4DyYdH7x5jzHc=
-----END CERTIFICATE REQUEST-----
Para generar un CSR para webadmin, el comando cambia a:
(WLC) >config certificate generate csr-webadmin BE BR Brussels Cisco TAC mywebauthportal.wireless.com tac@cisco.com
Nota: El CSR se imprime en el terminal después de ingresar el comando. No hay otras maneras de recuperarlo; no es posible cargarlo desde el WLC ni es posible guardarlo. Debe copiarlo/pegarlo en un archivo del equipo después de escribir el comando. La clave generada permanece en el WLC hasta que se genera el siguiente CSR (la clave se sobrescribe). Si usted tiene que cambiar el hardware del WLC más adelante (RMA), usted no puede reinstalar el mismo certificado como una nueva clave y CSR se genera en el nuevo WLC.
A continuación, debe entregar esta CSR a la autoridad de firma externa o a la infraestructura de clave pública (PKI) de la empresa.
En este ejemplo solo se muestra una CA empresarial actual (Windows Server 2012 en este ejemplo) y no se tratan los pasos para configurar una CA de Windows Server desde el principio.
openssl pkcs7 -print_certs -in All-certs.p7b -out All-certs.pem
6. Combine los certificados de cadena de certificados (en este ejemplo, se denomina "All-certs.pem") con la clave privada generada junto con la CSR (la clave privada del certificado del dispositivo, que es mykey.pem en este ejemplo) si utilizó la opción A (OpenSSL para generar la CSR) y guarde el archivo como final.pem. Si generó el CSR directamente desde el WLC (opción B), omita este paso.
Ingrese estos comandos en la aplicación OpenSSL para crear los archivos All-certs.pem y final.pem:
openssl>pkcs12 -export -in All-certs.pem -inkey mykey.pem
-out All-certs.p12 -clcerts -passin pass:check123
-passout pass:check123
openssl>pkcs12 -in All-certs.p12 -out final.pem
-passin pass:check123 -passout pass:check123
Nota: En este comando, debe ingresar una contraseña para los parámetros -passout y -passout. La contraseña configurada para el parámetro -passout debe coincidir con el parámetro certpassword configurado en el WLC. En este ejemplo, la contraseña que se configura para los parámetros -passout y -passout es check123.
Final.pem es el archivo para descargar al WLC si siguió "Option A. CSR with OpenSSL".
Si usted siguió "Opción B. CSR generado por el WLC sí mismo", entonces All-certs.pem es el archivo para descargar al WLC. El siguiente paso es descargar este archivo al WLC.
Nota: Si la carga del certificado al WLC falla, verifique que haya toda la cadena en el archivo pem. Consulte el paso 2 de la opción B (obtener el archivo final.pem de una CA de terceros) para ver cómo debe verse. Si sólo ve un certificado en el archivo, debe descargar manualmente todos los archivos de certificados de CA intermedia y raíz y anexarlos (mediante una simple copia y pegado) al archivo para crear la cadena.
Nota: Asegúrese de que el certificado es compatible con Apache con el cifrado de algoritmo hash seguro 1 (SHA1).
------BEGIN CERTIFICATE------
*Device cert*
------END CERTIFICATE------
------BEGIN CERTIFICATE------
*Intermediate CA cert *
------END CERTIFICATE--------
------BEGIN CERTIFICATE------
*Root CA cert *
------END CERTIFICATE------
openssl>pkcs12 -export -in All-certs.pem -inkey mykey.pem
-out All-certs.p12 -clcerts -passin pass:check123
-passout pass:check123
openssl>pkcs12 -in All-certs.p12 -out final.pem
-passin pass:check123 -passout pass:check123
Nota: En este comando, debe ingresar una contraseña para los parámetros -passout y -passout. La contraseña que se configura para el parámetro -passout debe coincidir con el parámetro certpassword que se configura en el WLC. En este ejemplo, la contraseña que se configura para los parámetros -passout y -passout es check123.
Final.pem es el archivo para descargar al WLC si siguió "Option A. CSR with OpenSSL". Si siguió "Opción B. CSR generado por el propio WLC", entonces All-certs.pem es el archivo que debe descargar al WLC. El siguiente paso es descargar este archivo al WLC.
Nota: SHA2 también es compatible. El ID de bug de Cisco CSCuf20725 es una solicitud de soporte para SHA512.
Complete estos pasos para descargar el certificado encadenado al WLC con la CLI:
>transfer download mode tftp
>transfer download datatype webauthcert
>transfer download serverip <TFTP server IP address>
>transfer download path <absolute TFTP server path to the update file>
>transfer download filename final.pem
>transfer download certpassword password
Nota: asegúrese de que el valor de certpassword sea el mismo que el de la contraseña del parámetro -passout que se estableció en el paso 4 (o 5) de la sección Generar una CSR. En este ejemplo, la certpassword debe ser check123. Si usted ha elegido la opción B (es decir, utiliza el WLC sí mismo para generar el CSR), deje el campo certpassword en blanco.
transfer download start
comando para ver la configuración actualizada. Luego ingrese y en el prompt para confirmar la configuración de descarga actual e iniciar la descarga del certificado y la clave. Aquí tiene un ejemplo:(Cisco Controller) >transfer download start
Mode............................................. TFTP
Data Type........................................ Site Cert
TFTP Server IP................................... 10.77.244.196
TFTP Packet Timeout.............................. 6
TFTP Max Retries................................. 10
TFTP Path........................................./
TFTP Filename.................................... final.pem
This might take some time.
Are you sure you want to start? (y/N) y
TFTP EAP Dev cert transfer start.
Certificate installed.
Reboot the switch to use new certificate.
Complete estos pasos para descargar el certificado encadenado al WLC con la GUI:
Para resolver problemas de la instalación del certificado en el WLC, abra una línea de comando en el WLC e ingrese debug transfer all enable
debug pm pki enable
y luego complete el procedimiento del certificado de descarga.
In some cases, the logs only say that the certificate installation failed:
*TransferTask: Sep 09 08:37:17.415: RESULT_STRING: TFTP receive complete... Installing
Certificate.
*TransferTask: Sep 09 08:37:17.415: RESULT_CODE:13
TFTP receive complete... Installing Certificate.
*TransferTask: Sep 09 08:37:21.418: Adding cert (1935 bytes) with certificate key password.
*TransferTask: Sep 09 08:37:21.421: RESULT_STRING: Error installing certificate.
Verifique el formato y la cadena del certificado. Recuerde que los WLCs posteriores a la versión 7.6 requieren que la cadena entera esté presente, así que usted no puede cargar su certificado del WLC solamente. La cadena hasta la CA raíz debe estar presente en el archivo.
Aquí hay un ejemplo de depuraciones cuando la CA intermedia es incorrecta :
*TransferTask: Jan 04 19:08:13.338: Add WebAuth Cert: Adding certificate & private key using password check123 *TransferTask: Jan 04 19:08:13.338: Add ID Cert: Adding certificate & private key using password check123 *TransferTask: Jan 04 19:08:13.338: Add Cert to ID Table: Adding certificate (name: bsnSslWebauthCert) to ID table using password check123 *TransferTask: Jan 04 19:08:13.338: Add Cert to ID Table: Decoding PEM-encoded Certificate (verify: YES) *TransferTask: Jan 04 19:08:13.338: Decode & Verify PEM Cert: Cert/Key Length was 0, so taking string length instead *TransferTask: Jan 04 19:08:13.338: Decode & Verify PEM Cert: Cert/Key Length 7148 & VERIFY *TransferTask: Jan 04 19:08:13.342: Decode & Verify PEM Cert: X509 Cert Verification return code: 0 *TransferTask: Jan 04 19:08:13.342: Decode & Verify PEM Cert: X509 Cert Verification result text: unable to get local issuer certificate *TransferTask: Jan 04 19:08:13.342: Decode & Verify PEM Cert: Error in X509 Cert Verification at 0 depth: unable to get local issuer certificate *TransferTask: Jan 04 19:08:13.343: Add Cert to ID Table: Error decoding (verify: YES) PEM certificate *TransferTask: Jan 04 19:08:13.343: Add ID Cert: Error decoding / adding cert to ID cert table (verifyChain: TRUE) *TransferTask: Jan 04 19:08:13.343: Add WebAuth Cert: Error adding ID cert
Como se explica en la guía de implementación de WLC HA SSO, los certificados no se replican del controlador primario al secundario en un escenario de HA SSO.
Esto significa que debe importar todos los certificados a la secundaria antes de formar el par HA.
Otra advertencia es que esto no funciona si usted generó el CSR (y por lo tanto creó la clave localmente) en el WLC primario porque esa clave no se puede exportar.
La única manera es generar el CSR para el WLC primario con OpenSSL (y por lo tanto tener la llave adjunta al certificado) e importar ese certificado/combinación de la llave en ambos WLC.
Revisión | Fecha de publicación | Comentarios |
---|---|---|
4.0 |
05-Sep-2024 |
Título abreviado que, por alguna razón, CCW no estaba marcando.
Se corrigieron las URL rotas y se aseguró de que se abrieran en una nueva página.
Se eliminó el contenedor de notas vacío. |
3.0 |
01-Aug-2023 |
Recertificación |
1.0 |
07-Feb-2014 |
Versión inicial |