Skip to content

Commit 37cfff3

Browse files
authored
# changes ssl_keys_https.md (#1448)
* suggested changes * sentence style capitalization on all headings * change "we" and "our" to "you" and "your" where appropriate * replace conjunctions with words * remove passive voice * add <kbd></kbd> tags for the ENTER commands
1 parent 3385276 commit 37cfff3

File tree

1 file changed

+33
-33
lines changed

1 file changed

+33
-33
lines changed

docs/guides/security/ssl_keys_https.md

Lines changed: 33 additions & 33 deletions
Original file line numberDiff line numberDiff line change
@@ -9,88 +9,87 @@ tags:
99
- openssl
1010
---
1111

12-
# Generating SSL Keys
12+
# Generating SSL/TLS keys
1313

1414
## Prerequisites
1515

16-
* A workstation and a server running Rocky Linux (OK, Linux, but really, you want Rocky Linux, right?)
17-
* _OpenSSL_ installed on the machine that you are going to be generating the private key and CSR, as well as on the server where you will eventually be installing your key and certificates
16+
* A workstation and a server running Rocky Linux
17+
* _OpenSSL_ installed on the machine that you are going to be generating the private key and CSR (Certificate Signing Request), and on the server where you will eventually be installing your key and certificates
1818
* Able to run commands comfortably from the command-line
19-
* Helpful: knowledge of SSL and OpenSSL commands
19+
* Helpful: knowledge of SSL/TLS and OpenSSL commands
2020

2121

2222
## Introduction
2323

24-
Nearly every web site today _should_ be running with an SSL (secure socket layer) certificate. This procedure will guide you through generating the private key for your web site and then from this, generating the CSR (certificate signing request) that you will use to purchase your new certificate.
24+
Nearly every web site today _should_ be running with an SSL/TLS (secure socket layer) certificate. This procedure will guide you through generating the private key for your web site and then generating the CSR (certificate signing request) that you will use to purchase your certificate.
2525

26-
## Generate The Private Key
26+
## Generate the private key
2727

28-
For the uninitiated, SSL private keys can have different sizes, measured in bits, which basically determines how hard they are to crack.
28+
For the uninitiated, SSL/TLS private keys can have different sizes, measured in bits, determining how hard they are to crack.
2929

30-
As of 2021, the recommended private key size for a web site is still 2048 bits. You can go higher, but doubling the key size from 2048 bits to 4096 bits is only about 16% more secure, takes more space to store the key, and causes higher CPU loads when the key is processed.
30+
As of 2021, a website's recommended private key size is still 2048 bits. You can go higher, but doubling the key size from 2048 bits to 4096 bits is only about 16% more secure, takes more space to store the key, and causes higher CPU loads when processing the key.
3131

32-
This slows down your web site performance without gaining any significant security. Stick with the 2048 key size for now and always keep tabs on what is currently recommended.
33-
34-
To start with, let's make sure that OpenSSL is installed on both your workstation and server:
32+
This slows down your web site performance without gaining any significant security. Stick with the 2048 key size and always keep tabs on what is currently recommend
33+
To start with, ensure the installation of OpenSSL on your workstation and server:
3534

3635
`dnf install openssl`
3736

3837
If it is not installed, your system will install it and any needed dependencies.
3938

40-
Our example domain is example.com. Keep in mind that you would need to purchase and register your domain ahead of time. You can purchase domains through a number of "Registrars".
39+
The example domain is "example.com." Remember that you will need to purchase and register your domain beforehand. You can purchase domains through several "Registrars".
4140

4241
If you are not running your own DNS (Domain Name System), you can often use the same providers for DNS hosting. DNS translates your named domain, to numbers (IP addresses, either IPv4 or IPv6) that the Internet can understand. These IP addresses will be where the web site is actually hosted.
4342

44-
Let's generate the key using openssl:
43+
Generate the key using `openssl`:
4544

4645
`openssl genrsa -des3 -out example.com.key.pass 2048`
4746

48-
Note that we named the key, with a .pass extension. That's because as soon as we execute this command, it requests that you enter a passphrase. Enter a simple passphrase that you can remember as we are going to be removing this shortly:
47+
Note that you named the key, with a *.pass* extension. That is because when you run this command, it requests that you enter a passphrase. Enter a simplistic passphrase that you can remember as you are going to be removing this shortly:
4948

5049
```
5150
Enter pass phrase for example.com.key.pass:
5251
Verifying - Enter pass phrase for example.com.key.pass:
5352
```
5453

55-
Next, let's remove that passphrase. The reason for this is that if you don't remove it, each time your web server restarts and loads up your key, you will need to enter that passphrase.
54+
Next, remove that passphrase. This is because if you do not remove it, you will need to enter that passphrase each time your website restarts and loads up your key.
5655

57-
You might not even be around to enter it, or worse, might not have a console at the ready to enter it. Remove it now to avoid all of that:
56+
You might not even be around to enter it, or worse, might not have a console available. Remove it now to avoid all of that:
5857

5958
`openssl rsa -in example.com.key.pass -out example.com.key`
6059

6160
This will request that passphrase once again to remove the passphrase from the key:
6261

6362
`Enter pass phrase for example.com.key.pass:`
6463

65-
Now that you have entered the passphrase a third time, it has been removed from the key file and saved as example.com.key
64+
Your password is now removed from the key now that you have entered the passphrase a third time, and saved as *example.com.key*
6665

6766
## Generate the CSR
6867

69-
Next, we need to generate the CSR (certificate signing request) that we will use to purchase our certificate.
68+
Next, you need to generate the CSR (certificate signing request) that you will use to purchase your certificate.
7069

71-
During the generation of the CSR, you will be prompted for several pieces of information. These are the X.509 attributes of the certificate.
70+
Prompting for several pieces of information occurs during the generation of the CSR. These are the X.509 attributes of the certificate.
7271

73-
One of the prompts will be for "Common Name (e.g., YOUR name)". It is important that this field be filled in with the fully qualified domain name of the server to be protected by SSL. If the website to be protected will be https://www.example.com, then enter www.example.com at this prompt:
72+
One of the prompts will be for "Common Name (e.g., YOUR domain name)". This field must have the fully qualified domain name of the server that the SSL/TLS is protecting. If the website to be protected will be https://www.example.com, then enter www.example.com at this prompt:
7473

7574
`openssl req -new -key example.com.key -out example.com.csr`
7675

7776
This opens up a dialog:
7877

79-
`Country Name (2 letter code) [XX]:` enter the two character country code where your site resides, example "US"
78+
`Country Name (2 letter code) [XX]:` enter the two character country code where your site resides, for example "US"
8079

81-
`State or Province Name (full name) []:` enter the full official name of your state or province, example "Nebraska"
80+
`State or Province Name (full name) []:` enter the full official name of your state or province, for example "Nebraska"
8281

83-
`Locality Name (eg, city) [Default City]:` enter the full city name, example "Omaha"
82+
`Locality Name (eg, city) [Default City]:` enter the full city name, for example "Omaha"
8483

85-
`Organization Name (eg, company) [Default Company Ltd]:` If you want, you can enter an organization that this domain is a part of, or just hit 'Enter' to skip.
84+
`Organization Name (eg, company) [Default Company Ltd]:` If you want, you can enter an organization that this domain is a part of, or just hit <kbd>ENTER</kbd> to skip.
8685

87-
`Organizational Unit Name (eg, section) []:` This would describe the division of the organization that your domain falls under. Again, you can just hit 'Enter' to skip.
86+
`Organizational Unit Name (eg, section) []:` This would describe the division of the organization that your domain falls under. Again, you can just hit <kbd>ENTER</kbd> to skip.
8887

89-
`Common Name (eg, your name or your server's hostname) []:` Here, we have to enter our site hostname, example "www.example.com"
88+
`Common Name (eg, your name or your server's hostname) []:` Here, you have to enter your site hostname, example "www.example.com"
9089

91-
`Email Address []:` This field is optional, you can decide to fill it out or just hit 'Enter' to skip.
90+
`Email Address []:` This field is optional, you can decide to fill it out or just hit <kbd>ENTER</kbd> to skip.
9291

93-
Next, you will be asked to enter extra attributes which can be skipped by hitting 'Enter' through both:
92+
Next, the procedure prompts you to enter extra attributes. Skipping these is possible by hitting <kbd>ENTER</kbd>:
9493

9594
```
9695
Please enter the following 'extra' attributes
@@ -99,11 +98,11 @@ A challenge password []:
9998
An optional company name []:
10099
```
101100

102-
Now you should have generated your CSR.
101+
Generating of your CSR is complete.
103102

104-
## Purchasing The Certificate
103+
## Purchasing the certificate
105104

106-
Each certificate vendor will have basically the same procedure. You purchase the SSL and term (1 or 2 years, etc.) and then you submit your CSR. To do this, you will need to use the `more` command, and then copy the contents of your CSR file.
105+
Each certificate vendor will have basically the same procedure. You purchase the SSL/TLS and term (1 or 2 years, etc.) and then you submit your CSR. To do this, you will need to use the `more` command, and then copy the contents of your CSR file.
107106

108107
`more example.com.csr`
109108

@@ -131,8 +130,9 @@ HFOltYOnfvz6tOEP39T/wMo=
131130

132131
You want to copy everything including the "BEGIN CERTIFICATE REQUEST" and "END CERTIFICATE REQUEST" lines. Then paste these into the CSR field on the web site where you are purchasing the certificate.
133132

134-
You may have to perform other verification steps, depending on ownership of the domain, the registrar you are using, etc., before your certificate is issued. When it is issued, it should be issued along with an intermediate certificate from the provider, which you will use in the configuration as well.
133+
Before issuing your certificate, You may have to perform other verification steps depending on domain ownership, the registrar you are using, etc. When issued, it will include an intermediate certificate from the provider, which you will also use in the configuration.
135134

136135
## Conclusion
137136

138-
Generating all of the bits and pieces for the purchase of a web site certificate is not terribly difficult and can be performed by the systems administrator or web site administrator using the above procedure.
137+
Generating all of the bits and pieces for purchasing a web site certificate is not difficult using this procedure.
138+

0 commit comments

Comments
 (0)