server certificate ¤ openssl ¤ csr ¤

Har du något? Posta då här.
Post Reply
tysken
Posts: 337
Joined: 13 August 2003, 06:46

server certificate ¤ openssl ¤ csr ¤

Post by tysken » 18 September 2003, 12:46

här beskriver jag hur du kan lätt skaffa ditt eget "SSL certificate"

1) se till att paketet "openssl" är installerat på ditt system. både på det systemet du tänker installera certifikatet och på den datorn du tänker skaffa nyckeln och de andra filerna (det måste inte nödväntigtvis vara samma systemet alltså!)

2) skaffa din egen nyckel genom att köra

Code: Select all

> openssl genrsa -des3 -out server.key 1024


du kommer att se något som kanske liknar

Generating RSA private key, 1024 bit long modulus
.......................++++++
.....................................++++++
e is 65537 (0x10001)
Enter pass phrase for server.key:
Verifying - Enter pass phrase for server.key:


det kan ta lite tid, ju mer program du kör just i det ögonblicket, desto mer "tillfälliga bits" kan hittas och desto snabbare går det. spara den filen, gör en backup i alla fall. nyckeln är en RSAnyckel och dessutom är den "triple DES-encrypted" och "PEM formatted". coolt va. och glöm inte lösenordet!! det ska vara så krångligt som möjligt dessutom.

3) skapa en s.k. CSR ("CertSigningRequest") genom att köra

Code: Select all

> openssl req -new -key server.key -out server.csr


du frågas nu efter lösenordet. och andra saker:

Enter pass phrase for server.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]:SE
State or Province Name (full name) [Some-State]:Jemtland
Locality Name (eg, city) []:Ostersund
Organization Name (eg, company) [Internet Widgits Pty Ltd]:tysken GmbH & AB
Organizational Unit Name (eg, section) []:Styrelse
Common Name (eg, YOUR name) []:www.brunflo.info
Email Address []:tysken@server.info

Please enter the following 'extra' attributes
to be sent with your certificate request
A challenge password []:mittHemligaLoesenord_nummer2
An optional company name []:


nu har du både nyckeln och CSR:n och nu kan du ansöka om att någon signerar den åt dig. till exempel "Thawte", "Verisign" -- eller du själv, det går ju, fast då blir det nog inte så "trovärdigt", eller hur.

vill du ha en dekrypterad version av nyckeln så kör du

Code: Select all

> openssl rsa -in server.key -out server.key.unsecure


du kommer att se det här:

Enter pass phrase for server.key:
writing RSA key


och nu borde du ha följande filer i den katalogen du körde kommandona:

server.key => den kryperade nyckeln
server.csr => ansökan ("CSR") du ska skicka till den som ska signera nyckeln
server.key.unsecure => den okrypterade nyckeln


kolla dina uppgifter i CSR:n genom att köra

Code: Select all

> openssl req -noout -text -in server.csr


du kommer att se det här:

Certificate Request:
Data:
Version: 0 (0x0)
Subject: C=SE, ST=Jemtland, L=Ostersund, O=tysken GmbH & AB, OU=Styrelse, CN=www.brunflo.info/emailAddress=tysken@server.info
Subject Public Key Info:
Public Key Algorithm: rsaEncryption
RSA Public Key: (1024 bit)
Modulus (1024 bit):
00:c5:1c:85:59:13:f2:fc:b6:7d:e0:11:f4:bd:84:
f7:6e:5b:4b:1d:2d:e9:ad:29:15:4e:db:57:64:b4:
98:26:ed:52:e7:55:c6:51:34:d7:6a:94:f8:2e:12:
91:19:27:69:24:f1:2a:74:6c:5a:3f:59:52:6d:04:
c9:20:7f:bd:a5:0f:6b:7b:c4:fa:38:45:40:8f:66:
64:00:3c:64:52:94:36:ff:fc:d0:e8:e9:14:3d:cd:
cb:85:f0:4f:cd:f1:82:ab:9a:da:db:5d:04:6a:a0:
45:72:28:85:1f:be:55:30:7e:68:74:0e:06:61:9e:
09:6c:e7:39:1f:27:c7:e4:d9
Exponent: 65537 (0x10001)
Attributes:
challengePassword :mittHemligaLoesenord_nummer2
Signature Algorithm: md5WithRSAEncryption
41:4f:02:7d:83:48:65:94:07:cd:88:e1:4c:7b:8d:c2:7a:1f:
af:23:f0:4e:0f:10:81:55:68:a3:2b:6c:3e:18:49:74:d3:3d:
50:3a:85:18:6e:b3:85:10:8a:77:3e:a2:1b:44:39:4e:78:05:
14:1e:40:76:81:20:89:1f:d8:fd:6c:33:fb:2a:51:f0:94:9b:
08:53:bf:ec:53:fd:9a:9c:49:75:e1:06:ac:ce:51:a3:04:8d:
e1:f4:67:59:93:2d:5f:ec:09:ba:9c:08:23:1e:b1:f4:a2:7f:
15:86:41:1f:f7:cc:8b:60:5e:53:cc:0d:52:ce:4d:48:8f:c1:
a6:fa



fortsättning följer:

a) integrationen av .cert och .key in httpd.conf
SSLCertificateFile /path/to/this/server.crt
SSLCertificateKeyFile /path/to/this/server.key

b) signera själv, skapa din egen "Certificate Authority (CA)"

.. /tysken

Post Reply