Server Name Indication (SNI) — расширение компьютерного протокола TLS[1], которое позволяет клиентам сообщать имя хоста, с которым он желает соединиться во время процесса «рукопожатия».
Проблема SNI была в том что имя сайта идёт в открытом виде. И провайдер используя его может заблокировать сайт или анализировать интересы пользователей.
ESNI — тот же SNI только зашифрованный открытым ключом хостинг провайдера.
О нём уже было пара статей на хабре:
Для того чтобы включить ESNI для своего сайта нужно чтоб хостиг поддерживал TLS 1.3 и публиковал свой публичный ключ в TXT DNS записи.
Тогда всё что нам нужно это добавить в DNS CNAME на эту запись.
_esni.my-site.hosting.example.com CNAME _esni.hosting.example.com
_esni — это специальный под домен вашего сайта на котором браузер ожидает обнаружить публичный ключ которым зашифрует SNI. Поэтому ESNI в Firefox включается только тогда когда в браузере включен DNS через HTTPS.