Commit 43587e8c authored by Miek Gieben's avatar Miek Gieben Committed by GitHub

Update the tls documentation (#1061)

* Update the tls documentation

* cant test corefile because we dont have pem data

* Add note on client support
parent b8e5f54d
......@@ -3,6 +3,19 @@
*tls* allows you to configure the server certificates for the TLS and gRPC servers.
For other types of servers it is ignored.
CoreDNS supports queries that are encrypted using TLS (DNS over Transport Layer Security, RFC 7858)
or are using gRPC (https://grpc.io/, not an IETF standard). Normally DNS traffic isn't encrypted at
all (DNSSEC only signs resource records).
The *proxy* middleware also support gRPC (`protocol gRPC`), meaning you can chain CoreDNS servers
using this protocol.
The *tls* "middleware" allows you to configure the cryptographic keys that are needed for both
DNS-over-TLS and DNS-over-gRPC. If the `tls` directive is omitted, then no encryption takes place.
The gRPC protobuffer is defined in `pb/dns.proto`. It defines the proto as a simple wrapper for the
wire data of a DNS message.
## Syntax
~~~ txt
......@@ -11,21 +24,29 @@ tls CERT KEY CA
## Examples
Start a DNS-over-TLS server.
Start a DNS-over-TLS server that picks up incoming DNS-over-TLS queries on port 5553 and uses the
nameservers defined in `/etc/resolv.conf` to resolve the query. This proxy path uses plain old DNS.
~~~
tls://.:4453 {
tls://.:5553 {
tls cert.pem key.pem ca.pem
proxy . /etc/resolv.conf
}
~~~
Start a DNS-over-gRPC server. If the `tls` directive were omitted, then
it would use plain HTTP not HTTPS.
Start a DNS-over-gRPC server that is similar to the previous example, but using DNS-over-gRPC for
incoming queries.
~~~
grpc://.:443 {
grpc://. {
tls cert.pem key.pem ca.pem
proxy . /etc/resolv.conf
}
~~~
Only Knot DNS' `kdig` supports DNS-over-TLS queries, no command line client supports gRPC making
debugging these transports harder than it should be.
## Also See
RFC 7858 and https://grpc.io.
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment