Encrypted ClientHello (ECH) is now enabled on Cloudflare

вроде завезли, но неполностью

на windows server 2022 настройки уже есть в settings, но он на более новом билде, чем последняя 10

и не будет, и никто не обещал, это уже мертвая ось

эта статья ошибочная, нет и не будет в 10, там за пример взято было построение переходное до анонса 11

Возможно, немного оффтопик, но совсем немного. Может кто пояснить, вот если сайт открывается через ECH, и я хочу внести его в исключения своего VPN, ну просто чтобы быстрее работало, какой домен надо внести в исключения, самого сайта или cloudflare-ech.com? Читал-читал про ECH, но так и не понял. Ведь если SNI зашифровано ещё в браузере, мой VPN же не сможет его распознать и пустить напрямую? Простите, если глупый вопрос.

Написал и догадался как проверить, поэкспериментировал на https://encryptedsni.com/cdn-cgi/trace, результат - исключение целевого домена не влияет, а какой там фронт-домен я не понял…

The flag in the control panel just controls the DNS record. Since the ECH key is the same for all the domains, you can still connect to any (?) domain even if it has ECH disabled.

$ dig +short HTTPS gdeposylka.ru
1 . alpn="h3,h2" ipv4hint=104.25.106.6,104.25.107.6,172.67.80.113 ipv6hint=2606:4700:20::6819:6a06,2606:4700:20::6819:6b06,2606:4700:20::ac43:5071

$ (echo -e "GET / HTTP/1.0\r\nHost: gdeposylka.ru\r\n\r\n"; sleep 10) | ./openssl s_client -CApath /etc/ssl/certs/ -no_ssl3 -no_tls1 -no_tls1_1 -no_tls1_2 -connect gdeposylka.ru:443 -servername gdeposylka.ru -ech_config_list 'AEX+DQBBVgAgACC91NEyBX4eLKQ/XSZk9DabQ/MbtpGNoDC3hOhS7QPtNQAEAAEAAQASY2xvdWRmbGFyZS1lY2guY29tAAA=' -ech_alpn_outer outer,public,h2 -alpn inner,secret,http/1.1

Setting new_session_cb
Connecting to 2606:4700:20::6819:6a06
CONNECTED(00000003)
ECH client callback printing: 
SSL_ech_print
s=0x560765ac9410
ech_attempted=1
ech_attempted_type=0xfe0d
ech_atttempted_cid=0x56
ech_done=1
ech_grease=0
HRR=0
ech_returned=0x0
ech_returned_len=0
ech_backend=0
ech_success=1
1 ECHConfig value loaded
cfg(0): [fe0d,56,cloudflare-ech.com,0020,[0001,0001],bdd4d132057e1e2ca43f5d2664f4369b43f31bb6918da030b784e852ed03ed35,00,00]

depth=2 C=US, O=Google Trust Services LLC, CN=GTS Root R4
verify return:1
depth=1 C=US, O=Google Trust Services, CN=WE1
verify return:1
depth=0 CN=gdeposylka.ru
verify return:1
…

Just linking a related bug report I happened to find today. It says that Cloudflare servers detect the use of Warp, and for some reason refuse to serve ECH to Warp clients.

I downloaded and tested with WARP running in regular (non-socks) mode. Cloudflare’s output indicates no use of ECH but they detect use of WARP. Testing with a different ECH site (https://defo.ie/ech-check.php) indicates ECH succeeds. Testing with Chrome confirms the same behaviour as Firefox with Cloudflare disabling ECH when WARP is used but ECH with other sites working through WARP.

This looks like a deliberate policy decision by Cloudflare, everything is working correctly in Firefox and Chrome.