ΠΠΎΠ²Π΅Π΄
Π‘ΠΎΠ²ΡΠ΅ΠΌΠ΅Π½ΠΈΡΠ΅ ΠΊΠΎΡΠΏΠΎΡΠ°ΡΠΈΠ²Π½ΠΈ ΡΠΈΡΡΠ΅ΠΌΠΈ Π·Π° ΡΠΈΠ»ΡΡΠΈΡΠ°ΡΠ΅ Π½Π° ΡΠΎΠ΄ΡΠΆΠΈΠ½Π° ΠΎΠ΄ ΡΠ°ΠΊΠ²ΠΈ ΡΠ΅Π½ΠΎΠΌΠΈΡΠ°Π½ΠΈ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΠΈ ΠΊΠ°ΠΊΠΎ Cisco, BlueCoat, FireEye ΠΈΠΌΠ°Π°Ρ Π΄ΠΎΡΡΠ° Π·Π°Π΅Π΄Π½ΠΈΡΠΊΠΎ ΡΠΎ Π½ΠΈΠ²Π½ΠΈΡΠ΅ ΠΏΠΎΠΌΠΎΡΠ½ΠΈ ΠΊΠΎΠ»Π΅Π³ΠΈ - DPI ΡΠΈΡΡΠ΅ΠΌΠΈ, ΠΊΠΎΠΈ Π°ΠΊΡΠΈΠ²Π½ΠΎ ΡΠ΅ ΠΈΠΌΠΏΠ»Π΅ΠΌΠ΅Π½ΡΠΈΡΠ°Π°Ρ Π½Π° Π½Π°ΡΠΈΠΎΠ½Π°Π»Π½ΠΎ Π½ΠΈΠ²ΠΎ. Π‘ΡΡΡΠΈΠ½Π°ΡΠ° Π½Π° ΡΠ°Π±ΠΎΡΠ°ΡΠ° Π½Π° Π΄Π²Π°ΡΡΠ°ΡΠ° Π΅ Π΄Π° Π³ΠΎ ΠΏΡΠΎΠ²Π΅ΡΠ°Ρ Π΄ΠΎΡΠ΄ΠΎΠ²Π½ΠΈΠΎΡ ΠΈ ΠΏΠΎΡΠ΄ΠΎΠ²Π½ΠΈΠΎΡ ΠΈΠ½ΡΠ΅ΡΠ½Π΅Ρ ΡΠΎΠΎΠ±ΡΠ°ΡΠ°Ρ ΠΈ Π²ΡΠ· ΠΎΡΠ½ΠΎΠ²Π° Π½Π° ΡΡΠ½ΠΎ/Π±Π΅Π»ΠΈ ΡΠΏΠΈΡΠΎΡΠΈ Π΄Π° Π΄ΠΎΠ½Π΅ΡΠ°Ρ ΠΎΠ΄Π»ΡΠΊΠ° Π·Π° Π·Π°Π±ΡΠ°Π½Π° Π½Π° ΠΈΠ½ΡΠ΅ΡΠ½Π΅Ρ ΠΊΠΎΠ½Π΅ΠΊΡΠΈΡΠ°ΡΠ°. Π Π±ΠΈΠ΄Π΅ΡΡΠΈ ΠΈ Π΄Π²Π°ΡΡΠ°ΡΠ° ΡΠ΅ ΠΏΠΎΡΠΏΠΈΡΠ°Π°Ρ Π½Π° ΡΠ»ΠΈΡΠ½ΠΈ ΠΏΡΠΈΠ½ΡΠΈΠΏΠΈ Π²ΠΎ ΠΎΡΠ½ΠΎΠ²ΠΈΡΠ΅ Π½Π° Π½ΠΈΠ²Π½Π°ΡΠ° ΡΠ°Π±ΠΎΡΠ°, ΠΌΠ΅ΡΠΎΠ΄ΠΈΡΠ΅ Π·Π° Π½ΠΈΠ²Π½ΠΎ Π·Π°ΠΎΠ±ΠΈΠΊΠΎΠ»ΡΠ²Π°ΡΠ΅ ΠΈΡΡΠΎ ΡΠ°ΠΊΠ° ΡΠ΅ ΠΈΠΌΠ°Π°Ρ ΠΌΠ½ΠΎΠ³Ρ Π·Π°Π΅Π΄Π½ΠΈΡΠΊΠΎ.
ΠΠ΄Π½Π° ΠΎΠ΄ ΡΠ΅Ρ Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈΡΠ΅ ΡΡΠΎ Π²ΠΈ ΠΎΠ²ΠΎΠ·ΠΌΠΎΠΆΡΠ²Π° Π΄ΠΎΡΡΠ° Π΅ΡΠ΅ΠΊΡΠΈΠ²Π½ΠΎ Π΄Π° Π³ΠΈ Π·Π°ΠΎΠ±ΠΈΠΊΠΎΠ»ΠΈΡΠ΅ ΠΈ DPI ΠΈ ΠΊΠΎΡΠΏΠΎΡΠ°ΡΠΈΠ²Π½ΠΈΡΠ΅ ΡΠΈΡΡΠ΅ΠΌΠΈ Π΅ ΡΠ΅Ρ Π½ΠΎΠ»ΠΎΠ³ΠΈΡΠ°ΡΠ° Π½Π° Π΄ΠΎΠΌΠ΅Π½-ΡΡΠΎΠ½Ρ. ΠΠ΅ΡΠ·ΠΈΠ½Π°ΡΠ° ΡΡΡΡΠΈΠ½Π° Π΅ Π΄Π΅ΠΊΠ° ΠΎΠ΄ΠΈΠΌΠ΅ Π΄ΠΎ Π±Π»ΠΎΠΊΠΈΡΠ°Π½ ΡΠ΅ΡΡΡΡ, ΠΊΡΠΈΠ΅ΡΡΠΈ ΡΠ΅ Π·Π°Π΄ Π΄ΡΡΠ³, ΡΠ°Π²Π΅Π½ Π΄ΠΎΠΌΠ΅Π½ ΡΠΎ Π΄ΠΎΠ±ΡΠ° ΡΠ΅ΠΏΡΡΠ°ΡΠΈΡΠ°, ΠΊΠΎΡ ΠΎΡΠΈΠ³Π»Π΅Π΄Π½ΠΎ Π½Π΅ΠΌΠ° Π΄Π° Π±ΠΈΠ΄Π΅ Π±Π»ΠΎΠΊΠΈΡΠ°Π½ ΠΎΠ΄ Π½ΠΈΡΡ Π΅Π΄Π΅Π½ ΡΠΈΡΡΠ΅ΠΌ, Π½Π° ΠΏΡΠΈΠΌΠ΅Ρ google.com.
ΠΠ° ΠΎΠ²Π°Π° ΡΠ΅Ρ
Π½ΠΎΠ»ΠΎΠ³ΠΈΡΠ° Π²Π΅ΡΠ΅ ΡΠ΅ Π½Π°ΠΏΠΈΡΠ°Π½ΠΈ Π΄ΠΎΡΡΠ° ΡΡΠ°ΡΠΈΠΈ ΠΈ Π΄Π°Π΄Π΅Π½ΠΈ ΡΠ΅ ΠΌΠ½ΠΎΠ³Ρ ΠΏΡΠΈΠΌΠ΅ΡΠΈ. Π‘Π΅ΠΏΠ°ΠΊ, ΠΏΠΎΠΏΡΠ»Π°ΡΠ½ΠΈΡΠ΅ ΠΈ Π½Π΅ΠΎΠ΄Π°ΠΌΠ½Π° Π΄ΠΈΡΠΊΡΡΠΈΡΠ°Π½ΠΈ DNS-over-HTTPS ΠΈ ΡΠΈΡΡΠΈΡΠ°Π½ΠΈ-SNI ΡΠ΅Ρ
Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ, ΠΊΠ°ΠΊΠΎ ΠΈ Π½ΠΎΠ²Π°ΡΠ° Π²Π΅ΡΠ·ΠΈΡΠ° Π½Π° ΠΏΡΠΎΡΠΎΠΊΠΎΠ»ΠΎΡ TLS 1.3, ΠΎΠ²ΠΎΠ·ΠΌΠΎΠΆΡΠ²Π°Π°Ρ Π΄Π° ΡΠ΅ ΡΠ°Π·Π³Π»Π΅Π΄Π° Π΄ΡΡΠ³Π° ΠΎΠΏΡΠΈΡΠ° Π·Π° ΡΡΠΎΠ½ΡΠΈΡΠ°ΡΠ΅ Π½Π° Π΄ΠΎΠΌΠ΅Π½ΠΎΡ.
Π Π°Π·Π±ΠΈΡΠ°ΡΠ΅ Π½Π° ΡΠ΅Ρ Π½ΠΎΠ»ΠΎΠ³ΠΈΡΠ°ΡΠ°
ΠΡΠ²ΠΎ, Π΄Π° Π΄Π΅ΡΠΈΠ½ΠΈΡΠ°ΠΌΠ΅ ΠΌΠ°Π»ΠΊΡ ΠΎΡΠ½ΠΎΠ²Π½ΠΈ ΠΊΠΎΠ½ΡΠ΅ΠΏΡΠΈ Π·Π° ΡΠ΅ΠΊΠΎΡ Π΄Π° ΠΈΠΌΠ° ΡΠ°Π·Π±ΠΈΡΠ°ΡΠ΅ Π·Π° ΡΠΎΠ° ΠΊΠΎΡ Π΅ ΠΊΠΎΡ ΠΈ Π·ΠΎΡΡΠΎ Π΅ ΠΏΠΎΡΡΠ΅Π±Π½ΠΎ ΡΠ΅ΡΠΎ ΠΎΠ²Π°. ΠΠΎ ΡΠΏΠΎΠΌΠ΅Π½Π°Π²ΠΌΠ΅ ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΠΌΠΎΡ eSNI, ΡΠΈΠ΅ ΡΡΠ½ΠΊΡΠΈΠΎΠ½ΠΈΡΠ°ΡΠ΅ ΡΠ΅ ΡΠ΅ Π΄ΠΈΡΠΊΡΡΠΈΡΠ° ΠΏΠΎΠ½Π°ΡΠ°ΠΌΡ. ΠΠ΅Ρ Π°Π½ΠΈΠ·ΠΌΠΎΡ eSNI (ΡΠΈΡΡΠΈΡΠ°Π½Π° ΠΈΠ½Π΄ΠΈΠΊΠ°ΡΠΈΡΠ° Π·Π° ΠΈΠΌΠ΅ΡΠΎ Π½Π° ΡΠ΅ΡΠ²Π΅ΡΠΎΡ) Π΅ Π±Π΅Π·Π±Π΅Π΄Π½Π° Π²Π΅ΡΠ·ΠΈΡΠ° Π½Π° SNI, Π΄ΠΎΡΡΠ°ΠΏΠ½Π° ΡΠ°ΠΌΠΎ Π·Π° ΠΏΡΠΎΡΠΎΠΊΠΎΠ»ΠΎΡ TLS 1.3. ΠΠ»Π°Π²Π½Π°ΡΠ° ΠΈΠ΄Π΅ΡΠ° Π΅ Π΄Π° ΡΠ΅ ΡΠΈΡΡΠΈΡΠ°Π°Ρ, ΠΌΠ΅ΡΡ Π΄ΡΡΠ³ΠΎΡΠΎ, ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ Π·Π° ΡΠΎΠ° Π΄ΠΎ ΠΊΠΎΡ Π΄ΠΎΠΌΠ΅Π½ Π΅ ΠΈΡΠΏΡΠ°ΡΠ΅Π½ΠΎ Π±Π°ΡΠ°ΡΠ΅ΡΠΎ.
Π‘Π΅Π³Π° Π΄Π° ΠΏΠΎΠ³Π»Π΅Π΄Π½Π΅ΠΌΠ΅ ΠΊΠ°ΠΊΠΎ ΡΡΠ½ΠΊΡΠΈΠΎΠ½ΠΈΡΠ° ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΠΌΠΎΡ eSNI Π²ΠΎ ΠΏΡΠ°ΠΊΡΠ°.
ΠΠ° ΡΠ΅ΡΠ΅ΠΌΠ΅ Π΄Π΅ΠΊΠ° ΠΈΠΌΠ°ΠΌΠ΅ ΠΈΠ½ΡΠ΅ΡΠ½Π΅Ρ ΡΠ΅ΡΡΡΡ ΡΡΠΎ Π΅ Π±Π»ΠΎΠΊΠΈΡΠ°Π½ ΠΎΠ΄ ΠΌΠΎΠ΄Π΅ΡΠ½ΠΎ ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ Π·Π° DPI (Π΄Π° Π³ΠΎ Π·Π΅ΠΌΠ΅ΠΌΠ΅, Π½Π° ΠΏΡΠΈΠΌΠ΅Ρ, ΠΏΠΎΠ·Π½Π°ΡΠΈΠΎΡ torrent tracker rutracker.nl). ΠΠΎΠ³Π° ΡΠ΅ ΠΎΠ±ΠΈΠ΄ΡΠ²Π°ΠΌΠ΅ Π΄Π° ΠΏΡΠΈΡΡΠ°ΠΏΠΈΠΌΠ΅ Π΄ΠΎ Π²Π΅Π±-ΡΡΡΠ°Π½ΠΈΡΠ°ΡΠ° Π½Π° ΡΡΠ°ΠΊΠ΅ΡΠΎΡ Π·Π° ΡΠΎΡΠ΅Π½ΡΠΈ, Π³ΠΎ Π³Π»Π΅Π΄Π°ΠΌΠ΅ ΡΡΠ°Π½Π΄Π°ΡΠ΄Π½ΠΈΠΎΡ Π½ΠΈΠΊΡΠ»Π΅Ρ Π½Π° Π΄Π°Π²Π°ΡΠ΅Π»ΠΎΡ ΡΡΠΎ ΠΏΠΎΠΊΠ°ΠΆΡΠ²Π° Π΄Π΅ΠΊΠ° ΡΠ΅ΡΡΡΡΠΎΡ Π΅ Π±Π»ΠΎΠΊΠΈΡΠ°Π½:
ΠΠ° Π²Π΅Π±-ΡΡΡΠ°Π½ΠΈΡΠ°ΡΠ° Π½Π° RKN ΠΎΠ²ΠΎΡ Π΄ΠΎΠΌΠ΅Π½ Π΅ Π²ΡΡΡΠ½ΠΎΡΡ Π½Π°Π²Π΅Π΄Π΅Π½ Π²ΠΎ ΡΡΠΎΠΏ Π»ΠΈΡΡΠΈΡΠ΅:
ΠΠΎΠ³Π° ΠΏΡΠ°ΡΡΠ²Π°ΡΠ΅ whois, ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄Π° Π²ΠΈΠ΄ΠΈΡΠ΅ Π΄Π΅ΠΊΠ° ΡΠ°ΠΌΠΈΠΎΡ Π΄ΠΎΠΌΠ΅Π½ Π΅ βΡΠΊΡΠΈΠ΅Π½β Π·Π°Π΄ ΠΏΡΠΎΠ²Π°ΡΠ΄Π΅ΡΠΎΡ Π½Π° ΠΎΠ±Π»Π°ΠΊ Cloudflare.
ΠΠΎ, Π·Π° ΡΠ°Π·Π»ΠΈΠΊΠ° ΠΎΠ΄ βΡΠΏΠ΅ΡΠΈΡΠ°Π»ΠΈΡΡΠΈΡΠ΅β ΠΎΠ΄ RKN, ΡΠ΅Ρ
Π½ΠΈΡΠΊΠΈ ΠΏΠΎΡΠΏΠ°ΡΠ΅Π½ΠΈΡΠ΅ Π²ΡΠ°Π±ΠΎΡΠ΅Π½ΠΈ ΠΎΠ΄ Beeline (ΠΈΠ»ΠΈ ΠΏΠΎΡΡΠ΅Π½ΠΈ ΠΎΠ΄ Π³ΠΎΡΡΠ»ΠΈΠ²ΠΎΡΠΎ ΠΈΡΠΊΡΡΡΠ²ΠΎ Π½Π° Π½Π°ΡΠΈΠΎΡ ΠΏΠΎΠ·Π½Π°Ρ ΡΠ΅Π³ΡΠ»Π°ΡΠΎΡ) Π½Π΅ Π³Π»ΡΠΏΠ°Π²ΠΎ ΡΠ° Π·Π°Π±ΡΠ°Π½ΠΈΡΠ° ΡΡΡΠ°Π½ΠΈΡΠ°ΡΠ° ΠΏΠΎ IP Π°Π΄ΡΠ΅ΡΠ°, ΡΡΠΊΡ Π³ΠΎ Π΄ΠΎΠ΄Π°Π΄ΠΎΠ° ΠΈΠΌΠ΅ΡΠΎ Π½Π° Π΄ΠΎΠΌΠ΅Π½ΠΎΡ Π²ΠΎ ΡΠΏΠΈΡΠΎΠΊΠΎΡ Π·Π° ΡΡΠΎΠΏΠΈΡΠ°ΡΠ΅. ΠΠΎΠΆΠ΅ΡΠ΅ Π»Π΅ΡΠ½ΠΎ Π΄Π° Π³ΠΎ ΠΏΠΎΡΠ²ΡΠ΄ΠΈΡΠ΅ ΠΎΠ²Π° Π°ΠΊΠΎ ΠΏΠΎΠ³Π»Π΅Π΄Π½Π΅ΡΠ΅ ΠΊΠΎΠΈ Π΄ΡΡΠ³ΠΈ Π΄ΠΎΠΌΠ΅Π½ΠΈ ΡΠ΅ ΡΠΊΡΠΈΠ΅Π½ΠΈ Π·Π°Π΄ ΠΈΡΡΠ°ΡΠ° IP Π°Π΄ΡΠ΅ΡΠ°, ΠΏΠΎΡΠ΅ΡΠ΅ΡΠ΅ Π΅Π΄Π΅Π½ ΠΎΠ΄ Π½ΠΈΠ² ΠΈ Π²ΠΈΠ΄Π΅ΡΠ΅ Π΄Π΅ΠΊΠ° ΠΏΡΠΈΡΡΠ°ΠΏΠΎΡ Π½Π΅ Π΅ Π±Π»ΠΎΠΊΠΈΡΠ°Π½:
ΠΠ°ΠΊΠΎ ΡΠ΅ ΡΠ»ΡΡΡΠ²Π° ΠΎΠ²Π°? ΠΠ°ΠΊΠΎ DPI Π½Π° ΠΏΡΠΎΠ²Π°ΡΠ΄Π΅ΡΠΎΡ Π·Π½Π°Π΅ Π½Π° ΠΊΠΎΡ Π΄ΠΎΠΌΠ΅Π½ Π΅ ΠΌΠΎΡΠΎΡ ΠΏΡΠ΅Π»ΠΈΡΡΡΠ²Π°Ρ, Π±ΠΈΠ΄Π΅ΡΡΠΈ ΡΠΈΡΠ΅ ΠΊΠΎΠΌΡΠ½ΠΈΠΊΠ°ΡΠΈΠΈ ΡΠ΅ ΡΠ»ΡΡΡΠ²Π°Π°Ρ ΠΏΡΠ΅ΠΊΡ ΠΏΡΠΎΡΠΎΠΊΠΎΠ»ΠΎΡ https, Π° ΡΓ¨ ΡΡΡΠ΅ Π½Π΅ ΡΠΌΠ΅ Π·Π°Π±Π΅Π»Π΅ΠΆΠ°Π»Π΅ Π·Π°ΠΌΠ΅Π½Π° Π½Π° ΡΠ΅ΡΡΠΈΡΠΈΠΊΠ°ΡΠΈ https ΠΎΠ΄ Beeline? ΠΠ°Π»ΠΈ ΡΠΎΡ Π΅ Π²ΠΈΠ΄ΠΎΠ²ΠΈΡ ΠΈΠ»ΠΈ ΠΌΠ΅ ΡΠ»Π΅Π΄Π°Ρ?
ΠΡΠ΄Π΅ Π΄Π° ΡΠ΅ ΠΎΠ±ΠΈΠ΄Π΅ΠΌΠ΅ Π΄Π° ΠΎΠ΄Π³ΠΎΠ²ΠΎΡΠΈΠΌΠ΅ Π½Π° ΠΎΠ²Π° ΠΏΡΠ°ΡΠ°ΡΠ΅ Π³Π»Π΅Π΄Π°ΡΡΠΈ Π³ΠΎ ΡΠΎΠΎΠ±ΡΠ°ΡΠ°ΡΠΎΡ ΠΏΡΠ΅ΠΊΡ wireshark
Π‘Π»ΠΈΠΊΠ°ΡΠ° ΠΎΠ΄ Π΅ΠΊΡΠ°Π½ΠΎΡ ΠΏΠΎΠΊΠ°ΠΆΡΠ²Π° Π΄Π΅ΠΊΠ° ΠΏΡΠ²ΠΎ ΠΏΡΠ΅Π»ΠΈΡΡΡΠ²Π°ΡΠΎΡ ΡΠ° Π΄ΠΎΠ±ΠΈΠ²Π° IP Π°Π΄ΡΠ΅ΡΠ°ΡΠ° Π½Π° ΡΠ΅ΡΠ²Π΅ΡΠΎΡ ΠΏΡΠ΅ΠΊΡ DNS, ΠΏΠΎΡΠΎΠ° ΡΠ΅ ΡΠ»ΡΡΡΠ²Π° ΡΡΠ°Π½Π΄Π°ΡΠ΄Π½ΠΎ TCP ΡΠ°ΠΊΡΠ²Π°ΡΠ΅ ΡΠΎ ΠΎΠ΄ΡΠ΅Π΄ΠΈΡΠ½ΠΈΠΎΡ ΡΠ΅ΡΠ²Π΅Ρ, Π° ΠΏΠΎΡΠΎΠ° ΠΏΡΠ΅Π»ΠΈΡΡΡΠ²Π°ΡΠΎΡ ΡΠ΅ ΠΎΠ±ΠΈΠ΄ΡΠ²Π° Π΄Π° Π²ΠΎΡΠΏΠΎΡΡΠ°Π²ΠΈ SSL Π²ΡΡΠΊΠ° ΡΠΎ ΡΠ΅ΡΠ²Π΅ΡΠΎΡ. ΠΠ° Π΄Π° Π³ΠΎ Π½Π°ΠΏΡΠ°Π²ΠΈΡΠ΅ ΠΎΠ²Π°, ΡΠΎΡ ΠΈΡΠΏΡΠ°ΡΠ° ΠΏΠ°ΠΊΠ΅Ρ SSL Client Hello, ΠΊΠΎΡ Π³ΠΎ ΡΠΎΠ΄ΡΠΆΠΈ ΠΈΠΌΠ΅ΡΠΎ Π½Π° ΠΈΠ·Π²ΠΎΡΠ½ΠΈΠΎΡ Π΄ΠΎΠΌΠ΅Π½ Π²ΠΎ ΡΠ°ΡΠ΅Π½ ΡΠ΅ΠΊΡΡ. ΠΠ²Π° ΠΏΠΎΠ»Π΅ Π³ΠΎ Π±Π°ΡΠ° ΠΏΡΠ΅Π΄Π½ΠΈΠΎΡ ΡΠ΅ΡΠ²Π΅Ρ Π½Π° cloudflare Π·Π° ΠΏΡΠ°Π²ΠΈΠ»Π½ΠΎ Π½Π°ΡΠΎΡΡΠ²Π°ΡΠ΅ Π½Π° Π²ΡΡΠΊΠ°ΡΠ°. ΠΠ²Π° Π΅ ΠΌΠ΅ΡΡΠΎΡΠΎ ΠΊΠ°Π΄Π΅ ΡΡΠΎ ΠΏΡΠΎΠ²Π°ΡΠ΄Π΅ΡΠΎΡ DPI Π½Γ¨ ΡΠ°ΡΠ°, ΠΏΡΠ΅ΠΊΠΈΠ½ΡΠ²Π°ΡΡΠΈ ΡΠ° Π½Π°ΡΠ°ΡΠ° Π²ΡΡΠΊΠ°. ΠΠΎ ΠΈΡΡΠΎ Π²ΡΠ΅ΠΌΠ΅, Π½Π΅ Π΄ΠΎΠ±ΠΈΠ²Π°ΠΌΠ΅ Π½ΠΈΠΊΡΠ»Π΅Ρ ΠΎΠ΄ Π΄Π°Π²Π°ΡΠ΅Π»ΠΎΡ ΠΈ ΡΠ° Π³Π»Π΅Π΄Π°ΠΌΠ΅ ΡΡΠ°Π½Π΄Π°ΡΠ΄Π½Π°ΡΠ° Π³ΡΠ΅ΡΠΊΠ° Π½Π° ΠΏΡΠ΅Π»ΠΈΡΡΡΠ²Π°ΡΠΎΡ ΠΊΠ°ΠΊΠΎ Π΄Π° Π΅ ΠΎΠ½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ΅Π½Π° ΡΡΡΠ°Π½ΠΈΡΠ°ΡΠ° ΠΈΠ»ΠΈ Π΅Π΄Π½ΠΎΡΡΠ°Π²Π½ΠΎ Π΄Π° Π½Π΅ ΡΠ°Π±ΠΎΡΠΈ:
Π‘Π΅Π³Π° Π΄Π° Π³ΠΎ ΠΎΠ²ΠΎΠ·ΠΌΠΎΠΆΠΈΠΌΠ΅ ΠΌΠ΅Ρ
Π°Π½ΠΈΠ·ΠΌΠΎΡ eSNI Π²ΠΎ ΠΏΡΠ΅Π»ΠΈΡΡΡΠ²Π°ΡΠΎΡ, ΠΊΠ°ΠΊΠΎ ΡΡΠΎ Π΅ Π½Π°ΠΏΠΈΡΠ°Π½ΠΎ Π²ΠΎ ΡΠΏΠ°ΡΡΡΠ²Π°ΡΠ° Π·Π°
ΠΠ° Π΄Π° Π³ΠΎ Π½Π°ΠΏΡΠ°Π²ΠΈΡΠ΅ ΠΎΠ²Π°, ΡΠ° ΠΎΡΠ²ΠΎΡΠ°ΠΌΠ΅ ΡΡΡΠ°Π½ΠΈΡΠ°ΡΠ° Π·Π° ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΡΠ° Π½Π° Firefox Π·Π°: ΠΊΠΎΠ½ΡΠΈΠ³ ΠΈ Π°ΠΊΡΠΈΠ²ΠΈΡΠ°ΡΡΠ΅ Π³ΠΈ ΡΠ»Π΅Π΄Π½ΠΈΡΠ΅ ΠΏΠΎΡΡΠ°Π²ΠΊΠΈ:
network.trr.mode = 2;
network.trr.uri = https://mozilla.cloudflare-dns.com/dns-query
network.security.esni.enabled = true
ΠΠΎΡΠ»Π΅ ΠΎΠ²Π°, ΡΠ΅ ΠΏΡΠΎΠ²Π΅ΡΠΈΠΌΠ΅ Π΄Π°Π»ΠΈ ΠΏΠΎΡΡΠ°Π²ΠΊΠΈΡΠ΅ ΡΠ°Π±ΠΎΡΠ°Ρ ΠΏΡΠ°Π²ΠΈΠ»Π½ΠΎ Π½Π° Π²Π΅Π±-ΡΡΡΠ°Π½ΠΈΡΠ°ΡΠ° cloudflare.
Voila. ΠΠ°ΡΠΈΠΎΡ ΠΎΠΌΠΈΠ»Π΅Π½ ΡΡΠ°ΠΊΠ΅Ρ ΡΠ΅ ΠΎΡΠ²ΠΎΡΠΈ Π±Π΅Π· Π½ΠΈΠΊΠ°ΠΊΠΎΠ² VPN ΠΈΠ»ΠΈ ΠΏΡΠΎΠΊΡΠΈ-ΡΠ΅ΡΠ²Π΅Ρ. ΠΡΠ΄Π΅ ΡΠ΅Π³Π° Π΄Π° ΡΠ° ΠΏΠΎΠ³Π»Π΅Π΄Π½Π΅ΠΌΠ΅ ΡΠΎΠΎΠ±ΡΠ°ΡΠ°ΡΠ½Π°ΡΠ° Π΄Π΅ΠΏΠΎΠ½ΠΈΡΠ° Π²ΠΎ wireshark Π·Π° Π΄Π° Π²ΠΈΠ΄ΠΈΠΌΠ΅ ΡΡΠΎ ΡΠ΅ ΡΠ»ΡΡΠΈΠ»ΠΎ.
ΠΠ²ΠΎΡ ΠΏΠ°Ρ, ΠΏΠ°ΠΊΠ΅ΡΠΎΡ ssl ΠΊΠ»ΠΈΠ΅Π½Ρ Π·Π΄ΡΠ°Π²ΠΎ Π½Π΅ Π³ΠΎ ΡΠΎΠ΄ΡΠΆΠΈ Π΅ΠΊΡΠΏΠ»ΠΈΡΠΈΡΠ½ΠΎ Π΄ΠΎΠΌΠ΅Π½ΠΎΡ ΠΎΠ΄ΡΠ΅Π΄ΠΈΡΡΠ΅, ΡΡΠΊΡ Π½Π°ΠΌΠ΅ΡΡΠΎ ΡΠΎΠ°, ΡΠ΅ ΠΏΠΎΡΠ°Π²ΠΈ Π½ΠΎΠ²ΠΎ ΠΏΠΎΠ»Π΅ Π²ΠΎ ΠΏΠ°ΠΊΠ΅ΡΠΎΡ - encrypted_server_name - ΡΡΠΊΠ° Π΅ ΡΠΎΠ΄ΡΠΆΠ°Π½Π° Π²ΡΠ΅Π΄Π½ΠΎΡΡΠ° Π½Π° rutracker.nl ΠΈ ΡΠ°ΠΌΠΎ ΡΡΠΎΠ½ΡΠ΅Π½ ΡΠ΅ΡΠ²Π΅ΡΠΎΡ cloudflare ΠΌΠΎΠΆΠ΅ Π΄Π° Π³ΠΎ Π΄Π΅ΡΠΈΡΡΠΈΡΠ° ΠΎΠ²Π° ΠΠΎΠ»Π΅. Π Π°ΠΊΠΎ Π΅ ΡΠ°ΠΊΠ°, ΡΠΎΠ³Π°Ρ ΠΏΡΠΎΠ²Π°ΡΠ΄Π΅ΡΠΎΡ DPI Π½Π΅ΠΌΠ° Π΄ΡΡΠ³ ΠΈΠ·Π±ΠΎΡ ΠΎΡΠ²Π΅Π½ Π΄Π° Π³ΠΈ ΠΌΠΈΠ΅ ΡΠ°ΡΠ΅ΡΠ΅ ΠΈ Π΄Π° Π΄ΠΎΠ·Π²ΠΎΠ»ΠΈ ΡΠ°ΠΊΠΎΠ² ΡΠΎΠΎΠ±ΡΠ°ΡΠ°Ρ. ΠΠ΅ΠΌΠ° Π΄ΡΡΠ³ΠΈ ΠΎΠΏΡΠΈΠΈ ΡΠΎ ΡΠΈΡΡΠΈΡΠ°ΡΠ΅.
ΠΠ½Π°ΡΠΈ, ΠΏΠΎΠ³Π»Π΅Π΄Π½Π°Π²ΠΌΠ΅ ΠΊΠ°ΠΊΠΎ ΡΡΠ½ΠΊΡΠΈΠΎΠ½ΠΈΡΠ° ΡΠ΅Ρ Π½ΠΎΠ»ΠΎΠ³ΠΈΡΠ°ΡΠ° Π²ΠΎ ΠΏΡΠ΅Π»ΠΈΡΡΡΠ²Π°ΡΠΎΡ. Π‘Π΅Π³Π° Π΄Π° ΡΠ΅ ΠΎΠ±ΠΈΠ΄Π΅ΠΌΠ΅ Π΄Π° Π³ΠΎ ΠΏΡΠΈΠΌΠ΅Π½ΠΈΠΌΠ΅ Π½Π° ΠΏΠΎΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΠΈ ΠΈ ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠ½ΠΈ ΡΠ°Π±ΠΎΡΠΈ. Π ΠΏΡΠ²ΠΎ, ΡΠ΅ Π³ΠΎ Π½Π°ΡΡΠΈΠΌΠ΅ ΠΈΡΡΠΈΠΎΡ curl Π΄Π° ΠΊΠΎΡΠΈΡΡΠΈ eSNI Π·Π° Π΄Π° ΡΠ°Π±ΠΎΡΠΈ ΡΠΎ TLS 1.3, Π° Π²ΠΎ ΠΈΡΡΠΎ Π²ΡΠ΅ΠΌΠ΅ ΡΠ΅ Π²ΠΈΠ΄ΠΈΠΌΠ΅ ΠΊΠ°ΠΊΠΎ ΡΡΠ½ΠΊΡΠΈΠΎΠ½ΠΈΡΠ° ΡΠ°ΠΌΠΈΠΎΡ Π΄ΠΎΠΌΠ΅Π½ Π·Π°ΡΠ½ΠΎΠ²Π°Π½ Π½Π° eSNI.
Π€ΠΎΡΠΌΠΈΡΠ°ΡΠ΅ Π½Π° Π΄ΠΎΠΌΠ΅Π½ ΡΠΎ eSNI
ΠΠΎΡΠ°Π΄ΠΈ ΡΠ°ΠΊΡΠΎΡ ΡΡΠΎ curl ΡΠ° ΠΊΠΎΡΠΈΡΡΠΈ ΡΡΠ°Π½Π΄Π°ΡΠ΄Π½Π°ΡΠ° Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ° openssl Π·Π° ΠΏΠΎΠ²ΡΠ·ΡΠ²Π°ΡΠ΅ ΠΏΡΠ΅ΠΊΡ ΠΏΡΠΎΡΠΎΠΊΠΎΠ»ΠΎΡ https, ΠΏΡΠ²ΠΎ ΡΡΠ΅Π±Π° Π΄Π° ΠΎΠ±Π΅Π·Π±Π΅Π΄ΠΈΠΌΠ΅ ΠΏΠΎΠ΄Π΄ΡΡΠΊΠ° Π·Π° eSNI ΡΠ°ΠΌΡ. Π‘Γ¨ ΡΡΡΠ΅ Π½Π΅ΠΌΠ° ΠΏΠΎΠ΄Π΄ΡΡΠΊΠ° Π·Π° eSNI Π²ΠΎ Π³Π»Π°Π²Π½ΠΈΡΠ΅ Π³ΡΠ°Π½ΠΊΠΈ Π½Π° openssl, Π·Π°ΡΠΎΠ° ΡΡΠ΅Π±Π° Π΄Π° ΠΏΡΠ΅Π·Π΅ΠΌΠ΅ΠΌΠ΅ ΠΏΠΎΡΠ΅Π±Π½Π° Π³ΡΠ°Π½ΠΊΠ° Π½Π° openssl, Π΄Π° ΡΠ° ΠΊΠΎΠΌΠΏΠ°ΡΠ»ΠΈΡΠ°ΠΌΠ΅ ΠΈ ΠΈΠ½ΡΡΠ°Π»ΠΈΡΠ°ΠΌΠ΅.
ΠΠΎ ΠΊΠ»ΠΎΠ½ΠΈΡΠ°ΠΌΠ΅ ΡΠΊΠ»Π°Π΄ΠΈΡΡΠ΅ΡΠΎ ΠΎΠ΄ GitHub ΠΈ ΠΊΠΎΠΌΠΏΠ°ΡΠ»ΠΈΡΠ°ΠΌΠ΅ ΠΊΠ°ΠΊΠΎ ΠΈ ΠΎΠ±ΠΈΡΠ½ΠΎ:
$ git clone https://github.com/sftcd/openssl
$ cd openssl
$ ./config
$ make
$ cd esnistuff
$ make
Π‘Π»Π΅Π΄Π½ΠΎ, Π³ΠΎ ΠΊΠ»ΠΎΠ½ΠΈΡΠ°ΠΌΠ΅ ΡΠΊΠ»Π°Π΄ΠΈΡΡΠ΅ΡΠΎ ΡΠΎ curl ΠΈ ΡΠ° ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠΈΡΠ°ΠΌΠ΅ Π½Π΅Π³ΠΎΠ²Π°ΡΠ° ΠΊΠΎΠΌΠΏΠΈΠ»Π°ΡΠΈΡΠ° ΠΊΠΎΡΠΈΡΡΠ΅ΡΡΠΈ ΡΠ° Π½Π°ΡΠ°ΡΠ° ΠΊΠΎΠΌΠΏΠ°ΡΠ»ΠΈΡΠ°Π½Π° openssl Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ°:
$ cd $HOME/code
$ git clone https://github.com/niallor/curl.git curl-esni
$ cd curl-esni
$ export LD_LIBRARY_PATH=/opt/openssl
$ ./buildconf
$ LDFLAGS="-L/opt/openssl" ./configure --with-ssl=/opt/openssl --enable-esni --enable-debug
ΠΠ²Π΄Π΅ Π΅ Π²Π°ΠΆΠ½ΠΎ ΠΏΡΠ°Π²ΠΈΠ»Π½ΠΎ Π΄Π° Π³ΠΈ Π½Π°Π²Π΅Π΄Π΅ΡΠ΅ ΡΠΈΡΠ΅ Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΡΠΌΠΈ ΠΊΠ°Π΄Π΅ ΡΡΠΎ ΡΠ΅ Π½Π°ΠΎΡΠ° openssl (Π²ΠΎ Π½Π°ΡΠΈΠΎΡ ΡΠ»ΡΡΠ°Ρ, ΠΎΠ²Π° Π΅ /opt/openssl/) ΠΈ Π±ΠΈΠ΄Π΅ΡΠ΅ ΡΠΈΠ³ΡΡΠ½ΠΈ Π΄Π΅ΠΊΠ° ΠΏΡΠΎΡΠ΅ΡΠΎΡ Π½Π° ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΡΠ° ΠΏΠΎΠΌΠΈΠ½ΡΠ²Π° Π±Π΅Π· Π³ΡΠ΅ΡΠΊΠΈ.
ΠΠΊΠΎ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΡΠ°ΡΠ° Π΅ ΡΡΠΏΠ΅ΡΠ½Π°, ΡΠ΅ ΡΠ° Π²ΠΈΠ΄ΠΈΠΌΠ΅ Π»ΠΈΠ½ΠΈΡΠ°ΡΠ°:
ΠΠ ΠΠΠ£ΠΠ ΠΠΠ£ΠΠΠΠ: esni ESNI Π΅ ΠΎΠ²ΠΎΠ·ΠΌΠΎΠΆΠ΅Π½ΠΎ, Π½ΠΎ ΠΎΠ·Π½Π°ΡΠ΅Π½ΠΎ ΠΊΠ°ΠΊΠΎ ΠΠΠ‘ΠΠΠ ΠΠΠΠΠ’ΠΠΠΠ. ΠΠΎΡΠΈΡΡΠ΅ΡΠ΅ ΡΠΎ ΠΏΡΠ΅ΡΠΏΠ°Π·Π»ΠΈΠ²ΠΎΡΡ!
$ make
ΠΠΎ ΡΡΠΏΠ΅ΡΠ½ΠΎΡΠΎ Π³ΡΠ°Π΄Π΅ΡΠ΅ Π½Π° ΠΏΠ°ΠΊΠ΅ΡΠΎΡ, ΡΠ΅ ΠΊΠΎΡΠΈΡΡΠΈΠΌΠ΅ ΡΠΏΠ΅ΡΠΈΡΠ°Π»Π½Π° bash-Π΄Π°ΡΠΎΡΠ΅ΠΊΠ° ΠΎΠ΄ openssl Π·Π° ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠΈΡΠ°ΡΠ΅ ΠΈ ΠΈΠ·Π²ΡΡΡΠ²Π°ΡΠ΅ Π½Π° curl. ΠΡΠ΄Π΅ Π΄Π° Π³ΠΎ ΠΊΠΎΠΏΠΈΡΠ°ΠΌΠ΅ Π²ΠΎ Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΡΠΌΠΎΡ ΡΠΎ curl Π·Π° ΠΏΠΎΠ³ΠΎΠ΄Π½ΠΎΡΡ:
cp /opt/openssl/esnistuff/curl-esni
ΠΈ Π½Π°ΠΏΡΠ°Π²Π΅ΡΠ΅ ΡΠ΅ΡΡ https Π±Π°ΡΠ°ΡΠ΅ Π΄ΠΎ ΡΠ΅ΡΠ²Π΅ΡΠΎΡ cloudflare, Π΄ΠΎΠ΄Π΅ΠΊΠ° ΠΈΡΡΠΎΠ²ΡΠ΅ΠΌΠ΅Π½ΠΎ ΡΠ½ΠΈΠΌΠ°ΡΠ΅ DNS ΠΈ TLS ΠΏΠ°ΠΊΠ΅ΡΠΈ Π²ΠΎ Wireshark.
$ ESNI_COVER="www.hello-rkn.ru" ./curl-esni https://cloudflare.com/
ΠΠΎ ΠΎΠ΄Π³ΠΎΠ²ΠΎΡΠΎΡ Π½Π° ΡΠ΅ΡΠ²Π΅ΡΠΎΡ, ΠΏΠΎΠΊΡΠ°Ρ ΠΌΠ½ΠΎΠ³Ρ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ Π·Π° Π΄Π΅Π±Π°Π³ΠΈΡΠ°ΡΠ΅ ΠΎΠ΄ openssl ΠΈ curl, ΡΠ΅ Π΄ΠΎΠ±ΠΈΠ΅ΠΌΠ΅ ΠΈ HTTP ΠΎΠ΄Π³ΠΎΠ²ΠΎΡ ΡΠΎ ΠΊΠΎΠ΄ 301 ΠΎΠ΄ cloudflare.
HTTP/1.1 301 Moved Permanently
< Date: Sun, 03 Nov 2019 13:12:55 GMT
< Transfer-Encoding: chunked
< Connection: keep-alive
< Cache-Control: max-age=3600
< Expires: Sun, 03 Nov 2019 14:12:55 GMT
< Location: https://www.cloudflare.com/
ΡΡΠΎ ΡΠΊΠ°ΠΆΡΠ²Π° Π΄Π΅ΠΊΠ° Π½Π°ΡΠ΅ΡΠΎ Π±Π°ΡΠ°ΡΠ΅ Π±Π΅ΡΠ΅ ΡΡΠΏΠ΅ΡΠ½ΠΎ Π΄ΠΎΡΡΠ°Π²Π΅Π½ΠΎ Π΄ΠΎ ΠΎΠ΄ΡΠ΅Π΄ΠΈΡΠ½ΠΈΠΎΡ ΡΠ΅ΡΠ²Π΅Ρ, ΡΠ»ΡΡΠ½Π°ΡΠΎ ΠΈ ΠΎΠ±ΡΠ°Π±ΠΎΡΠ΅Π½ΠΎ.
Π‘Π΅Π³Π° Π΄Π° ΡΠ° ΠΏΠΎΠ³Π»Π΅Π΄Π½Π΅ΠΌΠ΅ ΡΠΎΠΎΠ±ΡΠ°ΡΠ°ΡΠ½Π°ΡΠ° Π΄Π΅ΠΏΠΎΠ½ΠΈΡΠ° Π²ΠΎ wireshark, Ρ.Π΅. ΡΡΠΎ Π³ΠΎ Π²ΠΈΠ΄Π΅ ΠΏΡΠΎΠ²Π°ΡΠ΄Π΅ΡΠΎΡ DPI Π²ΠΎ ΠΎΠ²ΠΎΡ ΡΠ»ΡΡΠ°Ρ.
ΠΠΎΠΆΠ΅ Π΄Π° ΡΠ΅ Π²ΠΈΠ΄ΠΈ Π΄Π΅ΠΊΠ° curl ΠΏΡΠ²ΠΎ ΡΠ΅ ΡΠ²ΡΡΠ΅ ΠΊΠΎΠ½ ΡΠ΅ΡΠ²Π΅ΡΠΎΡ DNS Π·Π° ΡΠ°Π²Π΅Π½ eSNI ΠΊΠ»ΡΡ Π·Π° ΡΠ΅ΡΠ²Π΅ΡΠΎΡ cloudflare - Π±Π°ΡΠ°ΡΠ΅ Π·Π° TXT DNS Π΄ΠΎ _esni.cloudflare.com (ΠΏΠ°ΠΊΠ΅Ρ Π±Ρ. 13). ΠΠΎΡΠΎΠ°, ΠΊΠΎΡΠΈΡΡΠ΅ΡΡΠΈ ΡΠ° Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ°ΡΠ° openssl, curl ΠΈΡΠΏΡΠ°ΡΠΈ Π±Π°ΡΠ°ΡΠ΅ TLS 1.3 Π΄ΠΎ ΡΠ΅ΡΠ²Π΅ΡΠΎΡ cloudflare Π²ΠΎ ΠΊΠΎΡ ΠΏΠΎΠ»Π΅ΡΠΎ SNI Π±Π΅ΡΠ΅ ΡΠΈΡΡΠΈΡΠ°Π½ΠΎ ΡΠΎ ΡΠ°Π²Π½ΠΈΠΎΡ ΠΊΠ»ΡΡ Π΄ΠΎΠ±ΠΈΠ΅Π½ Π²ΠΎ ΠΏΡΠ΅ΡΡ
ΠΎΠ΄Π½ΠΈΠΎΡ ΡΠ΅ΠΊΠΎΡ (ΠΏΠ°ΠΊΠ΅Ρ #22). ΠΠΎ, ΠΏΠΎΠΊΡΠ°Ρ ΠΏΠΎΠ»Π΅ΡΠΎ eSNI, ΠΏΠ°ΠΊΠ΅ΡΠΎΡ SSL-hello Π²ΠΊΠ»ΡΡΡΠ²Π°ΡΠ΅ ΠΈ ΠΏΠΎΠ»Π΅ ΡΠΎ Π²ΠΎΠΎΠ±ΠΈΡΠ°Π΅Π½ΠΎΡΠΎ - ΠΎΡΠ²ΠΎΡΠ΅Π½ΠΎ SNI, ΠΊΠΎΠ΅ ΠΌΠΎΠΆΠ΅ΠΌΠ΅ Π΄Π° Π³ΠΎ Π½Π°Π²Π΅Π΄Π΅ΠΌΠ΅ ΠΏΠΎ ΠΊΠΎΡ Π±ΠΈΠ»ΠΎ ΡΠ΅Π΄ΠΎΡΠ»Π΅Π΄ (Π²ΠΎ ΠΎΠ²ΠΎΡ ΡΠ»ΡΡΠ°Ρ -
ΠΠ²Π° ΠΎΡΠ²ΠΎΡΠ΅Π½ΠΎ SNI ΠΏΠΎΠ»Π΅ Π½Π΅ Π±Π΅ΡΠ΅ Π·Π΅ΠΌΠ΅Π½ΠΎ ΠΏΡΠ΅Π΄Π²ΠΈΠ΄ Π½Π° ΠΊΠΎΡ Π±ΠΈΠ»ΠΎ Π½Π°ΡΠΈΠ½ ΠΊΠΎΠ³Π° ΡΠ΅ ΠΎΠ±ΡΠ°Π±ΠΎΡΡΠ²Π°ΡΠ΅ ΠΎΠ΄ ΡΠ΅ΡΠ²Π΅ΡΠΈΡΠ΅ Π½Π° cloudflare ΠΈ ΡΠ»ΡΠΆΠ΅ΡΠ΅ ΡΠ°ΠΌΠΎ ΠΊΠ°ΠΊΠΎ ΠΌΠ°ΡΠΊΠ° Π·Π° DPI Π½Π° Π΄Π°Π²Π°ΡΠ΅Π»ΠΎΡ. Π‘Π΅ΡΠ²Π΅ΡΠΎΡ cloudflare Π³ΠΎ ΠΏΡΠΈΠΌΠΈ Π½Π°ΡΠΈΠΎΡ ΠΏΠ°ΠΊΠ΅Ρ ssl-hello, Π³ΠΎ Π΄Π΅ΡΠΈΡΡΠΈΡΠ°ΡΠ΅ eSNI, Π³ΠΎ ΠΈΠ·Π²Π°Π΄ΠΈ ΠΎΡΠΈΠ³ΠΈΠ½Π°Π»Π½ΠΈΠΎΡ SNI ΠΎΠ΄ ΡΠ°ΠΌΡ ΠΈ Π³ΠΎ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΈ ΠΊΠ°ΠΊΠΎ Π½ΠΈΡΡΠΎ Π΄Π° Π½Π΅ ΡΠ΅ ΡΠ»ΡΡΠΈΠ»ΠΎ (ΡΠΎΡ Π½Π°ΠΏΡΠ°Π²ΠΈ ΡΓ¨ ΡΠΎΡΠ½ΠΎ ΠΊΠ°ΠΊΠΎ ΡΡΠΎ Π±Π΅ΡΠ΅ ΠΏΠ»Π°Π½ΠΈΡΠ°Π½ΠΎ ΠΊΠΎΠ³Π° Π³ΠΎ ΡΠ°Π·Π²ΠΈΠ²Π°ΡΠ΅ eSNI).
ΠΠ΄ΠΈΠ½ΡΡΠ²Π΅Π½ΠΎΡΠΎ Π½Π΅ΡΡΠΎ ΡΡΠΎ ΠΌΠΎΠΆΠ΅ Π΄Π° ΡΠ΅ ΡΠ°ΡΠΈ Π²ΠΎ ΠΎΠ²ΠΎΡ ΡΠ»ΡΡΠ°Ρ ΠΎΠ΄ Π³Π»Π΅Π΄Π½Π° ΡΠΎΡΠΊΠ° Π½Π° DPI Π΅ ΠΏΡΠΈΠΌΠ°ΡΠ½ΠΎΡΠΎ Π±Π°ΡΠ°ΡΠ΅ Π·Π° DNS Π΄ΠΎ _esni.cloudflare.com. ΠΠΎ, Π³ΠΎ Π½Π°ΠΏΡΠ°Π²ΠΈΠ²ΠΌΠ΅ Π±Π°ΡΠ°ΡΠ΅ΡΠΎ Π·Π° DNS ΠΎΡΠ²ΠΎΡΠ΅Π½ΠΎ ΡΠ°ΠΌΠΎ Π·Π° Π΄Π° ΠΏΠΎΠΊΠ°ΠΆΠ΅ΠΌΠ΅ ΠΊΠ°ΠΊΠΎ ΡΡΠ½ΠΊΡΠΈΠΎΠ½ΠΈΡΠ° ΠΎΠ²ΠΎΡ ΠΌΠ΅Ρ Π°Π½ΠΈΠ·Π°ΠΌ ΠΎΠ΄Π²Π½Π°ΡΡΠ΅.
ΠΠ° ΠΊΠΎΠ½Π΅ΡΠ½ΠΎ Π΄Π° Π³ΠΎ ΠΈΠ·Π²Π»Π΅ΡΠ΅ΠΌΠ΅ ΡΠ΅ΠΏΠΈΡ ΠΎΡ ΠΎΠ΄ ΠΏΠΎΠ΄ DPI, Π³ΠΎ ΠΊΠΎΡΠΈΡΡΠΈΠΌΠ΅ Π²Π΅ΡΠ΅ ΡΠΏΠΎΠΌΠ΅Π½Π°ΡΠΈΠΎΡ ΠΌΠ΅Ρ Π°Π½ΠΈΠ·Π°ΠΌ DNS-over-HTTPS. ΠΠ°Π»ΠΎ ΠΎΠ±ΡΠ°ΡΠ½ΡΠ²Π°ΡΠ΅ - DOH Π΅ ΠΏΡΠΎΡΠΎΠΊΠΎΠ» ΠΊΠΎΡ Π²ΠΈ ΠΎΠ²ΠΎΠ·ΠΌΠΎΠΆΡΠ²Π° Π΄Π° ΡΠ΅ Π·Π°ΡΡΠΈΡΠΈΡΠ΅ ΠΎΠ΄ Π½Π°ΠΏΠ°Π΄ ΠΎΠ΄ ΡΠΎΠ²Π΅ΠΊ Π²ΠΎ ΡΡΠ΅Π΄ΠΈΠ½Π°ΡΠ° ΡΠΎ ΠΈΡΠΏΡΠ°ΡΠ°ΡΠ΅ Π½Π° Π±Π°ΡΠ°ΡΠ΅ Π·Π° DNS ΠΏΡΠ΅ΠΊΡ HTTPS.
ΠΡΠ΄Π΅ ΠΏΠΎΠ²ΡΠΎΡΠ½ΠΎ Π΄Π° Π³ΠΎ ΠΈΠ·Π²ΡΡΠΈΠΌΠ΅ Π±Π°ΡΠ°ΡΠ΅ΡΠΎ, Π½ΠΎ ΠΎΠ²ΠΎΡ ΠΏΠ°Ρ ΡΠ΅ Π΄ΠΎΠ±ΠΈΠ΅ΠΌΠ΅ ΡΠ°Π²Π½ΠΈ ΠΊΠ»ΡΡΠ΅Π²ΠΈ eSNI ΠΏΡΠ΅ΠΊΡ ΠΏΡΠΎΡΠΎΠΊΠΎΠ»ΠΎΡ https, Π° Π½Π΅ ΠΏΡΠ΅ΠΊΡ DNS:
ESNI_COVER="www.hello-rkn.ru" DOH_URL=https://mozilla.cloudflare-dns.com/dns-query ./curl-esni https://cloudflare.com/
ΠΠ΅ΠΏΠΎΠ½ΠΈΡΠ°ΡΠ° Π·Π° ΡΠΎΠΎΠ±ΡΠ°ΡΠ°Ρ Π½Π° Π±Π°ΡΠ°ΡΠ°ΡΠ° Π΅ ΠΏΡΠΈΠΊΠ°ΠΆΠ°Π½Π° Π½Π° Π΅ΠΊΡΠ°Π½ΠΎΡ ΠΏΠΎΠ΄ΠΎΠ»Ρ:
ΠΠΎΠΆΠ΅ Π΄Π° ΡΠ΅ Π²ΠΈΠ΄ΠΈ Π΄Π΅ΠΊΠ° curl ΠΏΡΠ²ΠΎ ΠΏΡΠΈΡΡΠ°ΠΏΡΠ²Π° Π΄ΠΎ ΡΠ΅ΡΠ²Π΅ΡΠΎΡ mozilla.cloudflare-dns.com ΠΏΡΠ΅ΠΊΡ ΠΏΡΠΎΡΠΎΠΊΠΎΠ»ΠΎΡ DoH (https Π²ΡΡΠΊΠ° ΡΠΎ ΡΠ΅ΡΠ²Π΅ΡΠΎΡ 104.16.249.249) Π·Π° Π΄Π° Π³ΠΈ Π΄ΠΎΠ±ΠΈΠ΅ ΠΎΠ΄ Π½ΠΈΠ² Π²ΡΠ΅Π΄Π½ΠΎΡΡΠΈΡΠ΅ Π½Π° ΡΠ°Π²Π½ΠΈΡΠ΅ ΠΊΠ»ΡΡΠ΅Π²ΠΈ Π·Π° ΡΠΈΡΡΠΈΡΠ°ΡΠ΅ SNI, Π° ΠΏΠΎΡΠΎΠ° Π΄ΠΎ Π΄Π΅ΡΡΠΈΠ½Π°ΡΠΈΡΠ°ΡΠ° ΡΠ΅ΡΠ²Π΅Ρ, ΠΊΠΎΡ ΡΠ΅ ΠΊΡΠΈΠ΅ Π·Π°Π΄ Π΄ΠΎΠΌΠ΅Π½ΠΎΡ
ΠΠΎΠΊΡΠ°Ρ Π³ΠΎΡΠ΅Π½Π°Π²Π΅Π΄Π΅Π½ΠΈΠΎΡ ΡΠ΅Π·ΠΎΠ»ΡΡΠΎΡ Π½Π° DoH mozilla.cloudflare-dns.com, ΠΌΠΎΠΆΠ΅ΠΌΠ΅ Π΄Π° ΠΊΠΎΡΠΈΡΡΠΈΠΌΠ΅ ΠΈ Π΄ΡΡΠ³ΠΈ ΠΏΠΎΠΏΡΠ»Π°ΡΠ½ΠΈ ΡΡΠ»ΡΠ³ΠΈ Π½Π° DoH, Π½Π° ΠΏΡΠΈΠΌΠ΅Ρ, ΠΎΠ΄ ΠΏΠΎΠ·Π½Π°ΡΠ°ΡΠ° Π·Π»ΠΎΠ±Π½Π° ΠΊΠΎΡΠΏΠΎΡΠ°ΡΠΈΡΠ°.
ΠΡΠ΄Π΅ Π΄Π° Π³ΠΎ ΠΈΠ·Π²ΡΡΠΈΠΌΠ΅ ΡΠ»Π΅Π΄Π½ΠΎΠ²ΠΎ Π±Π°ΡΠ°ΡΠ΅:
ESNI_COVER="www.kremlin.ru" DOH_URL=https://dns.google/dns-query ./curl-esni https://rutracker.nl/
Π Π³ΠΎ Π΄ΠΎΠ±ΠΈΠ²Π°ΠΌΠ΅ ΠΎΠ΄Π³ΠΎΠ²ΠΎΡΠΎΡ:
< HTTP/1.1 301 Moved Permanently
< Date: Sun, 03 Nov 2019 14:10:22 GMT
< Content-Type: text/html
< Transfer-Encoding: chunked
< Connection: keep-alive
< Set-Cookie: __cfduid=da0144d982437e77b0b37af7d00438b1a1572790222; expires=Mon, 02-Nov-20 14:10:22 GMT; path=/; domain=.rutracker.nl; HttpOnly; Secure
< Location: https://rutracker.nl/forum/index.php
< CF-Cache-Status: DYNAMIC
< Expect-CT: max-age=604800, report-uri="https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct"
< Server: cloudflare
< CF-RAY: 52feee696f42d891-CPH
ΠΠΎ ΠΎΠ²ΠΎΡ ΡΠ»ΡΡΠ°Ρ, ΡΠ΅ ΠΎΠ±ΡΠ°ΡΠΈΠ²ΠΌΠ΅ Π΄ΠΎ Π±Π»ΠΎΠΊΠΈΡΠ°Π½ΠΈΠΎΡ ΡΠ΅ΡΠ²Π΅Ρ rutracker.nl, ΠΊΠΎΡΠΈΡΡΠ΅ΡΡΠΈ Π³ΠΎ ΡΠ΅ΡΠ°Π²Π°ΡΠΎΡ Π½Π° DoH dns.google (ΡΡΠΊΠ° Π½Π΅ΠΌΠ° ΠΏΠ΅ΡΠ°ΡΠ½Π° Π³ΡΠ΅ΡΠΊΠ°, ΡΠ΅Π³Π° ΠΏΠΎΠ·Π½Π°ΡΠ°ΡΠ° ΠΊΠΎΡΠΏΠΎΡΠ°ΡΠΈΡΠ° ΠΈΠΌΠ° ΡΠ²ΠΎΡ Π΄ΠΎΠΌΠ΅Π½ ΠΎΠ΄ ΠΏΡΠ²ΠΎ Π½ΠΈΠ²ΠΎ) ΠΈ ΡΠ΅ ΠΏΠΎΠΊΡΠΈΠ²ΠΌΠ΅ ΡΠΎ Π΄ΡΡΠ³ Π΄ΠΎΠΌΠ΅Π½, ΠΊΠΎΡ Π΅ ΡΡΡΠΎΠ³ΠΎ Π·Π°Π±ΡΠ°Π½Π΅ΡΠΎ Π΅ Π±Π»ΠΎΠΊΠΈΡΠ°ΡΠ΅ Π½Π° ΡΠΈΡΠ΅ DPI ΠΏΠΎΠ΄ ΡΠΌΡΡΠ½Π° Π±ΠΎΠ»ΠΊΠ°. ΠΡΠ· ΠΎΡΠ½ΠΎΠ²Π° Π½Π° Π΄ΠΎΠ±ΠΈΠ΅Π½ΠΈΠΎΡ ΠΎΠ΄Π³ΠΎΠ²ΠΎΡ, ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄Π° ΡΠ°Π·Π±Π΅ΡΠ΅ΡΠ΅ Π΄Π΅ΠΊΠ° Π½Π°ΡΠ΅ΡΠΎ Π±Π°ΡΠ°ΡΠ΅ Π΅ ΡΡΠΏΠ΅ΡΠ½ΠΎ ΠΎΠ±ΡΠ°Π±ΠΎΡΠ΅Π½ΠΎ.
ΠΠ°ΠΊΠΎ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»Π½Π° ΠΏΡΠΎΠ²Π΅ΡΠΊΠ° Π΄Π°Π»ΠΈ DPI Π½Π° ΠΏΡΠΎΠ²Π°ΡΠ΄Π΅ΡΠΎΡ ΡΠ΅Π°Π³ΠΈΡΠ° Π½Π° ΠΎΡΠ²ΠΎΡΠ΅Π½ΠΈΠΎΡ SNI, ΡΡΠΎ Π³ΠΎ ΠΏΡΠ΅Π½Π΅ΡΡΠ²Π°ΠΌΠ΅ ΠΊΠ°ΠΊΠΎ ΠΏΠΎΠΊΡΠΈΡΠΈΠ΅, ΠΌΠΎΠΆΠ΅ΠΌΠ΅ Π΄Π° ΠΏΠΎΠ΄Π½Π΅ΡΠ΅ΠΌΠ΅ Π±Π°ΡΠ°ΡΠ΅ Π΄ΠΎ rutracker.nl ΠΏΠΎΠ΄ ΠΌΠ°ΡΠΊΠ°ΡΠ° Π½Π° Π½Π΅ΠΊΠΎΡ Π΄ΡΡΠ³ Π·Π°Π±ΡΠ°Π½Π΅Ρ ΡΠ΅ΡΡΡΡ, Π½Π° ΠΏΡΠΈΠΌΠ΅Ρ, Π΄ΡΡΠ³ βΠ΄ΠΎΠ±Π°Ρβ torrent tracker:
$ ESNI_COVER="rutor.info" DOH_URL=https://dns.google/dns-query ./curl-esni https://rutracker.nl/
ΠΠ΄ ΡΠ΅ΡΠ²Π΅ΡΠΎΡ Π½Π΅ΠΌΠ° Π΄Π° Π΄ΠΎΠ±ΠΈΠ΅ΠΌΠ΅ ΠΎΠ΄Π³ΠΎΠ²ΠΎΡ, Π±ΠΈΠ΄Π΅ΡΡΠΈ ... Π½Π°ΡΠ΅ΡΠΎ Π±Π°ΡΠ°ΡΠ΅ ΡΠ΅ Π±ΠΈΠ΄Π΅ Π±Π»ΠΎΠΊΠΈΡΠ°Π½ΠΎ ΠΎΠ΄ ΡΠΈΡΡΠ΅ΠΌΠΎΡ DPI.
ΠΡΠ°ΡΠΎΠΊ Π·Π°ΠΊΠ»ΡΡΠΎΠΊ Π·Π° ΠΏΡΠ²ΠΈΠΎΡ Π΄Π΅Π»
Π’Π°ΠΊΠ°, ΠΌΠΎΠΆΠ΅Π²ΠΌΠ΅ Π΄Π° ΡΠ° Π΄Π΅ΠΌΠΎΠ½ΡΡΡΠΈΡΠ°ΠΌΠ΅ ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»Π½ΠΎΡΡΠ° Π½Π° eSNI ΠΊΠΎΡΠΈΡΡΠ΅ΡΡΠΈ openssl ΠΈ curl ΠΈ ΡΠ΅ΡΡΠΈΡΠ°ΡΠ΅ Π½Π° ΡΠ°Π±ΠΎΡΠ°ΡΠ° Π½Π° ΠΏΡΠ΅Π΄Π½ΠΈΠΎΡ Π΄Π΅Π» Π½Π° Π΄ΠΎΠΌΠ΅Π½ΠΎΡ Π²ΡΠ· ΠΎΡΠ½ΠΎΠ²Π° Π½Π° eSNI. ΠΠ° ΠΈΡΡ Π½Π°ΡΠΈΠ½, ΠΌΠΎΠΆΠ΅ΠΌΠ΅ Π΄Π° Π³ΠΈ ΠΏΡΠΈΡΠΏΠΎΡΠΎΠ±ΠΈΠΌΠ΅ Π½Π°ΡΠΈΡΠ΅ ΠΎΠΌΠΈΠ»Π΅Π½ΠΈ Π°Π»Π°ΡΠΊΠΈ ΠΊΠΎΠΈ ΡΠ° ΠΊΠΎΡΠΈΡΡΠ°Ρ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ°ΡΠ° openssl Π΄Π° ΡΠ°Π±ΠΎΡΠ°Ρ βΠΏΠΎΠ΄ ΠΌΠ°ΡΠΊΠ°ΡΠ°β Π½Π° Π΄ΡΡΠ³ΠΈ Π΄ΠΎΠΌΠ΅Π½ΠΈ. ΠΠΎΠ²Π΅ΡΠ΅ Π΄Π΅ΡΠ°Π»ΠΈ Π·Π° ΠΎΠ²Π° Π²ΠΎ Π½Π°ΡΠΈΡΠ΅ ΡΠ»Π΅Π΄Π½ΠΈ Π½Π°ΠΏΠΈΡΠΈ.
ΠΠ·Π²ΠΎΡ: www.habr.com