OutgoingTLSConfiguration
^^^^^^^^^^^^^^^^^^^^^^^^
-As of version 5.4.0, an outgong TLS (DoT) configurations is defined as
+As of version 5.4.0, an outgoing TLS (DoT) configuration is defined as
.. code-block:: yaml
name: A name, default not set.
- provider: either 'openssl' (default) or 'gnutls'.
+ provider: Either 'openssl' (default) or 'gnutls'.
suffixes: A sequence of domain names, default empty.
subnets: A sequence of Subnet strings (no negation supported), default empty.
validate_certificate: Set to true to enforce certificate validation, default false.
ca_store: CA store file containing certificates in PEM format, default is to use the system CA store.
- verbose_logging: Wether to log more details on DoT connections, default false.
- subject_name: The subject name passed in the SNI value of the TLS handshake, and against which to validate the certificate presented if applicable. Default is to use the nameserver name if available. If set this value supersedes any subject_addr one.
- subject_address: The subject IP address passed in the SNI value of the TLS handshake, and against which to validate the certificate presented by the backend. Defaul is to use the remote IP address if no nameserver name is available.
+ verbose_logging: Whether to log more details on DoT connections, default false.
+ subject_name: The subject name passed in the SNI value of the TLS handshake, and against which to validate the certificate presented if applicable. Default is to use the nameserver name if available. If set this value supersedes any ``subject_address`` one.
+ subject_address: The subject IP address passed in the SNI value of the TLS handshake, and against which to validate the certificate presented by the backend. Default is to use the remote IP address if no nameserver name is available.
ciphers: The TLS ciphers to use. The exact format depends on the provider used. When the OpenSSL provider is used, ciphers for TLS 1.3 must be specified via ciphers_tls_13.
ciphers_tls_13: The ciphers to use for TLS 1.3, when the OpenSSL provider is used. When the GnuTLS provider is used, ciphers applies regardless of the TLS protocol and this setting is not used.
outgoing:
tls_configurations:
- - name: dotwithverify
+ - name: 'DoT with verify'
suffixes: [powerdns.com]
validate_certificate: true
- - name: fwtoquad1quad9
+ - name: 'Forward to quad1 or quad9'
subnets: [1.1.1.0/24,9.9.9.9]
validate_certificate: true
verbose_logging: true
- - name: fwtogoogle
+ - name: 'Forward to google'
subnets: [8.8.8.8]
subject_name: dns.google
validate_certificate: true
The first entry matches on a name server name in ``powerdns.com``, and switches on validation.
-THe second entry matches on a subnet or IP addresses, and enables (IP based) certificate validation and verbose logging.
+The second entry matches on a subnet or IP addresses, and enables (IP based) certificate validation and verbose logging.
The third entry matches on IP, and switches on validation with the SNI name ``dns.google``.
When looking for an outgoing TLS configuration matching is done against the ``subnets`` lists with the remote IP as key.