Cliente Linux administrado por Intune
Aplicable a la versión 2.9 y posteriores de SCEPman
solo en SCEPman Enterprise Edition
Este método se puede usar para inscribir certificados para usuarios y dispositivos que son administrados por Intune.
En este caso, Intune enviará un script para aprovechar la API REST de SCEPman, que a su vez inscribirá un nuevo certificado o renovará uno ya existente.
Nuestro desarrollador Christoph presentó esta funcionalidad y algunos detalles de contexto en el Workplace Ninja Usergroup Germany:
Requisitos previos
1. Inscripción de autoservicio
Para inscribir certificados, los usuarios deben autenticarse para verificar su elegibilidad. Siga esta guía para obtener instrucciones paso a paso sobre cómo configurar esto
2. Configuración de App Service
Configuración
Requerido para la renovación del certificado
Configure su App Service de SCEPman para aceptar certificados de cliente mTLS. En la sección Configuration del panel Settings, verifique que el modo de certificado de cliente en Incoming client certificates esté establecido en Usuario interactivo opcional.

No establezca el modo de certificado de cliente en Require o Allow, ya que eso interrumpiría el funcionamiento normal de SCEPman en los extremos SCEP.
Variables de entorno
Para poder usar este escenario, debe establecer las siguientes variables de entorno en el servicio de la aplicación SCEPman.
Requerido para la inscripción y renovación de certificados
Establezca esta variable en verdadero para habilitar la validación de las solicitudes de firma de certificado (CSR).
Requerido para la renovación del certificado
Establezca esta variable en verdadero para habilitar las renovaciones de certificados.
Requerido para la renovación del certificado
Establezca esta variable en una lista separada por comas de los tipos de certificado para los que desea permitir la renovación. Consulte la documentación vinculada de la variable para obtener una lista de los posibles tipos de certificado.
Ejemplo: Static,IntuneUser,IntuneDevice
Este escenario inscribirá certificados del tipo IntuneUser y IntuneDevice dependiendo de tu elección.
3. Requisitos del cliente
Los siguientes requisitos previos deben estar presentes en el cliente/anfitrión que ejecuta para poder usar la API REST de inscripción.
Azure CLI (versión 2.61 y superior)
Se usa Azure CLI para autenticar al usuario que se inscribe, comprobar su elegibilidad y recuperar el token de acceso.
cURL
Se usa para enviar la CSR creada al endpoint de la API de inscripción de SCEPman y recibir el certificado.
OpenSSL
OpenSSL se usa para generar una clave privada y crear una CSR para inscribir o renovar un certificado.
Sigue la documentación enlazada para inscribir tu cliente Linux en Intune.
Script de inscripción y renovación
El enrollrenewcertificate.sh El script se usará para obtener inicialmente un certificado, así como para comprobarlo con un intervalo regular e intentar una renovación en caso de que se alcance el umbral.
Aunque normalmente el script se ejecuta pasando los parámetros en la terminal, necesitaremos modificar algunas partes para implementarlo mediante Intune.
Localiza la parte del script que asigna los argumentos de terminal recibidos a la variable y ajústalos a tus necesidades:
Ejemplo de configuración:
APPSERVICE_URL
La URL del servicio de aplicación SCEPman.
Ejemplo: "https://scepman.contoso.net/"
API_SCOPE
Este es el ámbito de API que puedes crear en el SCEPman-api registro de aplicación en tu entorno.
Al usuario se le presentará el cuadro de diálogo de consentimiento deseado y después podrá usar la funcionalidad de autoservicio.
Ejemplo: "api://b7d17d51-8b6d-45eb-b42b-3dae638cd5bc/Cert.Enroll"

CERT_DIR
El directorio donde se creará el certificado o donde se intentará renovarlo. La clave privada y el certificado raíz también se colocarán aquí.
Ejemplo: ~/certs/
CERT_NAME
El nombre de archivo (sin extensión) del certificado que se creará o se leerá para la renovación.
Ejemplo: "myCertificate"
KEY_NAME
El nombre de archivo de la clave privada que se creará o se leerá para la renovación.
Ejemplo: "myKey"
RENEWAL_THRESHOLD_DAYS
La cantidad de días que deben quedar para que venza el certificado para que el script comience el proceso de renovación.
Ejemplo: 30
CERT_TYPE
El tipo de certificado que se inscribirá.
Puede ser "user" o "device"
CERT_COMMAND
Esto define el comportamiento del script en relación con la inscripción y la renovación:
"auto" creará un certificado inicialmente o renovará un certificado si ya existe y está a punto de expirar.
"renewal" renovará un certificado si está a punto de expirar, pero no creará inicialmente un certificado.
"initial" solo inscribirá un certificado, pero no renovará uno existente.
Si estás inscribiendo o renovando un certificado de dispositivo, el DeviceId se obtendrá desde ~/.config/intune/registration.toml y el usuario autenticado deberá coincidir con el propietario del objeto en el DeviceDirectory.
Consideraciones
Este script no cifra las claves generadas (esto requiere la introducción de una frase de contraseña, por lo que se ha omitido el cifrado para permitir la renovación automática).
Si estás renovando certificados protegidos con frase de contraseña de Certificate Master, deberás introducir esta frase de contraseña para poder renovarlos.
Implementar script
Usando Intune, podemos implementar el script modificado según una programación para inscribir inicialmente un certificado con los parámetros dados y comprobar periódicamente si necesita renovarse.
Añade una nueva implementación de script de Linux y asegúrate de establecer el Contexto de ejecución a Usuario y luego carga o pega el contenido del script bash modificado que creaste en la sección anterior.
Ajusta la Frecuencia de ejecución de acuerdo con tu umbral de renovación.
Se pedirá al usuario que inicie sesión en la aplicación Azure CLI en la primera ejecución, ya que es necesario autenticarse.
Última actualización
¿Te fue útil?