Λειτουργικά συστήματα Linux, *BSD, Mac OS X

Χρήση της βιβλιοθήκης OpenSSL

Δημιουργία νέου ιδιωτικού κλειδιού

$ OLD_UMASK=`umask`

$ umask 077

Η εντολή umask 077 εξασφαλίζει ότι το ιδιωτικό κλειδί θα αποθηκευθεί σε αρχείου που θα είναι αναγνώσιμο μόνο από το χρήστη που το δημιούργησε.

$ openssl genrsa 2048 > key.pem

Η εντολή αυτή δημιουργεί ένα ιδιωτικό κλειδί μεγέθους 2048 bits και το αποθηκεύει στο αρχείο με όνομα key.pem.

Τέλος, επαναφέρουμε την παλιά μάσκα δημιουργίας αρχείων:

$ umask $OLD_UMASK

Όλη η ασφάλεια του πιστοποιητικού εξαρτάται από την ασφαλή διαφύλαξη του ιδιωτικού κλειδιού. Ποτέ μη δίνετε πρόσβαση σε αυτό σε τρίτους. Όποιος έχει πρόσβαση στο ιδιωτικό κλειδί μπορεί να προσποιηθεί την ταυτότητα του εξυπηρετητή για τον οποίο εκδίδεται το πιστοποιητικό.

Αν το ιδιωτικό κλειδί χαθεί ή σβηστεί, τότε το πιστοποιητικό είναι άχρηστο. Γι' αυτό προτείνεται η τήρηση ενός αντιγράφου ασφαλείας του ιδωτικού κλειδιού σε ασφαλή τοποθεσία.

Δημιουργία νέου Αιτήματος Υπογραφής Πιστοποιητικού

Για να προχωρήσετε στην έκδοση νέου πιστοποιητικού, είναι απαραίτητη η δημιουργία ενός νέου Αιτήματος Υπογραφής Πιστοποιητικού (Certificate Signing Request - CSR). Το Αίτημα περιλαμβάνει τα στοιχεία του Υποκειμένου του πιστοποιητικού (όνομα, χώρα, οργανισμός κλπ.), καθώς και το δημόσιο κλειδί που αντιστοιχεί στο ιδιωτικό. Στη συνέχεια η Αρχή Πιστοποιήσης θα υπογράψει τα στοιχεία αυτά, προσδίδοντάς τους κύρος.

Το Αίτημα δημιουργείται χρησιμοποιώντας την εντολή:

$ openssl req -new -key key.pem -nodes

Θα ερωτηθείτε σχετικά με τα στοιχεία που θέλετε να περιλαμβάνει το πεδίο. Από αυτά υποχρεωτικό είναι μόνο το πεδίο «Common Name» (<1> - κοινό όνομα), το οποιό πρέπει να συμπίπτει με το πλήρες όνομα του εξυπηρετητή (Fully Qualified Domain Name - FQDN) για τον οποίο ζητάτε τον εξοπλισμό. Αν ο εξυπηρετητής έχει περισσότερα του ενός ονόματα (π.χ. www.example.com και mail.example.com), τότε αναφέρετε μόνο το κύριο. Στη συνέχεια θα έχετε τη δυνατότητα να προσθέσετε τα επιπρόσθετα ονόματα του εξυπηρετητή.

Αφού απαντήσετε στις ερωτήσεις, θα τυπωθεί το Αίτημα στην οθόνη σας:

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]:GR

State or Province Name (full name) [Some-State]:Lakonia

Locality Name (eg, city) []:Sparti

Organization Name (eg, company) [Internet Widgits Pty Ltd]:Some

organization

Organizational Unit Name (eg, section) []:Some unit

Common Name (eg, YOUR name) []:www.example.com <1>

Email Address []:.


Please enter the following 'extra' attributes

to be sent with your certificate request

A challenge password []:

An optional company name []:

-----BEGIN CERTIFICATE REQUEST-----

MIICvzCCAacCAQAwejELMAkGA1UEBhMCR1IxEDAOBgNVBAgTB0xha29uaWExDzAN

BgNVBAcTBlNwYXJ0aTEaMBgGA1UEChMRU29tZSBvcmdhbml6YXRpb24xEjAQBgNV

BAsTCVNvbWUgdW5pdDEYMBYGA1UEAxMPd3d3LmV4YW1wbGUuY29tMIIBIjANBgkq

hkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAtAR3RZavJpfC/hAdzb+/O2fgdSEPlVJw

nAS6IYnEKLGp7qmaPGQZK06tI6FAIAepU8i9bXfcnX4k9JvIzsEBAm454SyTVcGo

jxQ4buadLQyLSNiK9nEMbMexkwYZkYkOHGb7OmBcw1FT3Jhr1sqCRMPhUjE4UttS

dhc5bNo2IZK34c9GipnOQ6dz3IVa/21JGgPbm6b0wuv4i9R8YQs6d0ElUlIya2VS

6Kd3gB+3U87URqneYUdL6gYqzVGV/Fc1R+HsoBl8P3VWybKDHaLXXxnIC84av4nM

c+20C8gUuUAwXdd2/uhNnU4lVTc8HwjB9LxL0RJvGSMno/H8vy9VUwIDAQABoAAw

DQYJKoZIhvcNAQEFBQADggEBAEyke2DL8Pay015JLeC6elzC8uBuPtO5gYHdlmIQ

lE2MnFzjWWvWF8Y5eCUtJv+ccmL3Yj6YvtjoEN5VyWLUdVABrrnv+F+yXRTRPD+3

sm9Rd/XWSrv+Gu5KPZ2RtuIigTwljMZ7MLGkH8HvZzhNnb0rKzILVVybbVns5kTp

sjqYBdS0CSAzsrMyYItUjLg/alhnFA/c3rG9B+nrQrbfr8+K+JgV+I2z3cTuXLiw

dSdgj9+KosvH8K+gwtAcB1FQ3lamYr1hcGWzOg9seF122JfpWxmXqW8D5lPntrDs

TXwM9KO+aSDtF4ei4Y52wniB9spK5K+3bbWr3MBL6WqZ1KE=

-----END CERTIFICATE REQUEST-----

Το κομμάτι

-----BEGIN CERTIFICATE REQUEST-----

MIICvzCCAacCAQAwejELMAkGA1UEBhMCR1IxEDAOBgNVBAgTB0xha29uaWExDzAN

BgNVBAcTBlNwYXJ0aTEaMBgGA1UEChMRU29tZSBvcmdhbml6YXRpb24xEjAQBgNV

BAsTCVNvbWUgdW5pdDEYMBYGA1UEAxMPd3d3LmV4YW1wbGUuY29tMIIBIjANBgkq

hkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAtAR3RZavJpfC/hAdzb+/O2fgdSEPlVJw

nAS6IYnEKLGp7qmaPGQZK06tI6FAIAepU8i9bXfcnX4k9JvIzsEBAm454SyTVcGo

jxQ4buadLQyLSNiK9nEMbMexkwYZkYkOHGb7OmBcw1FT3Jhr1sqCRMPhUjE4UttS

dhc5bNo2IZK34c9GipnOQ6dz3IVa/21JGgPbm6b0wuv4i9R8YQs6d0ElUlIya2VS

6Kd3gB+3U87URqneYUdL6gYqzVGV/Fc1R+HsoBl8P3VWybKDHaLXXxnIC84av4nM

c+20C8gUuUAwXdd2/uhNnU4lVTc8HwjB9LxL0RJvGSMno/H8vy9VUwIDAQABoAAw

DQYJKoZIhvcNAQEFBQADggEBAEyke2DL8Pay015JLeC6elzC8uBuPtO5gYHdlmIQ

lE2MnFzjWWvWF8Y5eCUtJv+ccmL3Yj6YvtjoEN5VyWLUdVABrrnv+F+yXRTRPD+3

sm9Rd/XWSrv+Gu5KPZ2RtuIigTwljMZ7MLGkH8HvZzhNnb0rKzILVVybbVns5kTp

sjqYBdS0CSAzsrMyYItUjLg/alhnFA/c3rG9B+nrQrbfr8+K+JgV+I2z3cTuXLiw

dSdgj9+KosvH8K+gwtAcB1FQ3lamYr1hcGWzOg9seF122JfpWxmXqW8D5lPntrDs

TXwM9KO+aSDtF4ei4Y52wniB9spK5K+3bbWr3MBL6WqZ1KE=

-----END CERTIFICATE REQUEST-----

θα πρέπει να το αντιγράψετε και να το επικολλήσετε στο πεδίο «Certificate Request» της Εφαρμογής.

Χρήση της βιβλιοθήκης GnuTLS

Δημιουργία νέου ιδιωτικού κλειδιού

$ certtool -p --outfile key.pem

Generating a 2048 bit RSA private key...

Το ιδιωτικό κλειδί πρέπει να προστατεύεται με κατάλληλα δικαιώματα πρόσβασης (permissions). Οποιοσδήποτε αποκτήσει πρόσβαση στο ιδιωτικό κλειδί μπορεί να προσποιηθεί την ταυτότητα του εξυπηρετητή και να υποκλέψει τα δεδομένα που διακινούνται μέσα από το κανάλι ασφαλούς επικοινωνίας.

Αν το ιδιωτικό κλειδί χαθεί ή σβηστεί, τότε το πιστοποιητικό είναι άχρηστο. Γι' αυτό προτείνεται η τήρηση ενός αντιγράφου ασφαλείας του ιδωτικού κλειδιού σε ασφαλή τοποθεσία.

Δημιουργία νέου Αιτήματος Υπογραφής Πιστοποιητικού

$ certtool -q --load-privkey key.pem

Θα ερωτηθείτε σχετικά με τα στοιχεία που θέλετε να περιλαμβάνει το πεδίο. Από αυτά υποχρεωτικό είναι μόνο το πεδίο «Common Name» (κοινό όνομα), το οποιό πρέπει να συμπίπτει με το πλήρες όνομα του εξυπηρετητή (Fully Qualified Domain Name - FQDN) για τον οποίο ζητάτε τον εξοπλισμό. Αν ο εξυπηρετητής έχει περισσότερα του ενός ονόματα (π.χ. www.example.com και mail.example.com), τότε αναφέρετε μόνο το κύριο. Στη συνέχεια θα έχετε τη δυνατότητα να προσθέσετε τα επιπρόσθετα ονόματα του εξυπηρετητή.

Τα υπόλοιπα στοιχεία είναι προαιρετικά. Το όνομα χώρας, το όνομα του οργανισμού και η τοποθεσία δε λαμβάνονται υπ' όψιν και συμπληρώνονται αυτόματα με τα αντίστοιχα στοιχεία του φορέα στον οποίο υποβάλλεται το αίτημα.

Τέλος, μην ορίσετε συνθηματικό για το αίτημα.

Generating a PKCS #10 certificate request...

Country name (2 chars): GR

Organization name: Sample Organization

Organizational unit name: Some unit name

Locality name: Sparti

State or province name: Lakonia

Common name: www.example.com

UID:

Enter a challenge password: -----BEGIN NEW CERTIFICATE REQUEST-----

MIIC0zCCAb0CAQAwgYExCzAJBgNVBAYTAkdSMRwwGgYDVQQKExNTYW1wbGUgT3Jn

YW5pemF0aW9uMRcwFQYDVQQLEw5Tb21lIHVuaXQgbmFtZTEQMA4GA1UEBxMHTGFr

b25pYTEPMA0GA1UECBMGU3BhcnRpMRgwFgYDVQQDEw93d3cuZXhhbXBsZS5jb20w

ggEfMAsGCSqGSIb3DQEBAQOCAQ4AMIIBCQKCAQDX3rBMNN9CfjcEPBWnX6zp4fyq

3WFJYVKeKmAnYTbAKR4WsnLJ7j428tRZ72+U0IjXizeo6ZwUZW2BRhSwNL+AdH/u

olLyCSPUkXDPtO7SN3mLlTytanyQyAPIYxqRHR8IsDPzAysEylqQH8DHqw9/bwGM

RyYWTFVMfLjxMmqbJutm3KxpOtvfmCP30srYTdJw6bC8viOyg8Ai93I+nT9Ozhn0

/+xzKIdGkMhulzcP/FaltEoZsyPjijyz8tOVPS6f7H3B5OPFYid9kWTM6iUA2UYc

ofg+33b25SkM0tnfF1mjJzyO6giq+qoIVfZjN+j+zYLZdA31M+M1GuOQlLuNAgMB

AAGgETAPBgkqhkiG9w0BCQcxAhMAMAsGCSqGSIb3DQEBBQOCAQEAIj1sQNeTDeTa

ZMvITxho2IljkRbiYSMRBlvGyOWioqbHe9xWbqTCO+eh2xh5SCqfQdFAuM3oXTJ0

hvv5A0GCwysJxMs//l8GwIusiR9CaDrxkrziacAy2G2pY5KfItOFPF1/SK2jJlEC

fKWyqsZ9l5zFgNCxjo5Dz9pxBFBgZ8fp2zjJCaW3f1a8IVAxf6YaNlLBS8YlvLq0

YIhAtIZV98rQ2FRzNPLzdV0ZUukkpGfholEeLyRf81iPIL3bWF9lMRF3JopJUV3S

Q/zhkKvtzX3KQgsIea43PGkcVXCj1inxi7ODa8W4LPhGN15vn0n5GDqItLlGPsNR

awSlJVVjkw==

-----END NEW CERTIFICATE REQUEST-----

Στη συνέχεια, το κείμενο που βρίσκεται ανάμεσα στις γραμμές BEGIN CERTIFICATE REQUEST και END CERTIFICATE REQUEST, συμπεριλαμβανομένων των γραμμών αυτών, δηλαδή το:

-----BEGIN CERTIFICATE REQUEST-----

MIIC0zCCAb0CAQAwgYExCzAJBgNVBAYTAkdSMRwwGgYDVQQKExNTYW1wbGUgT3Jn

YW5pemF0aW9uMRcwFQYDVQQLEw5Tb21lIHVuaXQgbmFtZTEQMA4GA1UEBxMHTGFr

b25pYTEPMA0GA1UECBMGU3BhcnRpMRgwFgYDVQQDEw93d3cuZXhhbXBsZS5jb20w

ggEfMAsGCSqGSIb3DQEBAQOCAQ4AMIIBCQKCAQDX3rBMNN9CfjcEPBWnX6zp4fyq

3WFJYVKeKmAnYTbAKR4WsnLJ7j428tRZ72+U0IjXizeo6ZwUZW2BRhSwNL+AdH/u

olLyCSPUkXDPtO7SN3mLlTytanyQyAPIYxqRHR8IsDPzAysEylqQH8DHqw9/bwGM

RyYWTFVMfLjxMmqbJutm3KxpOtvfmCP30srYTdJw6bC8viOyg8Ai93I+nT9Ozhn0

/+xzKIdGkMhulzcP/FaltEoZsyPjijyz8tOVPS6f7H3B5OPFYid9kWTM6iUA2UYc

ofg+33b25SkM0tnfF1mjJzyO6giq+qoIVfZjN+j+zYLZdA31M+M1GuOQlLuNAgMB

AAGgETAPBgkqhkiG9w0BCQcxAhMAMAsGCSqGSIb3DQEBBQOCAQEAIj1sQNeTDeTa

ZMvITxho2IljkRbiYSMRBlvGyOWioqbHe9xWbqTCO+eh2xh5SCqfQdFAuM3oXTJ0

hvv5A0GCwysJxMs//l8GwIusiR9CaDrxkrziacAy2G2pY5KfItOFPF1/SK2jJlEC

fKWyqsZ9l5zFgNCxjo5Dz9pxBFBgZ8fp2zjJCaW3f1a8IVAxf6YaNlLBS8YlvLq0

YIhAtIZV98rQ2FRzNPLzdV0ZUukkpGfholEeLyRf81iPIL3bWF9lMRF3JopJUV3S

Q/zhkKvtzX3KQgsIea43PGkcVXCj1inxi7ODa8W4LPhGN15vn0n5GDqItLlGPsNR

awSlJVVjkw==

-----END CERTIFICATE REQUEST-----

πρέπει να αντιγραφεί και να επικολληθεί στην εφαρμογή έκδοσης ψηφιακών πιστοποιητικών του ΕΔΕΤ, στο πεδίο «CSR (PEM format)».

Last modified: Friday, 15 April 2016, 4:32 PM