ΠΊΠΎΡΠΈΠ³ΠΈΡΠ°Ρ ΡΠ΅Π»ΠΈΠ· Ρ ΠΎΡΡΡΡΠ°Π½ΡΠ²Π°Π½Π΅ Π½Π° ΠΊΡΠΈΡΠΈΡΠ½Π°ΡΠ° (), ΠΊΠΎΡΡΠΎ Π² ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΡΡΠ° ΠΏΠΎ ΠΏΠΎΠ΄ΡΠ°Π·Π±ΠΈΡΠ°Π½Π΅ ΠΌΠΎΠΆΠ΅ Π΄Π° Π΄ΠΎΠ²Π΅Π΄Π΅ Π΄ΠΎ ΠΎΡΠ΄Π°Π»Π΅ΡΠ΅Π½ΠΎ ΠΈΠ·ΠΏΡΠ»Π½Π΅Π½ΠΈΠ΅ Π½Π° ΠΊΠΎΠ΄ ΠΎΡ Ρ Π°ΠΊΠ΅ΡΠ° Ρ ΠΏΡΠ°Π²Π° root. ΠΡΠΎΠ±Π»Π΅ΠΌΡΡ ΡΠ΅ ΠΏΡΠΎΡΠ²ΡΠ²Π° ΡΠ°ΠΌΠΎ ΠΏΡΠΈ Π²ΠΊΠ»ΡΡΠ΅Π½Π° ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π½Π° TLS ΠΈ ΡΠ΅ Π΅ΠΊΡΠΏΠ»ΠΎΠ°ΡΠΈΡΠ° ΡΡΠ΅Π· ΠΏΡΠ΅Π΄Π°Π²Π°Π½Π΅ Π½Π° ΡΠΏΠ΅ΡΠΈΠ°Π»Π½ΠΎ ΠΎΡΠΎΡΠΌΠ΅Π½ ΠΊΠ»ΠΈΠ΅Π½ΡΡΠΊΠΈ ΡΠ΅ΡΡΠΈΡΠΈΠΊΠ°Ρ ΠΈΠ»ΠΈ ΠΌΠΎΠ΄ΠΈΡΠΈΡΠΈΡΠ°Π½ΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ Π² SNI. Π£ΡΠ·Π²ΠΈΠΌΠΎΡΡΡΠ° ΠΎΡ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΡΡΠ° Qualys.
ΠΡΠΎΠ±Π»Π΅ΠΌΠ° Π² ΠΎΠ±ΡΠ°Π±ΠΎΡΡΠΈΠΊΠ° Π½Π° Π΅ΠΊΡΠ°Π½ΠΈΡΠ°Π½Π΅ Π½Π° ΡΠΏΠ΅ΡΠΈΠ°Π»Π½ΠΈ ΡΠΈΠΌΠ²ΠΎΠ»ΠΈ Π² Π½ΠΈΠ· ( ΠΎΡ string.c) ΠΈ Π΅ ΠΏΡΠΈΡΠΈΠ½Π΅Π½Π° ΠΎΡ ΡΠ°ΠΊΡΠ°, ΡΠ΅ ΡΠΈΠΌΠ²ΠΎΠ»ΡΡ β\β Π² ΠΊΡΠ°Ρ Π½Π° Π½ΠΈΠ·Π° ΡΠ΅ ΠΈΠ½ΡΠ΅ΡΠΏΡΠ΅ΡΠΈΡΠ° ΠΏΡΠ΅Π΄ΠΈ Π½ΡΠ»Π΅Π²ΠΈΡ ΡΠΈΠΌΠ²ΠΎΠ» (β\0β) ΠΈ Π³ΠΎ Π΅ΠΊΡΠ°Π½ΠΈΡΠ°. ΠΡΠΈ Π΅ΠΊΡΠ°Π½ΠΈΡΠ°Π½Π΅ΡΠΎ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»Π½ΠΎΡΡΡΠ° β\β ΠΈ ΡΠ»Π΅Π΄Π²Π°ΡΠΈΡ Π½ΡΠ»Π΅Π² ΠΊΠΎΠ΄ Π½Π° ΠΊΡΠ°Ρ Π½Π° Π½ΠΈΠ·Π° ΡΠ΅ ΠΎΠ±ΡΠ°Π±ΠΎΡΠ²Π°Ρ ΠΊΠ°ΡΠΎ Π΅Π΄ΠΈΠ½ ΡΠΈΠΌΠ²ΠΎΠ» ΠΈ ΡΠΊΠ°Π·Π°ΡΠ΅Π»ΡΡ ΡΠ΅ ΠΈΠ·ΠΌΠ΅ΡΡΠ²Π° Π½Π° Π΄Π°Π½Π½ΠΈ ΠΈΠ·Π²ΡΠ½ Π³ΡΠ°Π½ΠΈΡΠΈΡΠ΅ Π½Π° Π½ΠΈΠ·Π°, ΠΊΠΎΠΈΡΠΎ ΡΠ΅ ΠΈΠ½ΡΠ΅ΡΠΏΡΠ΅ΡΠΈΡΠ°Ρ ΠΊΠ°ΡΠΎ Π½Π΅Π³ΠΎΠ²ΠΎ ΠΏΡΠΎΠ΄ΡΠ»ΠΆΠ΅Π½ΠΈΠ΅.
ΠΠΎΠ΄ΡΡ, ΠΊΠΎΠΉΡΠΎ Π²ΠΈΠΊΠ° string_interpret_escape(), Π·Π°Π΄Π΅Π»Ρ Π±ΡΡΠ΅Ρ Π·Π° ΡΡΠΎΠΊΠ°, ΡΡΠΊΠΎΠ²ΠΎΠ΄Π΅ΠΉΠΊΠΈ ΡΠ΅ ΠΎΡ Π΄Π΅ΠΉΡΡΠ²ΠΈΡΠ΅Π»Π½ΠΈΡ ΡΠ°Π·ΠΌΠ΅Ρ, ΠΈ ΠΏΠΎΡΡΠ°Π²Π΅Π½ΠΈΡΡ ΡΠΊΠ°Π·Π°ΡΠ΅Π» ΡΠ΅ ΠΎΠΊΠ°Π·Π²Π° Π² Π·ΠΎΠ½Π° ΠΈΠ·Π²ΡΠ½ Π³ΡΠ°Π½ΠΈΡΠΈΡΠ΅ Π½Π° Π±ΡΡΠ΅ΡΠ°. Π‘ΡΠΎΡΠ²Π΅ΡΠ½ΠΎ, ΠΏΡΠΈ ΠΎΠΏΠΈΡ Π·Π° ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠ° Π½Π° Π²Ρ ΠΎΠ΄Π½ΠΈΡ Π½ΠΈΠ· Π²ΡΠ·Π½ΠΈΠΊΠ²Π° ΡΠΈΡΡΠ°ΡΠΈΡ Π½Π° ΡΠ΅ΡΠ΅Π½Π΅ Π½Π° Π΄Π°Π½Π½ΠΈ ΠΎΡ Π·ΠΎΠ½Π° ΠΈΠ·Π²ΡΠ½ Π³ΡΠ°Π½ΠΈΡΠΈΡΠ΅ Π½Π° Π·Π°Π΄Π΅Π»Π΅Π½ΠΈΡ Π±ΡΡΠ΅Ρ, Π° ΠΎΠΏΠΈΡΡΡ Π·Π° Π·Π°ΠΏΠΈΡ Π½Π° ΡΠ°Π·Π΅ΠΊΡΠ°Π½ΠΈΡ Π½ΠΈΠ· ΠΌΠΎΠΆΠ΅ Π΄Π° Π΄ΠΎΠ²Π΅Π΄Π΅ Π΄ΠΎ Π·Π°ΠΏΠΈΡ ΠΈΠ·Π²ΡΠ½ Π±ΡΡΠ΅ΡΠ°.
Π ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΡΡΠ° ΠΏΠΎ ΠΏΠΎΠ΄ΡΠ°Π·Π±ΠΈΡΠ°Π½Π΅ ΡΡΠ·Π²ΠΈΠΌΠΎΡΡΡΠ° ΠΌΠΎΠΆΠ΅ Π΄Π° Π±ΡΠ΄Π΅ Π΅ΠΊΡΠΏΠ»ΠΎΠ°ΡΠΈΡΠ°Π½Π° ΡΡΠ΅Π· ΠΏΡΠ΅Π΄Π°Π²Π°Π½Π΅ Π½Π° ΡΠΏΠ΅ΡΠΈΠ°Π»Π½ΠΎ ΠΎΡΠΎΡΠΌΠ΅Π½ΠΈ Π΄Π°Π½Π½ΠΈ Π² SNI ΠΏΡΠΈ ΡΡΡΠ°Π½ΠΎΠ²ΡΠ²Π°Π½Π΅ Π½Π° Π·Π°ΡΠΈΡΠ΅Π½ΠΎ ΡΠ²ΡΡΠ·Π²Π°Π½Π΅ Ρ ΡΡΡΠ²ΡΡΠ°. ΠΡΠΎΠ±Π»Π΅ΠΌΡΡ ΡΡΡΠΎ ΡΠ°ΠΊΠ° ΠΌΠΎΠΆΠ΅ Π΄Π° Π±ΡΠ΄Π΅ Π΅ΠΊΡΠΏΠ»ΠΎΠ°ΡΠΈΡΠ°Π½ ΡΡΠ΅Π· ΠΌΠΎΠ΄ΠΈΡΠΈΠΊΠ°ΡΠΈΡ Π½Π° ΡΡΠΎΠΉΠ½ΠΎΡΡΠΈΡΠ΅ peerdn Π² ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΈ, Π½Π°ΡΡΡΠΎΠ΅Π½ΠΈ Π·Π° ΡΠ΄ΠΎΡΡΠΎΠ²Π΅ΡΡΠ²Π°Π½Π΅ ΠΏΠΎ ΠΊΠ»ΠΈΠ΅Π½ΡΡΠΊΠΈ ΡΠ΅ΡΡΠΈΡΠΈΠΊΠ°Ρ, ΠΈΠ»ΠΈ ΠΏΡΠΈ ΠΈΠΌΠΏΠΎΡΡΠΈΡΠ°Π½Π΅ Π½Π° ΡΠ΅ΡΡΠΈΡΠΈΠΊΠ°ΡΠΈ. ΠΡΠ°ΠΊΠ°ΡΠ° ΡΡΠ΅Π· SNI ΠΈ peerdn Π΅ Π²ΡΠ·ΠΌΠΎΠΆΠ½Π° ΠΎΡ Π²Π΅ΡΡΠΈΡ , Π² ΠΊΠΎΡΡΠΎ ΡΡΠ½ΠΊΡΠΈΡΡΠ° string_unprinting() Π΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π° Π·Π° ΡΠ°Π·Π΅ΠΊΡΠ°Π½ΠΈΡΠ°Π½Π΅ Π½Π° ΡΡΠ΄ΡΡΠΆΠ°Π½ΠΈΠ΅ΡΠΎ peerdn ΠΈ SNI.
ΠΠ° Π°ΡΠ°ΠΊΠ° ΡΡΠ΅Π· SNI Π΅ ΠΏΠΎΠ΄Π³ΠΎΡΠ²Π΅Π½ ΠΏΡΠΎΡΠΎΡΠΈΠΏ Π½Π° Π΅ΠΊΡΠΏΠ»ΠΎΠΈΡΠ°, ΡΠ°Π±ΠΎΡΠ΅Ρ Π½Π° Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡΠΈΡΠ΅ i386 ΠΈ amd64 Π² Linux ΡΠΈΡΡΠ΅ΠΌΠΈ Ρ Glibc. Π Π΅ΠΊΡΠΏΠ»ΠΎΠΈΡΠ° ΡΠ΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° Π½Π°Π»ΠΈΠ²Π°Π½Π΅ Π½Π° Π΄Π°Π½Π½ΠΈ Π²ΡΡΡ Ρ ΠΎΠ±Π»Π°ΡΡ ΠΎΡ ΠΊΡΠΏΡΠΈΠ½Π°ΡΠ°, ΠΊΠΎΠ΅ΡΠΎ Π²ΠΎΠ΄ΠΈ Π΄ΠΎ ΠΏΡΠ΅Π·Π°ΠΏΠΈΡΠ²Π°Π½Π΅ Π½Π° ΠΏΠ°ΠΌΠ΅ΡΡΠ°, Π² ΠΊΠΎΡΡΠΎ ΡΠ΅ ΡΡΡ ΡΠ°Π½ΡΠ²Π° ΠΈΠΌΠ΅ΡΠΎ Π½Π° ΡΠ°ΠΉΠ»Π° Π·Π° Π»ΠΎΠ³. ΠΠΌΠ΅ΡΠΎ Π½Π° ΡΠ°ΠΉΠ»Π° ΡΠ΅ Π·Π°ΠΌΠ΅Π½Ρ Ρ Β«/..../..../..../..../..../..../..../..../etc/passwdΒ». ΠΡΠ²Π΅Π½ ΡΠΎΠ²Π° ΡΠ΅ ΠΏΡΠ΅Π·Π°ΠΏΠΈΡΠ²Π° ΠΏΡΠΎΠΌΠ΅Π½Π»ΠΈΠ²Π°ΡΠ° Ρ Π°Π΄ΡΠ΅ΡΠ° Π½Π° ΠΏΠΎΠ΄Π°ΡΠ΅Π»Ρ, ΠΊΠΎΠΉΡΠΎ ΠΏΡΡΠ²ΠΎΠ½Π°ΡΠ°Π»Π½ΠΎ ΡΠ΅ Π·Π°ΠΏΠΈΡΠ²Π° Π² Π»ΠΎΠ³Π°, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ²Π°ΠΉΠΊΠΈ Π΄ΠΎΠ±Π°Π²ΡΠ½Π΅ Π½Π° Π½ΠΎΠ² ΠΏΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π» Π² ΡΠΈΡΡΠ΅ΠΌΠ°ΡΠ°.
ΠΠ·Π΄Π°Π½ΠΈΡ Π½Π° ΠΏΠ°ΠΊΠ΅ΡΠΈ Ρ ΠΎΡΡΡΡΠ°Π½Π΅Π½ΠΈ ΡΡΠ·Π²ΠΈΠΌΠΎΡΡΠΈ ΡΠ° ΠΏΡΠ±Π»ΠΈΠΊΡΠ²Π°Π½ΠΈ ΠΎΡ ΡΠ°Π·ΠΏΡΠΎΡΡΡΠ°Π½ΠΈΡΠ΅Π»ΠΈΡΠ΅ , , , ΠΈ . RHEL ΠΈ CentOS ΠΏΡΠΎΠ±Π»Π΅ΠΌ , ΡΡΠΉ ΠΊΠ°ΡΠΎ Exim Π½Π΅ Π΅ Π²ΠΊΠ»ΡΡΠ΅Π½ Π² ΡΠ΅Ρ Π½ΠΈΡ ΠΎΡΠ½ΠΎΠ²Π΅Π½ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ (Π² Π°ΠΊΡΡΠ°Π»ΠΈΠ·Π°ΡΠΈΡ , Π½ΠΎ Π²ΡΠ΅ ΠΎΡΠ΅ Π² ΠΏΡΠ±Π»ΠΈΡΠ½ΠΈΡ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ). ΠΡΠΎΠ±Π»Π΅ΠΌΡΡ Π² ΠΊΠΎΠ΄Π° Π½Π° Exim ΡΠ΅ ΠΎΡΡΡΡΠ°Π½ΡΠ²Π° Ρ Π΅Π΄ΠΈΠ½ΠΈΡΠ΅Π½ , ΠΊΠΎΠΉΡΠΎ Π΄Π΅Π°ΠΊΡΠΈΠ²ΠΈΡΠ° Π΅ΠΊΡΠ°Π½ΠΈΡΠ°Π½Π΅ΡΠΎ Π½Π° ΠΎΠ±ΡΠ°ΡΠ½ΠΈΡ Π½Π°ΠΊΠ»ΠΎΠ½, Π°ΠΊΠΎ Π΅ Π² ΠΊΡΠ°Ρ Π½Π° ΡΠ΅Π΄Π°.
ΠΠ°ΡΠΎ ΠΎΠ±Ρ
ΠΎΠ΄Π΅Π½ ΠΌΠ°ΡΡΡΡΡ Π·Π° Π±Π»ΠΎΠΊΠΈΡΠ°Π½Π΅ Π½Π° ΡΡΠ·Π²ΠΈΠΌΠΎΡΡΡΠ°, ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄Π° Π΄Π΅Π°ΠΊΡΠΈΠ²ΠΈΡΠ°ΡΠ΅ ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ°ΡΠ° Π½Π° TLS ΠΈΠ»ΠΈ Π΄Π° Π΄ΠΎΠ±Π°Π²ΠΈΡΠ΅ Π²
ΡΠ΅ΠΊΡΠΈΡΡΠ° ACL Β«acl_smtp_mailΒ»:
deny condition = ${if eq{\\}{${substr{-1}{1}{$tls_in_sni}}}}
deny condition = ${if eq{\\}{${substr{-1}{1}{$tls_in_peerdn}}}}
ΠΠ·ΡΠΎΡΠ½ΠΈΠΊ: opennet.ru
