A CSR is required in order for an SSL certificate to be issued. A CSR is where all of the information which goes into the SSL certificate is originally entered.
An SSL Key is required to generate a CSR, you can create these together in one command. This will then ask you for all of the required information and give you both the .key file and .csr file which you pass on to your SSL vendor.
To generate the CSR/Key you can use the following command:
openssl req -new -newkey rsa:2048 -keyout domain-name.com.key -nodes
-out domain-name.com.csr
This will then ask you for the following information:
Country Name (2 letter code) [GB]:
State or Province Name (full name) [Some-State]:
Locality Name (eg, city) []:
Organization Name (eg, company) [Internet Widgits Pty Ltd]:
Organizational Unit Name (eg, section) []:
Common Name (eg, DOMAIN name) []:
Email Address []:
Once you have filled out all of those fields then you will have a .csr and a .key file in your current directory. Make sure that you keep the .key file safe as you will need this for installing your SSL certificate once it has been issued by your SSL vendor.