Pesquisar

50.11. Solicitar um novo certificado de usuário e exportá-lo para o cliente

download PDF

Como administrador de Gerenciamento de Identidade (IdM), você pode configurar um servidor web rodando em um cliente IdM para solicitar aos usuários que usam navegadores web para acessar o servidor para autenticar com certificados emitidos por uma sub-CA específica da IdM. Complete esta seção para solicitar um certificado de usuário de uma sub-CA específica de IdM e para exportar o certificado e a chave privada correspondente para o host a partir do qual o usuário deseja acessar o servidor web usando um navegador web. Em seguida, importe o certificado e a chave privada para o navegador.

Procedimento

  1. Opcionalmente, criar um novo diretório, por exemplo ~/certdb/, e torná-lo um banco de dados temporário de certificados. Quando solicitado, crie uma senha NSS Certificate DB para criptografar as chaves do certificado a ser gerado em uma etapa posterior:

    # mkdir ~/certdb/
    # certutil -N -d ~/certdb/
    Enter a password which will be used to encrypt your keys.
    The password should be at least 8 characters long,
    and should contain at least one non-alphabetic character.
    
    Enter new password:
    Re-enter password:
  2. Criar o pedido de assinatura de certificado (CSR) e redirecionar a saída para um arquivo. Por exemplo, para criar um CSR com o nome certificate_request.csr para um certificado de bit 4096 para o usuário idm_user no reino IDM.EXAMPLE.COM, definindo o apelido das chaves privadas do certificado para idm_user para facilitar a busca, e definindo o assunto para CN=idm_user,O=IDM.EXAMPLE.COM:

    # certutil -R -d ~/certdb/ -a -g 4096 -n idm_user -s "CN=idm_user,O=IDM.EXAMPLE.COM" > certificate_request.csr
  3. Quando solicitado, digite a mesma senha que você digitou ao utilizar certutil para criar o banco de dados temporário. Em seguida, continue digitando randlomly até que lhe seja dito para parar:

    Enter Password or Pin for "NSS Certificate DB":
    
    A random seed must be generated that will be used in the
    creation of your key.  One of the easiest ways to create a
    random seed is to use the timing of keystrokes on a keyboard.
    
    To begin, type keys on the keyboard until this progress meter
    is full.  DO NOT USE THE AUTOREPEAT FUNCTION ON YOUR KEYBOARD!
    
    
    Continue typing until the progress meter is full:
  4. Submeta o arquivo de pedido de certificado ao servidor. Especificar o Kerberos principal para associar com o certificado recém-emitido, o arquivo de saída para armazenar o certificado e, opcionalmente, o perfil do certificado. Especifique a sub-CA do IdM que você deseja emitir o certificado. Por exemplo, para obter um certificado do perfil IECUserRoles, um perfil com extensão de funções de usuário adicional, para o idm_user@IDM.EXAMPLE.COM principal de webclient-ca, e salvar o certificado no arquivo ~/idm_user.pem:

    # ipa cert-request certificate_request.csr --principal=idm_user@IDM.EXAMPLE.COM --profile-id=IECUserRoles --ca=webclient-ca --certificate-out=~/idm_user.pem
  5. Adicionar o certificado ao banco de dados do NSS. Use a opção -n para definir o mesmo apelido que você usou ao criar o CSR anteriormente, para que o certificado corresponda à chave privada no banco de dados do NSS. A opção -t define o nível de confiança. Para detalhes, consulte a página de manual certutil(1). A opção -i especifica o arquivo do certificado de entrada. Por exemplo, para adicionar ao banco de dados do NSS um certificado com o apelido idm_user que é armazenado no arquivo ~/idm_user.pem no banco de dados ~/certdb/:

    # certutil -A -d ~/certdb/ -n idm_user -t "P,,\i ~/idm_user.pem
  6. Verifique se a chave no banco de dados do NSS não mostra (orphan) como seu apelido. Por exemplo, para verificar se o certificado armazenado no banco de dados ~/certdb/ não é órfão:

    # certutil -K -d ~/certdb/
    < 0> rsa      5ad14d41463b87a095b1896cf0068ccc467df395   NSS Certificate DB:idm_user
  7. Use o comando pk12util para exportar o certificado do banco de dados NSS para o formato PKCS12. Por exemplo, para exportar o certificado com o nickname idm_user do banco de dados /root/certdb NSS para o arquivo ~/idm_user.p12:

    # pk12util -d ~/certdb -o ~/idm_user.p12 -n idm_user
    Enter Password or Pin for "NSS Certificate DB":
    Enter password for PKCS12 file:
    Re-enter password:
    pk12util: PKCS12 EXPORT SUCCESSFUL
  8. Transfira o certificado para o host no qual você deseja que a autenticação do certificado para idm_user seja habilitada:

    # scp ~/idm_user.p12 idm_user@client.idm.example.com:/home/idm_user/
  9. No host para o qual o certificado foi transferido, tornar o diretório no qual o arquivo .pkcs12 é armazenado inacessível ao grupo 'outro' por razões de segurança:

    # chmod o-rwx /home/idm_user/
  10. Por razões de segurança, remova o banco de dados temporário do NSS e o arquivo .pkcs12 do servidor:

    # rm ~/certdb/
    # rm ~/idm_user.p12
Red Hat logoGithubRedditYoutubeTwitter

Aprender

Experimente, compre e venda

Comunidades

Sobre a documentação da Red Hat

Ajudamos os usuários da Red Hat a inovar e atingir seus objetivos com nossos produtos e serviços com conteúdo em que podem confiar.

Tornando o open source mais inclusivo

A Red Hat está comprometida em substituir a linguagem problemática em nosso código, documentação e propriedades da web. Para mais detalhes veja oBlog da Red Hat.

Sobre a Red Hat

Fornecemos soluções robustas que facilitam o trabalho das empresas em plataformas e ambientes, desde o data center principal até a borda da rede.

© 2024 Red Hat, Inc.