Dell Unity: How to Create a Secure CA Certificate Signing Request (CSR) on Unity (User correctable)

Summary: Browsers are expecting more information before the browser trusts a CA Signed Certificate. This process creates a secure Certificate Signing Request (CSR) using a configuration file, to be submitted to CA Signing Server, to be imported into Unity. ...

This article applies to This article does not apply to This article is not tied to any specific product. Not all product versions are identified in this article.

Instructions

On Unity, Create a Unity CSR CA Certificate Signing Request.

Unity 5.5

NOTE: If Unity is operating on Unity Operating Environment 5.5, request a Senior Technical Support specialist to apply the internal update to svc_custom_cert prior to importing Unity's CA-signed certificate.
See Internal KB article.
  Dell Unity: svc_custom_cert: ERROR: Could not determine private key strength.
  Audience Level: Internal
  https://www.dell.com/support/kbdoc/en-us/000308965
 


1. SSH into Unity as the user service.

2. Create a CA Certificate Signing Request (CSR) configuration file.

vi unity-cert.cnf
Copy the text from the below working example that is between the two #=== and paste the text into the unity-cert.cnf file.
Edit the distinguished_name "dn" details to match your Unity's C, ST, L, OU, CN, and emailAddress needs.
Edit the subjectAltName "alt_names" details to match your Unity's Full Qualified Domain Name (FQDN), hostname, and IP Address needs.

Here is the definitions list for distinguished name (dn) details:
C=2 Letter Country Code
ST=State/Region
L=Location/City
O=Organization
OU=Organization Unit
CN=Common Name (This is Unity's Fully Qualified DNS Domain Name (FQDN))
emailAddress=The email address of a Group or a Person that manages Unity and/or its Certificates.

The subjectAltName is a list of FQDN, hostname, and IP address that can be used to browse to the Unity.
If there is only one DNS entry, you can use  DNS=DNS detail and remove or comment out the DNS.1 and DNS.2 entries.
Some sites have disabled the subjectAltName section from supporting IP addresses. Remove or comment out the IP line as required.

Below is a working example of unity-cert.cnf that you must edit to your requirements.

#===
[req]
default_bits=2048
prompt=no
default_md=sha256
distinguished_name=dn
req_extensions=v3_req # The extensions to add to a certificate request

[dn]
C=US
ST=Massachusetts
L=Hopkinton
O=Dell Technologies
OU=3CLAB
CN=unityf12.3clab.hop.ma.dell.com
emailAddress=3clabadmin@3clab.hop.ma.dell.com

[v3_req]
basicConstraints=critical,CA:FALSE
keyUsage=critical,nonRepudiation,digitalSignature,keyEncipherment,keyAgreement
extendedKeyUsage=serverAuth,clientAuth
subjectAltName=@alt_names

[alt_names]
DNS.1=unityf12.3clab.hop.ma.dell.com
DNS.2=unityf12
IP.1=10.20.30.40
#===



Save the unity-cert.cnf file. 

3. Create a CSR Certificate Signing Request (.csr) and a Private Key (.pk) that is not PassPhrase protected. Unity only accepts a Private Key that is not PassPhrase protected.

   openssl req -newkey rsa:2048 -nodes -keyout unity-cert.pk -config unity-cert.cnf -out unity-cert.csr


   View and confirm the CSR's distinguished_name and subjectAltName details meet the Unity requirements.

   openssl req -verify -noout -text -in unity-cert.csr


4. Send the unity-cert.csr file to the CA Certificate Signing Server to be signed.
    Use either scp or WinSCP (using scp protocol) to transfer the unity-cert.csr file.
    The team signs the CSR with the CA's Certificate and create a CA signed Certificate for Unity.
     If the returned Certificate arrives as a (.cer), it may be in the "DER" format and must be in the "PEM" format with an extension (.crt).

5. View the Newly created CA Signed Certificate.

   openssl x509 -noout -text -in unity-cert.crt

   If you are unable to view the newly created certificate, convert the certificate from the "DER" format (.cer extension) to the "PEM" format (.crt extension), using the following command:

   openssl x509 -inform der -in unity-cert.cer -outform pem -out unity-cert.crt


6. View the Newly created CA Signed Certificate.

   openssl x509 -noout -text -in unity-cert.crt


   Verify that the output of the CA-signed certificate is correct, then proceed to the next step.

7. Import the CA Signed Certificate and Unity's Private Key on the Unity.
   

NOTE: The Certificate import command, svc_custom_cert needs two files. 

         a. CA Signed Certificate with a (.crt) extension.
         b. Private Key that is not PassPhrase Protected with a (.pk) extension. 
 

   svc_custom_cert unity-cert

        If you get an error message and Unity is running OE 5.5
          "ERROR: Could not determine private key strength"
          Request a Senior Technical Support person to apply the Internal update to svc_custom_cert before import a CA-Signed Certificate.

         See Internal KB article
          Dell Unity: svc_custom_cert: ERROR: Could not determine private key strength
          Audience Level: Internal
         https://www.dell.com/support/kbdoc/en-us/000308965



   Unity's Management services will restart and load the new Certificate. This takes 2-5 minutes to complete.
      
   

WARNING: If Unity asks for the PassPhrase for the Private Key, cancel the process by pressing Ctrl-C.
   Do not enter the PassPhrase. Unity only accepts a Private Key that is not PassPhrase protected.
   Unity does not have a method to store a Private Key PassPhrase. Entering a PassPhrase causes Unity's Management Services to stop running. Go back and redo the above steps if a PassPhrase is asked for.


8. Once the new Certificate is imported, open your web browse and connect to Unity.
    Depending on your needs, choose the wanted URL to confirm that the certificate is secure.

   https://FQDN/
   https://hostname/
   https://Unity_IP_Address/
   https://[Unity_IPv6_Address]/

   
Note: For my temporary Unity's example:
FQDN is unityf12.3clab.hop.ma.dell.com
Hostname is unityf12 (I had to ensure my workstation's domain search included 3clab.hop.ma.dell.com).
IP Address is 10.20.30.40
There is no IPv6 address specified.

As an example then, to browse to my Unity, I can use:

   https://unityf12.3clab.hop.ma.dell.com/
   https://unityf12/ (Ensure your workstation's domain search includes Unity's Domain) 
   https://10.20.30.40/
   https://[Unity_IPv6_Address]/ (Note, My Unity does not have IPv6 address to test.)

Additional Information

NOTE: Scripting these steps requires special permission to upload the script and enable service shell on the Unity. This would require engaging Dell Tech Support.

Using the procedure above does not involve scripting or enabling the service shell.

Extra steps to validate the chain of authority that the "modulus" of the Private key (.PK), Certificate Signing Request (.CSR) and the CA-Signed Certificate (.CRT) all match.

openssl rsa  -noout -modulus -in unity-cert.pk  | sha256sum
openssl req  -noout -modulus -in unity-cert.csr | sha256sum
openssl x509 -noout -modulus -in unity-cert.crt | sha256sum

Affected Products

Dell EMC Unity Family |Dell EMC Unity All Flash, Dell EMC Unity Family
Article Properties
Article Number: 000203303
Article Type: How To
Last Modified: 12 Jun 2025
Version:  10
Find answers to your questions from other Dell users
Support Services
Check if your device is covered by Support Services.