Generating CSR for Apache

Generating the Key Pair

1. The utility "OpenSSL" is used to generate both Private Key (key) and Certificate Signing request (CSR). OpenSSL is usually installed under /usr/local/ssl/bin. If you have a custom install, you will need to adjust these instructions appropriately.

2. Type the following command at the prompt:

openssl genrsa –des3 –out www.mydomain.com.key 2048

Note: If you do not wish to use a Pass Phrase, do not use the -des3 command. It will however leave the private key unprotected.

3. Enter the PEM Pass Phrase (This MUST be remembered)

4. This will generate a 2048 RSA Private key, and stores it in the file www.mydomain.com.key.

Generating the CSR

1. Type the following command at the prompt:

openssl req –new –key www.mydomain.com.key –out www.mydomain.com.csr

Note:You will be prompted for the PEM Pass Phrase if you included the "-des3" command. Type it in now.

Note: There is a known issue with Apache/OpenSSL Windows Based Installations. If you recevie an error with the above command, Please enter the following:
openssl req -new -key www.mydomain.com.key -out www.mydomain.com.csr -config openssl.cnf

2. Input the information for the Certificate Signing Request. This information will be displayed in the certificate.

Note: The following characters can not be accepted: < > ~ ! @ # $ % ^ * / \ ( ) ?.,&

Example:
Country Name (2 letter code) [AU]:UA
State or Province Name (full name) []: Kharkovskaya oblast
Locality Name (eg, city) []:Kharkov
Organization Name (eg, company) []:Ukrnames
Organization Unit Name (eg, section) []:IT
Common Name []:www.ukrnames.com (Must be the FQDN - Fully Qualifed Domain Name)

Note: DO NOT Enter the following :
Email Address []:
A challenge password []:
An optional company name []:

3. Please verify the CSR, to insure all information is correct. Use the following command:
openssl req -noout -text -in www.mydomain.com.csr

4. Your CSR is now generated. Open the CSR with a text editor, and copy and paste the text (including the BEGIN and END tags) into enrollment form when requested.