Cliente Linux não gerido
apenas na Edição Enterprise do SCEPman
Este método pode ser usado para inscrever certificados para utilizadores e dispositivos que não são geridos ou são geridos por um MDM diferente do Intune.
Pré-requisitos
1. Inscrição de autoatendimento
Para inscrever certificados, os utilizadores têm de ser autenticados para verificar a respetiva elegibilidade. Siga este guia para obter instruções passo a passo sobre como configurar isto
2. Definições do App Service
Configuração
Necessário para renovação de certificado
Configure o seu SCEPman App Service para aceitar certificados de cliente mTLS. No painel Configuration da seção Settings, verifique se o Client certificate mode em Incoming client certificates está definido como Utilizador interativo opcional.

Não defina o Client certificate mode como Require ou Allow, pois isso quebraria o funcionamento normal do SCEPman nos endpoints SCEP!
Variáveis de ambiente
Para usar este cenário, você deve definir as seguintes Variáveis de Ambiente no serviço de aplicativo SCEPman.
AppConfig:DbCSRValidation:Enabled
Necessário para inscrição e renovação de certificado
Defina esta variável como true para ativar a validação de solicitações de assinatura de certificado (CSRs).
AppConfig:DbCSRValidation:AllowRenewals
Necessário para renovação de certificado
Defina esta variável como true para ativar renovações de certificado.
AppConfig:DbCSRValidation:ReenrollmentAllowedCertificateTypes
Necessário para renovação de certificado
Defina esta variável como uma lista separada por vírgulas de tipos de certificado para os quais você deseja permitir a renovação. Consulte a documentação da variável vinculada para ver uma lista de tipos de certificado possíveis.
Exemplo: Static,IntuneUser,IntuneDevice
Este cenário irá inscrever certificados do tipo IntuneUser.
Módulo PowerShell SCEPmanClient
Pedidos iniciais
Pode usar o módulo PowerShell SCEPmanClient para solicitar certificados no seu dispositivo Linux:
O utilizador terá então de se autenticar interativamente numa sessão do navegador e será criado um certificado para a conta na qual tem sessão iniciada.
Renovação de certificados
Também pode usar o módulo PowerShell para renovar certificados já existentes. Isto também dispensa a आवश्यकता de usar um Service Principal para autenticação:
Script de inscrição e renovação
Se o módulo PowerShell não for uma opção para si, o enrollrenewcertificate.sh script pode ser usado para obter inicialmente um certificado, bem como para o verificar e tentar uma renovação caso esteja prestes a expirar.
Pré-requisitos do cliente
Os seguintes pré-requisitos devem estar presentes no cliente/host de execução para poder utilizar a API REST de inscrição.
Azure CLI ( versão 2.61 e superior)
O Azure CLI é usado para autenticar o utilizador em processo de inscrição, verificar a sua elegibilidade e obter o token de acesso.
cURL
Usado para enviar o CSR criado para o endpoint da API de inscrição do SCEPman e receber o certificado.
OpenSSL
O OpenSSL é usado para gerar uma chave privada e criar um CSR para inscrever ou renovar um certificado.
Exemplo:
1. Comando
Define o comportamento do script
Pode ser qualquer um dos seguintes:
-u para certificado de utilizador com deteção automática de se se trata de uma inscrição inicial ou de uma renovação
-d para certificado de dispositivo com deteção automática de se se trata de uma inscrição inicial ou de uma renovação
-r para renovação
-w para inscrição inicial de um utilizador
-x para inscrição inicial de um dispositivo
Se estiver a inscrever ou a renovar um certificado de dispositivo, o DeviceId será tentado ser lido de ~/.config/intune/registration.toml por predefinição e o utilizador autenticado terá de corresponder ao proprietário do objeto no DeviceDirectory
2. URL do serviço de aplicações
O URL do serviço de aplicações da SCEPman.
Exemplo: "https://scepman.contoso.net/"
3. API_SCOPE
Este é o âmbito da API que pode criar no SCEPman-api registo da aplicação no seu ambiente.
Ao utilizador será apresentado o diálogo de consentimento desejado e, posteriormente, poderá usar a funcionalidade de autoatendimento.
Exemplo: "api://b7d17d51-8b6d-45eb-b42b-3dae638cd5bc/Cert.Enroll"

4. Diretório de certificados
O diretório no qual o certificado será criado ou no qual se tentará renová-lo.
Exemplo: ~/certs/
5. Nome do ficheiro do certificado
O nome do ficheiro (sem extensão) do certificado que será criado ou lido para renovação.
Exemplo: "myCertificate"
6. Nome do ficheiro da chave privada
O nome do ficheiro da chave privada que será criado ou lido para renovação.
Exemplo: "myKey"
7. Limiar de renovação
O número de dias em que o certificado terá de expirar para que o script inicie o processo de renovação.
Exemplo: 30
Considerações
Este script não encripta as chaves geradas (isto requer introdução de frase-passe, pelo que a encriptação foi omitida para permitir a renovação automática.)
Se estiver a renovar certificados protegidos por frase-passe do Certificate Master, terá de introduzir essa frase-passe para os renovar.
Configurar renovação automática
Quando o script bash acima é executado e deteta que um certificado já foi inscrito, irá renovar o certificado (se estiver perto do vencimento) usando mTLS. Se o script for executado regularmente, isto garantirá que o certificado é renovado quando se aproxima do vencimento. Pode configurar uma cronjob para conseguir isto. O comando abaixo é um exemplo de como isso pode ser feito. Irá configurar uma cronjob para executar o comando diariamente (se o sistema estiver ligado) e uma cronjob para executar o comando no reinício.
Uma vez que os comandos executados pelo Cron não serão necessariamente executados a partir do diretório onde o script/certificados se encontram, é importante fornecer os caminhos absolutos para o script/certificados.
Última atualização
Isto foi útil?