Skapa enkla X.509-certifikat med OpenSSL

Om du behöver ett självsignerat X.509-certifikat till någon tillämpning kan du enkelt skapa ett med hjälp av OpenSSL som finns i både Linux och Mac OS.

Många guider beskriver hur man först sätter upp en egen CA som sedan ska signera certifikat. Om man inte behöver CA-funktionen kan man skapa en eller flera X.509-certifikat med tillhörande nycklar med två simpla kommandon.

Först skapar vi en privat nyckel. Denna måste man skydda väl.

Heja-Anders:~ anders$ openssl genrsa -out key.pem 2048
Generating RSA private key, 2048 bit long modulus
........+++
...................................................+++
e is 65537 (0x10001)

Därefter gör vi själva signeringen. Parametern -x509 gör att resultatet blir ett certifikat istället för en certifikat-förfrågan. Man kan mer eller mindre välja vilka fält man vill fylla i, men ibland finns det vissa krav på certifikatet att det ska innehålla viss information i vissa fält. Vanligast är att fältet Common Name spelar roll.

Heja-Anders:~ anders$ openssl req -new -key key.pem -out cert.pem -x509 -days 3650
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]:SE
State or Province Name (full name) [Some-State]:Stockholm
Locality Name (eg, city) []:Stockholm
Organization Name (eg, company) [Internet Widgits Pty Ltd]:Cloudnet
Organizational Unit Name (eg, section) []:
Common Name (eg, YOUR name) []:testman
Email Address []:[email protected]

Filen cert.pem blir ett självsignerat certifikat i PEM-format.