You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Your organization may use a private Certificate Authority (CA) to generate SSL Certificates or they may create self-signed SSL certificates to use on internal networks or during software development and testing.
36
+
You can use use a private certificate authority (CA) to generate SSL certificates or they may create self-signed SSL certificates to use on internal networks or during software development and testing.
37
37
38
-
The `trusted_certs` directory on Chef Workstation and in Chef Infra Client works as a trusted certificate store for all communication in the Chef Infra system. Chef Infra trusts all SSL certificates stored in this directory--including certificates that aren't issued by a trusted Certificate Authority (CA).
38
+
The `trusted_certs` directory on Chef Workstation and in Chef Infra Client works as a trusted certificate store for all communication in the Chef Infra system. Chef Infra trusts all SSL certificates stored in this directory---including certificates that aren't issued by a trusted certificate authority (CA).
39
39
40
40
Place private and self-signed certificates in the `trusted_certs` directory to use them within Chef Infra Client and Workstation tools.
41
41
42
-
Use the [chef_client_trusted_certificate]({{< relref "/resources/chef_client_trusted_certificate" >}}) Chef Infra Client resource to manage these certificates continuously.
42
+
Use the [`chef_client_trusted_certificate`]({{< relref "/resources/chef_client_trusted_certificate" >}}) Chef Infra Client resource to manage these certificates continuously.
43
43
44
-
#### trusted_certs Locations
44
+
#### trusted_certs directory locations
45
45
46
46
##### Chef Workstation
47
47
@@ -50,7 +50,7 @@ When you install Chef Workstation, it creates a `trusted_certs` directory locate
50
50
- Windows: `C:\.chef\trusted_certs`
51
51
- All other systems: `~/.chef/trusted_certs`
52
52
53
-
##### Chef Infra Client Nodes
53
+
##### Chef Infra Client nodes
54
54
55
55
When you bootstrap a node, the Chef Infra Client copies the SSL certificates for the Chef Infra Server onto the node. The `trusted_certs` directory on the node is located at:
56
56
@@ -68,70 +68,65 @@ A value for `SSL_CERT_FILE` isn't set by default. Unless updated, the locations
68
68
69
69
To use a custom CA bundle, update the environment variable to specify the path to the custom CA bundle. The first step to troubleshoot a failing SSL certificate is to verify the location of the `SSL_CERT_FILE`.
70
70
71
-
### client.rb Settings
72
-
73
-
Use following client.rb settings to manage SSL certificate preferences:
74
-
75
-
<table>
76
-
<colgroup>
77
-
<colstyle="width: 40%" />
78
-
<colstyle="width: 60%" />
79
-
</colgroup>
80
-
<thead>
81
-
<trclass="header">
82
-
<th>Setting</th>
83
-
<th>Description</th>
84
-
</tr>
85
-
</thead>
86
-
<tbody>
87
-
<tr>
88
-
<td><code>local_key_generation</code></td>
89
-
<td>Whether the Chef Infra Server or Chef Infra Client generates the private/public key pair. When <code>true</code>, Chef Infra Client generates the key pair, and then sends the public key to the Chef Infra Server. Default value: <code>true</code>.</td>
90
-
</tr>
91
-
<tr>
92
-
<td><code>ssl_ca_file</code></td>
93
-
<td>The file for the OpenSSL key. Chef Infra Client generates this setting automatically.</td>
94
-
</tr>
95
-
<tr>
96
-
<td><code>ssl_ca_path</code></td>
97
-
<td>The location of the OpenSSL key file. Chef Infra Client generates this setting automatically.</td>
98
-
</tr>
99
-
<tr>
100
-
<td><code>ssl_client_cert</code></td>
101
-
<td>The OpenSSL X.509 certificate for mutual certificate validation. Required for mutual certificate validation on the Chef Infra Server. Default value: <code>nil</code>.</td>
102
-
</tr>
103
-
<tr>
104
-
<td><code>ssl_client_key</code></td>
105
-
<td>The OpenSSL X.509 key used for mutual certificate validation. Required for mutual certificate validation on the Chef Infra Server. Default value: <code>nil</code>.</td>
106
-
</tr>
107
-
<tr>
108
-
<td><p><code>ssl_verify_mode</code></p></td>
109
-
<td><p>Set the verification mode for HTTPS requests. The recommended setting is<code>:verify_peer</code>. Depending on your OpenSSL configuration, you may need to set the <code>ssl_ca_path</code>. Default value: <code>:verify_peer</code>.</p>
110
-
<ul>
111
-
<li>Use <code>:verify_none</code> to run without validating any SSL certificates.</li>
112
-
<li>Use <code>:verify_peer</code> to validate all SSL certificates, including the Chef Infra Server connections, S3 connections, and any HTTPS <strong>remote_file</strong> resource URLs used in a Chef Infra Client run.</li>
113
-
</ul>
114
-
</td>
115
-
</tr>
116
-
<tr>
117
-
<td><code>verify_api_cert</code></td>
118
-
<td>Verify the SSL certificate on the Chef Infra Server. Set to <code>true</code>, Chef Infra Client always verifies the SSL certificate. Set to <code>false</code>, Chef Infra Client uses <code>ssl_verify_mode</code> to determine if the SSL certificate requires verification. Default value: <code>false</code>.</td>
119
-
</tr>
120
-
</tbody>
121
-
</table>
122
-
123
-
### Knife Subcommands
71
+
### client.rb file settings
72
+
73
+
<!-- markdownlint-disable MD006 MD007 -->
74
+
75
+
Use following [`client.rb` file]({{< relref "config_rb_client" >}}) settings to manage SSL certificate preferences:
76
+
77
+
`local_key_generation`
78
+
: Whether the Chef Infra Server or Chef Infra Client generates the private/public key pair.
79
+
When `true`, Chef Infra Client generates the key pair and then sends the public key to the Chef Infra Server.
80
+
81
+
Default value: `true`.
82
+
83
+
`ssl_ca_file`
84
+
: The file for the OpenSSL key. Chef Infra Client generates this setting automatically.
85
+
86
+
`ssl_ca_path`
87
+
: The location of the OpenSSL key file. Chef Infra Client generates this setting automatically.
88
+
89
+
`ssl_client_cert`
90
+
: The OpenSSL X.509 certificate for mutual certificate validation. Required for mutual certificate validation on the Chef Infra Server.
91
+
92
+
Default value: `nil`.
93
+
94
+
`ssl_client_key`
95
+
: The OpenSSL X.509 key used for mutual certificate validation. Required for mutual certificate validation on the Chef Infra Server.
96
+
97
+
Default value: `nil`.
98
+
99
+
`ssl_verify_mode`
100
+
: Set the verification mode for HTTPS requests. The recommended setting is `:verify_peer`. Depending on your OpenSSL configuration, you may need to set the `ssl_ca_path`.
101
+
102
+
Allowed values:
103
+
104
+
- Use `:verify_none` to run without validating any SSL certificates.
105
+
- Use `:verify_peer` to validate all SSL certificates, including the Chef Infra Server connections, S3 connections, and any HTTPS `remote_file` resource URLs used in a Chef Infra Client run.
106
+
107
+
Default value: `:verify_peer`.
108
+
109
+
`verify_api_cert`
110
+
: Verify the SSL certificate on the Chef Infra Server.
111
+
112
+
If `true`, Chef Infra Client always verifies the SSL certificate. If `false`, Chef Infra Client uses `ssl_verify_mode` to determine if the SSL certificate requires verification.
113
+
114
+
Default value: `false`.
115
+
116
+
<!-- markdownlint-enable MD006 MD007 -->
117
+
118
+
### knife CLI subcommands
124
119
125
120
The Chef Infra Client includes two knife commands for managing SSL certificates:
126
121
127
-
- Use [knife ssl check](/workstation/knife_ssl_check/) to troubleshoot SSL certificate issues
122
+
- Use [knife ssl check](/workstation/knife_ssl_check/) to troubleshoot SSL certificate issues.
128
123
- Use [knife ssl fetch](/workstation/knife_ssl_fetch/) to pull down a certificate from the Chef Infra Server to the `/.chef/trusted_certs` directory on the workstation.
129
124
130
-
After the workstation has the correct SSL certificate, bootstrap operations from that workstation will use the certificate in the `/.chef/trusted_certs` directory during the bootstrap operation.
125
+
After the workstation has the correct SSL certificate, bootstrap operations from that workstation uses the certificate in the `/.chef/trusted_certs` directory during the bootstrap operation.
131
126
132
127
#### knife ssl check
133
128
134
-
Run the `knife ssl check` subcommand to verify the state of the SSL certificate, and then use the response to help troubleshoot issues that may be present.
129
+
Run [`knife ssl check`]({{< relref "/workstation/knife_ssl_check/" >}}) to verify the state of the SSL certificate, and then use the response to help troubleshoot any issues.
135
130
136
131
##### Verified
137
132
@@ -143,8 +138,8 @@ Run the `knife ssl check` subcommand to verify the state of the SSL certificate,
143
138
144
139
#### knife ssl fetch
145
140
146
-
Run the `knife ssl fetch` to download the self-signed certificate from the Chef Infra Server to the `/.chef/trusted_certs` directory on a workstation.
141
+
Run [`knife ssl fetch`]({{< relref "/workstation/knife_ssl_fetch/" >}}) to download the self-signed certificate from the Chef Infra Server to the `/.chef/trusted_certs` directory on a workstation.
0 commit comments