# Configuration for nginx-ech-keygen and nginx-ech-rotate.timer.

# The ECH "public name": the cleartext outer SNI that clients connect to while
# the real hostname travels encrypted inside. REQUIRED - nothing works until
# this is set. It must resolve to this server and be covered by a certificate
# you control, because a client that fails ECH falls back to a normal TLS
# handshake against this name.
#
# ECH_PUBLIC_NAME="ech.example.com"
ECH_PUBLIC_NAME=""

# How many key generations stay loaded. The newest is advertised in ECH
# retry-configs; the others are kept so clients still holding an older
# ECHConfigList from a cached HTTPS record can be decrypted. With the default
# daily timer, 3 gives roughly a three-day grace window - set it comfortably
# above your HTTPS record's TTL. Minimum 1, which disables the grace window.
ECH_RETAIN=3

# Where key material lives. Root-owned, group-readable by nginx.
ECH_DIR=/etc/nginx/ech

# The generated include listing the current keys, newest first. Rewritten on
# every rotation, so do not hand-edit it.
ECH_INCLUDE=/etc/nginx/conf.d/ech-keys.conf

# Group allowed to read key files.
ECH_GROUP=www-data

# The OpenSSL 3.5 CLI carrying the ECH backport, and the nginx binary and unit
# used to validate and reload the configuration after a rotation.
ECH_OPENSSL=openssl35
ECH_NGINX=nginx
ECH_SERVICE=nginx.service
