Sertifikaadid

Allikas: Kuutõrvaja
Redaktsioon seisuga 7. jaanuar 2015, kell 14:53 kasutajalt Jj (arutelu | kaastöö) (Sertifikaadi sisu vaatamine)

Kõnekeeli öeldakse sertifikaadi kohta mugavalt "sert" ehk mitmuses "serdid".

Juhendi kasutamiseks on vajalik OpenSSL ver 0.9.7 või uuem.

Oletame, et meil on 2 asutust: sertifitseerimiskeskuse rollis "AS AgentuurC" ja teine asutus "OÜ Kasutaja", kes tahab oma veebi- või postiserverile sertifikaati.

CA, ehk sertifitseerimiskeskuse tekitamine

Tekita CA võtmed (2011 seisuga on soovituslik kasutada 2048-bitist RSA võtit)

$ openssl genrsa -des3 -out ca.key 2048

Allkirjasta CA sertifikaat iseendaga

$ openssl req -new -x509 -sha256 -days 1095 -key ca.key -out ca.crt
EE
.
Tallinn
AS AgentuurC
.
AgentuurC Test Root CA
helpdesk@agentuurc.ee

Kasutaja sertifikaadi tegemine

Tekita kasutaja võtmed

$ openssl genrsa -out kasutaja.key 2048

Tekita sertifikaadi allakirjutamise päring ja saada see (.csr fail) CA-le

$ openssl req -new -sha256 -key kasutaja.key -out kasutaja.csr
EE
.
Tartu
OÜ Kasutaja
Müügiosakond
www.oukasutaja.ee
info@oukasutaja.ee

CA uurib päringut ja allkirjastab sertifikaadi

$ openssl req -text -noout -in kasutaja.csr
...
$ openssl x509 -req -sha256 -days 1095 -CA ca.crt -CAkey ca.key -CAcreateserial \
-out kasutaja.crt -in kasutaja.csr

Kui masinal on mitu nime

Tekita sertifikaadi laiendusfail cext.txt ja saada ta koos .csr failiga CA-le

$ cat cext.txt
subjectAltName = DNS:www.oukasutaja.ee,DNS:mail.oukasutaja.ee
basicConstraints = critical,CA:FALSE

CA allkirjastab sertifikaadi ja lisab laiendused

$ openssl x509 -req -sha256 -days 1095 -CA ca.crt -CAkey ca.key -CAcreateserial \
-out kasutaja.crt -in kasutaja.csr -extfile cext.txt

Sertifikaadi sisu vaatamine

$ openssl x509 -noout -text -in kasutaja.crt

Iseallkirjastatud sertifikaat

Lihtsamal juhul võib pruukida iseallkirjastatud sertifikaati (i.k. self-signed certificate)

$ openssl req -x509 -sha256 -nodes -days 3650 -newkey rsa:2048 -keyout kasutaja.key -out kasutaja.crt

Kui skriptimisel on vaja vältida konsoolilt pärimist, saab parameetrid kõik käsureal anda

$ openssl req -x509 -sha256 -nodes -days 3650 -newkey rsa:2048 -keyout kasutaja.key -out kasutaja.crt -subj "/C=EE/ST=/L=Tartu/O=Kasutaja/CN=www.oukasutaja.ee" -batch