If you are running any *nix operating system, you most likely have OpenSSL installed. If you want to generate SSL certificates for any servers you may have or for something like m0n0wall, you will need to generate a certificate signing request (CSR). It is very simple to do this:
On OS X, open up Terminal (in /Applications/Utilities/), and at the shell prompt, enter:
openssl req -nodes -new -keyout private.key -out server.csr
It will ask you a number of things:
Generating a 1024 bit RSA private key
.++++++
.............++++++
writing new private key to 'private.key'
-----
You are about to be asked to enter information that will be incorporated
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter '.', the field will be left blank.
-----
Country Name (2 letter code) [AU]:
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, YOUR name) []:
Email Address []:
Be sure that in the "Common Name" section, you enter the FQDN for your server. Unless you want to be asked to enter a password each time you access the SSL certificate, do not enter anything when you are asked for Please enter the following 'extra' attributes
to be sent with your certificate request
A challenge password []:
An optional company name []:
You can now use the server.csr file to obtain your certificate from a certificate authority.

