This shows you the differences between two versions of the page.
| Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
| how_to:create_an_ssl_certificate [2014/01/23 15:11] – paul | how_to:create_an_ssl_certificate [2026/03/23 10:18] (current) – [Using OpenSSL] paul | ||
|---|---|---|---|
| Line 8: | Line 8: | ||
| VPOP3 requires certificates & private keys to be in .PEM (Privacy Enhanced Mail) format which is a common format used by most people other than Microsoft. There are ways to convert .P12 .PFX and .CER files to PEM format, but those are outside the scope of this article. | VPOP3 requires certificates & private keys to be in .PEM (Privacy Enhanced Mail) format which is a common format used by most people other than Microsoft. There are ways to convert .P12 .PFX and .CER files to PEM format, but those are outside the scope of this article. | ||
| - | There are many ways to generate a CSR, so if you have a favourite program to do that, which can produce the files in .PEM format, feel free to use that. Otherwise, you can use the [[http:// | + | There are many ways to generate a CSR, so if you have a favourite program to do that, which can produce the files in .PEM format, feel free to use that. Otherwise, you can use OpenSSL - see below. |
| - | Once you have generated the CSR you need to send it to a Certificate Authority. This is typically someone like GeoTrust, | + | Once you have generated the CSR you need to send it to a Certificate Authority. This is typically someone like GeoTrust, |
| - | You can also set up as your own CA. The GenCert program above will let you do this, other programs are available to do this. This is free, but when you access a service using a certificate | + | You can also generate self-signed certificates. The Windows Server Certificate Server can do this for you, or you can use OpenSSL - see below. This is free, but when you access a service using a self-signed |
| Note that the ' | Note that the ' | ||
| Line 36: | Line 36: | ||
| If the issuing certificate authority requires an intermediate certificate you will have to get that certificate' | If the issuing certificate authority requires an intermediate certificate you will have to get that certificate' | ||
| + | =====Using OpenSSL===== | ||
| + | OpenSSL is free software to handle encryption, certificates, | ||
| + | |||
| + | For Windows, the best place to download it from is https:// | ||
| + | Download the ' | ||
| + | |||
| + | If you are using Linux, then OpenSSL is usually installed as standard | ||
| + | |||
| + | OpenSSL has to be used from a command prompt. The following sections give examples of how to perform some common tasks using OpenSSL | ||
| + | |||
| + | ====Generating a CSR using OpenSSL==== | ||
| + | |||
| + | See the 'Using OpenSSL' | ||
| + | |||
| + | Then run: | ||
| + | openssl req -newkey rsa:2048 -nodes -keyout key.pem -out csr.pem | ||
| + | |||
| + | - This will first display some ' | ||
| + | - Then it will prompt for information about your organisation. Most of this may just be encoded in the certificate for someone accessing your server to be able to see. The **Common Name** is important though, as that has to match the DNS host name of the server, as the software accessing the server will verify that this is the same as the server name that it has connected to | ||
| + | - Country Name - use a two letter country code, eg GB (for United Kingdom), US (for USA), FR (for France) etc (See [[https:// | ||
| + | - State or Province Name - eg " | ||
| + | - Locality Name - eg " | ||
| + | - Organisation Name - eg ACME Inc. | ||
| + | - Organisational Unit Name - IT or Software | ||
| + | - Common Name - this is the DNS host name of your VPOP3 computer, eg mail.example.com | ||
| + | - Email Address - a contact email address (or blank) | ||
| + | - Then it will ask for two extra bits of information which can be left blank: challenge password, and optional company name | ||
| + | |||
| + | This will generate two files: | ||
| + | * key.pem. This is the private key. Keep this file very safe. If that gets lost, then you will need to regenerate the CSR, and send the new one to the Certificate Authority. Do not give key.pem to anyone you do not trust, as it will allow them to spoof your server certificate. Note that the Certificate Authority do NOT need access to the private key. | ||
| + | * csr.pem. This is the certificate request. You will need to send this to the Certificate Authority for them to generate the certificate for you. It is a text file, so you will be able to open it in something like Notepad and copy/paste the contents if necessary | ||
| + | |||
| + | ====Generating a self-signed certificate using OpenSSL==== | ||
| + | |||
| + | See the 'Using OpenSSL' | ||
| + | |||
| + | Then, run: | ||
| + | |||
| + | openssl req -x509 -newkey rsa:4096 -nodes -keyout key.pem -out cert.pem -sha256 -days 365 | ||
| + | |||
| + | This will generate a private key and self-signed certificate with an expiry of 365 days | ||
| + | |||
| + | You will be prompted for organisation and certificate information as when generating a CSR as above. | ||
| + | |||
| + | It will produce two files key.pem and cert.pem which you can copy/paste into VPOP3' | ||