Configuración de la autenticación de cliente a sitio
Configure los valores de autenticación para el servidor VPN y los clientes de VPN. Los certificados se gestionan a través de IBM Cloud® Secrets Manager.
Creación de una autorización de servicio a servicio de IAM
Para crear una autorización de servicio a servicio de IAM para su servidor VPN y IBM Cloud Secrets Manager, siga estos pasos:
También puede configurar la autorización de servicio a servicio de IAM en la página de aprovisionamiento del servidor VPN, o utilizar el panel lateral Editar autorización.
- En la consola IBM Cloud, vaya a la página Gestionar autorizaciones y haga clic en Crear.
- Seleccione Servicios de infraestructura VPC en el menú. A continuación, seleccione Recurso basado en atributos seleccionados.
- Seleccione Tipo de recurso > Client VPN for VPC.
- Para el servicio de destino, seleccione Secrets Manager.
- Mantenga seleccionado Todos los recursos. A continuación, seleccione el recuadro de selección SecretsReader.
- Pulse Autorizar.
Gestión de certificados de cliente y servidor VPN
Importación de un certificado en Secrets Manager
El siguiente procedimiento utiliza OpenVPN easy-rsa para generar los certificados de servidor y cliente VPN y, a continuación, importa estos certificados a Secrets Manager. Para obtener más información, consulte el README de Easy-RSA 3 Quickstart.
-
Clone el repositorio de Easy-RSA 3 en la carpeta local:
git clone https://github.com/OpenVPN/easy-rsa.git cd easy-rsa/easyrsa3
-
Cree una infraestructura de claves públicas (PKI) y una entidad emisora de certificados (CA):
./easyrsa init-pki ./easyrsa build-ca nopass
Compruebe que el certificado de autoridad emisora de certificados se genere en la vía de acceso
./pki/ca.crt
. Como se describe en la siguiente sección, al importar los certificados de servidor o cliente en Secrets Manager, el certificado utilizado para firmar otros certificados será necesario como certificado intermedio. -
Generar un certificado de servidor VPN:
./easyrsa build-server-full vpn-server.vpn.ibm.com nopass
Compruebe que la clave pública del servidor VPN se genere en la vía de acceso
./pki/issued/vpn-server.vpn.ibm.com.crt
y que la clave privada esté en la vía de acceso./pki/private/vpn-server.vpn.ibm.com.key
. -
Generar un certificado de cliente VPN:
./easyrsa build-client-full client1.vpn.ibm.com nopass
Compruebe que la clave pública del cliente de VPN se genere en la vía de acceso
./pki/issued/client1.vpn.ibm.com.crt
y que la clave privada esté en la vía de acceso./pki/private/client1.vpn.ibm.com.key
. -
Si necesita crear más certificados de cliente VPN, repita el paso 4.
Consideraciones importantes:
-
En el ejemplo anterior, los certificados de cliente y servidor VPN están firmados por la misma CA. Para utilizar CA distintas para firmar el certificado de cliente, copie la carpeta
easyrsa3
en una nueva vía de acceso y siga los pasos 2 y 4. -
Si ya tiene el certificado de servidor VPN de otras CA, asegúrese de que el certificado tenga el uso de clave ampliado:
TLS Web Client Authentication
. Puede utilizar el mandato siguiente para comprobar la información de certificado basada en el contenido del archivo de certificado codificado:cat YOUR-CERTIFICATE-FILE | openssl x509 -noout -text
. -
Si el certificado se utiliza como certificado de cliente VPN para autenticar al cliente, debe cargar el archivo de certificado y el archivo de certificado intermedio. Por ejemplo, si utiliza distintos certificados de cliente para autenticar distintos usuarios, asegúrese de que estos certificados están firmados por la misma CA y que ha cargado uno de los certificados de cliente (Archivo de certificados y Archivo de certificados intermedios únicamente) en Secrets Manager.
Puede utilizar una cadena de CA para empaquetar los certificados (CA intermedia 1, CA intermedia 2 y CA raíz) en un único archivo y cargarlos en el archivo de certificado intermedio. Además, tenga en cuenta que puede crear varios certificados de cliente fuera de línea utilizando la misma CA sin tener que cargar los certificados en Secrets Manager.
Importación de certificados de servidor VPN en Secrets Manager
Para importar certificados de servidor VPN en Secrets Manager, siga estos pasos:
-
Si todavía no tiene una instancia de Secrets Manager, vaya a la página Secrets Manager. A continuación, complete la información y haga clic en Crear para crear una instancia de Secrets Manager.
Para obtener más información, consulte la solicitud de certificados para Secrets Manager.
-
En la consola, haga clic en el
del menú Navegación > Lista de recursos > Seguridad
-
En la lista de servicios, seleccione su instancia de Secrets Manager.
-
En la tabla Secretos, pulse Añadir.
-
Haga clic en Certificado importado y, a continuación, en Siguiente.
-
Siga estos pasos para importar el certificado:
- Añada un nombre y una descripción para identificar fácilmente su secreto.
- Seleccione el grupo de secretos que desea asignar al secreto.
- Opcional: añada etiquetas para ayudarle a buscar secretos similares en la instancia.
- Opcional: Añade metadatos a tu secreto o a una versión específica de tu secreto.
- Haga clic en Siguiente y seleccione el mosaico Importar un certificado.
- Pulse Examinar y seleccione
./pki/issued/vpn-server.vpn.ibm.com.crt
como archivo de certificado. - Pulse Examinar y seleccione
./pki/private/vpn-server.vpn.ibm.com.key
como clave privada del certificado. - Pulse Examinar y seleccione
./pki/ca.crt
como certificado intermedio. - Pulse Siguiente.
- Revise los detalles de su certificado y haga clic en Añadir.
Para obtener más información, consulte Importación de certificados existentes.
Consideraciones importantes:
-
En este ejemplo, los certificados del servidor VPN y del cliente están firmados por la misma CA, por lo que sólo debe cargar el certificado del servidor VPN. También debe utilizar el certificado como certificado de servidor VPN y autenticar el cliente de VPN. Si el certificado del servidor VPN y el del cliente están firmados por distintas CA, deberá cargarlos por separado.
-
Si ha actualizado el certificado en Secrets Manager, el servidor VPN no tiene conocimiento de la actualización del certificado. Debe volver a importar el certificado con un CRN diferente y, a continuación, actualizar el servidor VPN con el nuevo CRN del certificado.
-
Si el certificado se utiliza como certificado del servidor VPN, debe cargar el archivo de certificado, el archivo de clave privada y el archivo de certificado intermedio. Si el certificado se utiliza como certificado de cliente VPN para autenticar al cliente, debe cargar el archivo de certificado y el archivo de certificado intermedio.
Puede utilizar una cadena de CA para empaquetar los certificados (CA intermedia 1, CA intermedia 2 y CA raíz) en un único archivo y cargarlos en el archivo de certificado intermedio.
Solicitud de un certificado público utilizando Secrets Manager
Puede utilizar Secrets Manager para solicitar un certificado SSL/TLS público como certificado del servidor VPN. Puesto que el certificado raíz de CA público no se almacena en Secrets Manager, Secrets Manager sólo almacena los certificados
intermedios. Necesita los certificados raíz de Let's Encrypt, guardados como archivos .pem
. Los dos archivos que necesita se encuentran en https://letsencrypt.org/certs/lets-encrypt-r3.pem y https://letsencrypt.org/certs/isrgrootx1.pem. Estos archivos fueron concatenados para su conveniencia; sin embargo, por razones de seguridad, se
recomienda que descargue y concatene su propio certificado raíz en un archivo. Además, cuando descargue y actualice el perfil de cliente VPN, utilice este certificado raíz para sustituir la sección <ca>
en el perfil de
cliente.
Para obtener más información sobre la cadena de certificados Let's Encrypt, consulte https://letsencrypt.org/certificates/.
-----BEGIN CERTIFICATE-----
MIIFFjCCAv6gAwIBAgIRAJErCErPDBinU/bWLiWnX1owDQYJKoZIhvcNAQELBQAw
TzELMAkGA1UEBhMCVVMxKTAnBgNVBAoTIEludGVybmV0IFNlY3VyaXR5IFJlc2Vh
cmNoIEdyb3VwMRUwEwYDVQQDEwxJU1JHIFJvb3QgWDEwHhcNMjAwOTA0MDAwMDAw
WhcNMjUwOTE1MTYwMDAwWjAyMQswCQYDVQQGEwJVUzEWMBQGA1UEChMNTGV0J3Mg
RW5jcnlwdDELMAkGA1UEAxMCUjMwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEK
AoIBAQC7AhUozPaglNMPEuyNVZLD+ILxmaZ6QoinXSaqtSu5xUyxr45r+XXIo9cP
R5QUVTVXjJ6oojkZ9YI8QqlObvU7wy7bjcCwXPNZOOftz2nwWgsbvsCUJCWH+jdx
sxPnHKzhm+/b5DtFUkWWqcFTzjTIUu61ru2P3mBw4qVUq7ZtDpelQDRrK9O8Zutm
NHz6a4uPVymZ+DAXXbpyb/uBxa3Shlg9F8fnCbvxK/eG3MHacV3URuPMrSXBiLxg
Z3Vms/EY96Jc5lP/Ooi2R6X/ExjqmAl3P51T+c8B5fWmcBcUr2Ok/5mzk53cU6cG
/kiFHaFpriV1uxPMUgP17VGhi9sVAgMBAAGjggEIMIIBBDAOBgNVHQ8BAf8EBAMC
AYYwHQYDVR0lBBYwFAYIKwYBBQUHAwIGCCsGAQUFBwMBMBIGA1UdEwEB/wQIMAYB
Af8CAQAwHQYDVR0OBBYEFBQusxe3WFbLrlAJQOYfr52LFMLGMB8GA1UdIwQYMBaA
FHm0WeZ7tuXkAXOACIjIGlj26ZtuMDIGCCsGAQUFBwEBBCYwJDAiBggrBgEFBQcw
AoYWaHR0cDovL3gxLmkubGVuY3Iub3JnLzAnBgNVHR8EIDAeMBygGqAYhhZodHRw
Oi8veDEuYy5sZW5jci5vcmcvMCIGA1UdIAQbMBkwCAYGZ4EMAQIBMA0GCysGAQQB
gt8TAQEBMA0GCSqGSIb3DQEBCwUAA4ICAQCFyk5HPqP3hUSFvNVneLKYY611TR6W
PTNlclQtgaDqw+34IL9fzLdwALduO/ZelN7kIJ+m74uyA+eitRY8kc607TkC53wl
ikfmZW4/RvTZ8M6UK+5UzhK8jCdLuMGYL6KvzXGRSgi3yLgjewQtCPkIVz6D2QQz
CkcheAmCJ8MqyJu5zlzyZMjAvnnAT45tRAxekrsu94sQ4egdRCnbWSDtY7kh+BIm
lJNXoB1lBMEKIq4QDUOXoRgffuDghje1WrG9ML+Hbisq/yFOGwXD9RiX8F6sw6W4
avAuvDszue5L3sz85K+EC4Y/wFVDNvZo4TYXao6Z0f+lQKc0t8DQYzk1OXVu8rp2
yJMC6alLbBfODALZvYH7n7do1AZls4I9d1P4jnkDrQoxB3UqQ9hVl3LEKQ73xF1O
yK5GhDDX8oVfGKF5u+decIsH4YaTw7mP3GFxJSqv3+0lUFJoi5Lc5da149p90Ids
hCExroL1+7mryIkXPeFM5TgO9r0rvZaBFOvV2z0gp35Z0+L4WPlbuEjN/lxPFin+
HlUjr8gRsI3qfJOQFy/9rKIJR0Y/8Omwt/8oTWgy1mdeHmmjk7j1nYsvC9JSQ6Zv
MldlTTKB3zhThV1+XWYp6rjd5JW1zbVWEkLNxE7GJThEUG3szgBVGP7pSWTUTsqX
nLRbwHOoq7hHwg==
-----END CERTIFICATE-----
-----BEGIN CERTIFICATE-----
MIIFazCCA1OgAwIBAgIRAIIQz7DSQONZRGPgu2OCiwAwDQYJKoZIhvcNAQELBQAw
TzELMAkGA1UEBhMCVVMxKTAnBgNVBAoTIEludGVybmV0IFNlY3VyaXR5IFJlc2Vh
cmNoIEdyb3VwMRUwEwYDVQQDEwxJU1JHIFJvb3QgWDEwHhcNMTUwNjA0MTEwNDM4
WhcNMzUwNjA0MTEwNDM4WjBPMQswCQYDVQQGEwJVUzEpMCcGA1UEChMgSW50ZXJu
ZXQgU2VjdXJpdHkgUmVzZWFyY2ggR3JvdXAxFTATBgNVBAMTDElTUkcgUm9vdCBY
MTCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBAK3oJHP0FDfzm54rVygc
h77ct984kIxuPOZXoHj3dcKi/vVqbvYATyjb3miGbESTtrFj/RQSa78f0uoxmyF+
0TM8ukj13Xnfs7j/EvEhmkvBioZxaUpmZmyPfjxwv60pIgbz5MDmgK7iS4+3mX6U
A5/TR5d8mUgjU+g4rk8Kb4Mu0UlXjIB0ttov0DiNewNwIRt18jA8+o+u3dpjq+sW
T8KOEUt+zwvo/7V3LvSye0rgTBIlDHCNAymg4VMk7BPZ7hm/ELNKjD+Jo2FR3qyH
B5T0Y3HsLuJvW5iB4YlcNHlsdu87kGJ55tukmi8mxdAQ4Q7e2RCOFvu396j3x+UC
B5iPNgiV5+I3lg02dZ77DnKxHZu8A/lJBdiB3QW0KtZB6awBdpUKD9jf1b0SHzUv
KBds0pjBqAlkd25HN7rOrFleaJ1/ctaJxQZBKT5ZPt0m9STJEadao0xAH0ahmbWn
OlFuhjuefXKnEgV4We0+UXgVCwOPjdAvBbI+e0ocS3MFEvzG6uBQE3xDk3SzynTn
jh8BCNAw1FtxNrQHusEwMFxIt4I7mKZ9YIqioymCzLq9gwQbooMDQaHWBfEbwrbw
qHyGO0aoSCqI3Haadr8faqU9GY/rOPNk3sgrDQoo//fb4hVC1CLQJ13hef4Y53CI
rU7m2Ys6xt0nUW7/vGT1M0NPAgMBAAGjQjBAMA4GA1UdDwEB/wQEAwIBBjAPBgNV
HRMBAf8EBTADAQH/MB0GA1UdDgQWBBR5tFnme7bl5AFzgAiIyBpY9umbbjANBgkq
hkiG9w0BAQsFAAOCAgEAVR9YqbyyqFDQDLHYGmkgJykIrGF1XIpu+ILlaS/V9lZL
ubhzEFnTIZd+50xx+7LSYK05qAvqFyFWhfFQDlnrzuBZ6brJFe+GnY+EgPbk6ZGQ
3BebYhtF8GaV0nxvwuo77x/Py9auJ/GpsMiu/X1+mvoiBOv/2X/qkSsisRcOj/KK
NFtY2PwByVS5uCbMiogziUwthDyC3+6WVwW6LLv3xLfHTjuCvjHIInNzktHCgKQ5
ORAzI4JMPJ+GslWYHb4phowim57iaztXOoJwTdwJx4nLCgdNbOhdjsnvzqvHu7Ur
TkXWStAmzOVyyghqpZXjFaH3pO3JLF+l+/+sKAIuvtd7u+Nxe5AW0wdeRlN8NwdC
jNPElpzVmbUq4JUagEiuTDkHzsxHpFKVK7q4+63SM1N95R1NbdWhscdCb+ZAJzVc
oyi3B43njTOQ5yOf+1CceWxG1bQVs5ZufpsMljq4Ui0/1lvh+wjChP4kqKOJ2qxq
4RgqsahDYVvTH9w7jXbyLeiNdd8XM2w9U/t7y0Ff/9yi0GE44Za4rF2LN9d11TPA
mRGunUHBcnWEvgJBQl9nJEiU0Zsnvgc/ubhPgXRR4Xq37Z0j4r7g1SgEEzwxA57d
emyPxgcYxn/eR44/KJ4EBs+lVDR3veyJm+kXQ99b21/+jh5Xos1AnX5iItreGCc=
-----END CERTIFICATE-----
Los certificados solicitados son certificados SSL/TLS públicos y solo se deben utilizar como certificado de servidor VPN. No puede utilizar los certificados solicitados para autenticar los clientes de VPN debido a las siguientes razones:
- Cualquiera puede solicitar un nuevo certificado a una CA pública. A continuación, se puede pasar la autenticación, si se utilizan certificados SSL/TLS públicos, para autenticar el cliente de VPN.
- No se puede crear una lista de revocación de certificados (CRL) para revocar un certificado de cliente VPN con una CA pública.
Debe crear su propia CA e importar el certificado CA en Secrets Manager para autenticar su cliente VPN.
Utilización de un certificado privado
Puede utilizar un certificado privado de Secrets Manager en el servidor VPN. Revise las siguientes consideraciones importantes al hacerlo:
-
Todas las CA de una cadena de CA deben estar contenidas en una instancia de Secrets Manager. Además, debe crear la CA raíz dentro de Secrets Manager. Cuando selecciona una CA intermedia, las opciones siguientes son necesarias para asegurarse de que se puede encontrar cada CA mientras se verifica la cadena de CA de un certificado privado en el servidor VPN:
- En la sección Tipo, debe seleccionar Firma interna.
- En la sección Tipo, debe activar el modificador Codificar URL al crear una CA para codificar la URL del certificado emisor en los certificados de entidad final. No funciona si activa el interruptor Encode URL después de crear la CA.
-
El número máximo de CA en una cadena de CA de certificado privado es 11 (una CA raíz y 10 CA intermedias como máximo).
-
En la sección Lista de revocación de certificados, habilite los conmutadores Creación de CRL y Puntos de distribución de CRL si desea utilizar la CRL de CA de un certificado privado. Las aplicaciones ya no confían en un certificado revocado después de una hora.
-
La CRL de CA solo funciona si no carga una lista de revocación de certificados al crear un servidor VPN. No es necesario habilitar una CRL de CA si la CRL del servidor VPN ya está cargada.
-
Al crear una plantilla para una CA intermedia, en la sección Roles de certificado:
- Seleccione el recuadro de selección Utilizar certificados para el servidor si la CA creada firmará el certificado de servidor para el servidor VPN.
- Seleccione el recuadro de selección Utilizar certificados para el cliente si la CA creada firmará el certificado de cliente para el servidor VPN.
- Marque los recuadros de selección Utilizar certificados para el servidor y Utilizar certificados para el cliente si la CA creada firmará los certificados de servidor y cliente para el servidor VPN.
-
Asegúrese de que cada CA tenga un nombre común único en la cadena de CA mientras la crea en la instancia Secrets Manager.
Para obtener más información, consulte Creación de certificados privados en la documentación de Secrets Manager.
Localización del CRN de certificado
Cuando configure la autenticación para un servidor VPN de cliente a sitio durante el aprovisionamiento utilizando la interfaz de usuario, puede elegir especificar el Secrets Manager y el certificado SSL, o el CRN del certificado. Puede que quiera hacer esto si no puede ver Secrets Manager en el menú, lo que significa que no tiene acceso a la instancia Secrets Manager. Tenga en cuenta que debe especificar el CRN si utiliza la API para crear un servidor VPN de cliente a sitio.
Para obtener el CRN, debe tener permiso para acceder a la instancia Secrets Manager.
Para encontrar el CRN de un certificado, siga estos pasos:
- En la consola deIBM Cloud, vaya al icono Menú de navegación
> Lista de recursos * *.
- Haga clic para ampliar Seguridad y, a continuación, seleccione la dirección Secrets Manager para la que desea encontrar el CRN.
- Seleccione cualquier punto de la fila de tabla del certificado para abrir el panel lateral de detalles del certificado. El CRN de certificado se lista en el panel lateral.
Configuración de ID de usuario y códigos de acceso
Para configurar la autenticación para usuarios de cliente VPN, siga estos pasos:
-
El administrador de VPN invita al usuario del cliente de VPN a la cuenta en la que reside el servidor VPN.
-
El administrador de VPN asigna al usuario del cliente de VPN un permiso de IAM. Dicho permiso permite a este usuario conectarse con el servidor VPN. Para obtener más información, consulte Creación de un grupo de acceso de IAM y concesión del rol para conectarse al servidor VPN.
-
El usuario del cliente de VPN abre el siguiente sitio web para generar un código de acceso para su ID de usuario:
https://iam.cloud.ibm.com/identity/passcode
-
El usuario del cliente de VPN introduce el código de acceso en su cliente de openVPN e inicia la conexión con el servidor VPN. Para obtener más información, consulte Configuración de un entorno VPN de cliente y conexión a un servidor VPN.