Voordat u begint
OpenSSL is een commandline-programma voor het maken en beheren van certificaten dat veel wordt gebruikt door UNIX, Linux en BSD distributies. OpenSSL wordt gebruikt in combinatie met veel serverproducten, waaronder Apache, NginX, Lighttpd en diverse routers en andere hardware. In deze handleiding wordt omschreven hoe met OpenSSL een RSA of ECC Private Key en CSR kunnen worden aangemaakt.
Het is praktisch om alle bestanden en sleutels centraal te bewaren in een map; de gehanteerde map hiervoor kan echter nogal variëren per distributie. Als voorbeeld wordt in deze handleiding /etc/ssl/cert/ aangehouden. Het is van groot belang dat deze map goed wordt beveiligd!
Het is aan te raden om via SSH op de server in te loggen, zodat de CSR eenvoudig kan worden gekopieerd naar een webbrowser om de aanvraag in te dienen.
Aanmaken CSR met openssl-commando
Maak met behulp van SSH verbinding met de server en log in als root. Ga met behulp van het cd-commando naar de map toe waar de certificaten moeten worden bewaard:
cd/etc/ssl/cert/
CSR met RSA Private key
Met het volgende commando kunnen de Private Key en de CSR in SHA-2 formaat worden gegenereerd:
openssl req -utf8 -nodes -sha256 -newkey rsa:2048 -keyout www_example_com.key -out www_example_com.csr
CSR met ECC Private key
Wil je een Elliptic Curve Private Key gebruiken, voer dan de volgende commando’s uit:
openssl ecparam -out server.key -name prime256v1 -genkey
openssl req -new -key server.key -out server.csr
Invullen CSR velden
- Voer de gegevens in die gebruikt worden voor het aanvragen van het SSL Certificaat. Het is erg belangrijk dat deze informatie overeenkomt met de whois gegevens van de domeinnaam en de gegevens van de organisatie zoals die geregistreerd zijn bij de Kamer van Koophandel. Voor sommige velden is er een standaardwaarde, deze is weergegeven tussen brackets.
( [standaard waarde] )
- Country Name (2 letter code) [AU]: NL
- State or Province Name (full name) [Some-State]: Zuid-Holland
- Locality Name (eg, city) []: Gouda
- Organization Name (eg, company) [Internet Widgits Pty Ltd]: Bedrijfsnaam
- Organizational Unit Name (eg, section) []: ICT
- Common Name (eg, YOUR name) []: example.com
- Email Address []:
- An optional company name []:
Bij de Common Name (CN) geef je de naam van de webserver opzoals de client deze zal gaan aanspreken. In de meeste gevallen is dit een volledige domeinnaam zoals bijvoorbeeld: www.hierjouwdomeinnaam.nl
- OpenSSL genereert twee bestanden: de Private Key (met als naam www_example_com.key) en de CSR (met als naam www_example_com.csr
- Beveilig de certificaatbestanden zodat niemand behalve de rootgebruiker erbij kan:
[root@server cert]# chmod 600 *.key *.csr
- Nu kan de CSR met behulp van het cat-commando worden weergegeven:
[root@server cert]# cat www_example_com.csr
- De velden e-mailadres, optionele bedrijfsnaam en uitwisselingswachtwoord kun je leeg laten bij het aanvragen van een SSL certificaat.
Kopieer de volledige inhoud van de aangemaakte CSR, inclusief begin- en eindregels, om een certificaat te bestellen.