Skip to content

Commit cf9fac0

Browse files
committed
DOCS-13767 document opensslCipherSuiteConfig parameter
1 parent 66c06e1 commit cf9fac0

File tree

2 files changed

+55
-8
lines changed

2 files changed

+55
-8
lines changed

source/reference/parameters.txt

Lines changed: 51 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -319,6 +319,8 @@ Authentication Parameters
319319

320320
.. versionadded:: 3.6
321321

322+
*Available on Linux only*
323+
322324
.. versionchanged:: 4.0
323325

324326
With the use of native TLS/SSL libraries, the parameter
@@ -328,15 +330,24 @@ Authentication Parameters
328330

329331
Specify the cipher string for OpenSSL when using TLS/SSL encryption.
330332
For a list of cipher strings, see
331-
`<https://www.openssl.org/docs/man1.0.2/apps/ciphers.html#CIPHER-STRINGS>`_
333+
`<https://www.openssl.org/docs/man1.0.2/apps/ciphers.html#CIPHER-STRINGS>`_.
334+
Multiple cipher strings can be provided as a colon-separated list.
332335

333-
You can only set :parameter:`opensslCipherConfig` during start-up, and
334-
cannot change this setting using the :dbcommand:`setParameter`
336+
.. note::
337+
338+
This parameter is only for use with TLS 1.2 or earlier. To specify
339+
cipher suites for use with TLS 1.3, use the
340+
:parameter:`opensslCipherSuiteConfig` parameter.
341+
342+
You can only set :parameter:`opensslCipherConfig` during start-up,
343+
and cannot change this setting using the :dbcommand:`setParameter`
335344
database command.
336345

337346
For version 4.2 and greater, the use of ``TLS`` options is preferred
338347
over ``SSL`` options. The TLS options have the same functionality as
339-
the ``SSL`` options.
348+
the ``SSL`` options. For example, the following configures a
349+
:binary:`~bin.mongod` with a :parameter:`opensslCipherConfig`
350+
cipher string of ``'HIGH:!EXPORT:!aNULL@STRENGTH'`` in MongoDB 4.2:
340351

341352
.. code-block:: sh
342353

@@ -348,16 +359,48 @@ Authentication Parameters
348359

349360
mongod --setParameter opensslCipherConfig='HIGH:!EXPORT:!aNULL@STRENGTH' --sslMode requireSSL --sslPEMKeyFile Certs/server.pem
350361

362+
.. parameter:: opensslCipherSuiteConfig
363+
364+
.. versionadded:: 5.0
365+
366+
*Available on Linux only*
367+
368+
Specify the list of supported cipher suites OpenSSL should permit
369+
when using TLS 1.3 encryption.
370+
371+
For a list of cipher suites for use with TLS 1.3, see
372+
`<https://www.openssl.org/docs/man1.1.1/man3/SSL_CTX_set_cipher_list.html>`_.
373+
Multiple cipher suites can be provided as a colon-separated list.
374+
375+
.. note::
376+
377+
This parameter is only for use with TLS 1.3. To specify cipher
378+
strings for use with TLS 1.2 or earlier, use the
379+
:parameter:`opensslCipherConfig` parameter.
380+
381+
You can only set :parameter:`opensslCipherSuiteConfig` during
382+
start-up, and cannot change this setting using the
383+
:dbcommand:`setParameter` database command. For example, the
384+
following configures a :binary:`~bin.mongod` with a
385+
:parameter:`opensslCipherSuiteConfig` cipher suite of
386+
``'TLS_AES_256_GCM_SHA384'`` for use with TLS 1.3:
387+
388+
.. code-block:: sh
389+
390+
mongod --setParameter opensslCipherSuiteConfig='TLS_AES_256_GCM_SHA384' --tlsMode requireTLS --tlsCertificateKeyFile Certs/server.pem
391+
351392
.. parameter:: opensslDiffieHellmanParameters
352393

353394
.. versionadded:: 3.6
354395

355396
*Available on Linux only*
356397

357398
Specify the path to the PEM file that contains the OpenSSL
358-
Diffie-Hellman parameters. Specifying the OpenSSL Diffie-Hellman
359-
parameters enables support for :ref:`dhe` cipher suites during
360-
TLS/SSL encryption.
399+
Diffie-Hellman parameters when using TLS 1.2 or previous. Specifying
400+
the OpenSSL Diffie-Hellman parameters enables support for :ref:`dhe`
401+
cipher suites during TLS/SSL encryption.
402+
403+
This parameter is not supported for use with TLS 1.3.
361404

362405
Ephemeral Diffie-Hellman (DHE) cipher suites (and Ephemeral Elliptic
363406
Curve Diffie-Hellman (ECDHE) cipher suites) provide
@@ -371,7 +414,7 @@ Authentication Parameters
371414

372415
Starting in MongoDB 4.2, if
373416
:parameter:`opensslDiffieHellmanParameters` is unset but
374-
:ref:`ECDHE is enabled <ecdhe>`, MongoDB enables DHE using
417+
:ref:`ECDHE <ecdhe>` is enabled, MongoDB enables DHE using the
375418
``ffdhe3072`` Diffie-Hellman parameter, as defined in
376419
:rfc:`7919#appendix-A.2`. The ``ffdhe3072`` is a strong parameter
377420
(specifically, size is greater than 1024). Strong parameters are

source/release-notes/5.0.txt

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -182,6 +182,10 @@ Starting in MongoDB 5.0, you can use the
182182
:parameter:`minSnapshotHistoryWindowInSeconds` parameter to control how
183183
long WiredTiger keeps the snapshot history.
184184

185+
MongoDB 5.0 introduces the :parameter:`opensslCipherSuiteConfig`
186+
parameter to enable configuration of the supported cipher suites OpenSSL
187+
should permit when using TLS 1.3 encryption.
188+
185189
.. _5.0-rel-notes-networking:
186190

187191
Networking

0 commit comments

Comments
 (0)