Aviso
Aviso
Esta página é fornecida apenas parafins de teste e os certificados são apenas para fins de teste.
O seguinte tutorial fornece algumas diretrizes para criar certificados x.509 de teste:
- Não use esses certificados para produção. Em vez disso, siga suas políticas de segurança. 
- Para obter informações sobre OpenSSL, consulte os documentos oficiais do OpenSSL. Embora este tutorial use OpenSSL, o material não deve ser considerado uma referência oficial no OpenSSL. 
Procedimentos
Os procedimentos a seguir descrevem as etapas para criar um arquivo CA PEM de teste. O procedimento cria o arquivo CA PEM e um certificado de autoridade intermediária e arquivos de chave para assinar certificados de teste do servidor/cliente.
A. Criar o arquivo de configuração OpenSSL
- Crie um arquivo de configuração - openssl-test-ca.cnfcom o seguinte conteúdo:- # NOT FOR PRODUCTION USE. OpenSSL configuration file for testing. - # For the CA policy - [ policy_match ] - countryName = match - stateOrProvinceName = match - organizationName = match - organizationalUnitName = optional - commonName = supplied - emailAddress = optional - [ req ] - default_bits = 4096 - default_keyfile = myTestCertificateKey.pem ## The default private key file name. - default_md = sha256 ## Use SHA-256 for Signatures - distinguished_name = req_dn - req_extensions = v3_req - x509_extensions = v3_ca # The extentions to add to the self signed cert - [ v3_req ] - subjectKeyIdentifier = hash - basicConstraints = CA:FALSE - keyUsage = critical, digitalSignature, keyEncipherment - nsComment = "OpenSSL Generated Certificate for TESTING only. NOT FOR PRODUCTION USE." - extendedKeyUsage = serverAuth, clientAuth - [ req_dn ] - countryName = Country Name (2 letter code) - countryName_default = - countryName_min = 2 - countryName_max = 2 - stateOrProvinceName = State or Province Name (full name) - stateOrProvinceName_default = TestCertificateStateName - stateOrProvinceName_max = 64 - localityName = Locality Name (eg, city) - localityName_default = TestCertificateLocalityName - localityName_max = 64 - organizationName = Organization Name (eg, company) - organizationName_default = TestCertificateOrgName - organizationName_max = 64 - organizationalUnitName = Organizational Unit Name (eg, section) - organizationalUnitName_default = TestCertificateOrgUnitName - organizationalUnitName_max = 64 - commonName = Common Name (eg, YOUR name) - commonName_max = 64 - [ v3_ca ] - # Extensions for a typical CA - subjectKeyIdentifier=hash - basicConstraints = critical,CA:true - authorityKeyIdentifier=keyid:always,issuer:always 
- Opcional. Você pode atualizar os valores padrão de nome distinto (DN). 
B. Gerar o arquivo CA PEM de teste
- Crie o arquivo de chave de CA de teste - mongodb-test-ca.key.- openssl genrsa -out mongodb-test-ca.key 4096 - Dica- Essa chave privada é usada para gerar certificados válidos para a CA. Embora essa chave privada, como todos os arquivos deste apêndice, seja destinada apenas para fins de teste, você deve adotar boas práticas de segurança e proteger esse arquivo de chave. 
- Crie o certificado da CA - mongod-test-ca.crtutilizando o arquivo de chave gerado. Quando solicitado para valores de nome distinto, insira os valores apropriados para o certificado de teste da CA.- openssl req -new -x509 -days 1826 -key mongodb-test-ca.key -out mongodb-test-ca.crt -config openssl-test-ca.cnf 
- Crie a chave privada para o certificado intermediário. - openssl genrsa -out mongodb-test-ia.key 4096 - Dica- Essa chave privada é usada para gerar certificados válidos para a autoridade intermediária. Embora essa chave privada, como todos os arquivos deste apêndice, seja destinada apenas para fins de teste, você deve adotar boas práticas de segurança e proteger esse arquivo de chave. 
- Crie a solicitação de assinatura de certificado para o certificado intermediário. Quando solicitado para valores de nome distinto, insira os valores apropriados para seu certificado de autoridade intermediária de teste. - openssl req -new -key mongodb-test-ia.key -out mongodb-test-ia.csr -config openssl-test-ca.cnf 
- Crie o certificado intermediário - mongodb-test-ia.crt.- openssl x509 -sha256 -req -days 730 -in mongodb-test-ia.csr -CA mongodb-test-ca.crt -CAkey mongodb-test-ca.key -set_serial 01 -out mongodb-test-ia.crt -extfile openssl-test-ca.cnf -extensions v3_ca 
- Crie o arquivo CA PEM de test a partir do certificado de teste da CA - mongod-test-ca.crte do certificado intermediário de teste- mongodb-test-ia.crt.- cat mongodb-test-ia.crt mongodb-test-ca.crt > test-ca.pem 
Você pode usar o arquivo PEM de teste ao configurar mongod, mongos ou para mongosh testar TLS/SSL.
Você pode usar a autoridade intermediária de teste para assinar os certificados de teste para o(s) servidor(es) e cliente(s). Uma só autoridade deve emitir os certificados tanto para o cliente quanto para o servidor.