Re: Ккириллица и сертификаты

Maxim Dounin mdounin на mdounin.ru
Вт Май 18 15:13:37 UTC 2021


Hello!

On Tue, May 18, 2021 at 10:22:57AM -0400, TheJohnnyMnemonic wrote:

> Добрый день коллеги!
> 
> Windows/nginx 1.20/php-cgi 7.3.28
> +
> https://github.com/Seb35/nginx-ssl-variables/blob/master/fastcgi_ssl_variables.conf
> 
> В конфиге присутствует
> charset utf-8;
> 
> Настроил использование сертификатов для авторизации, все прекрасно
> работает.
> Но при использовании отличных от латиницы символов (читать кириллицы и
> прочих) в сертификатах (сертификаты сгенерированы OpenSSL 1.1.1k, с
> параметром utf8), получаем на выходе нечто похожее на quoted printable(в
> принципе оно и есть, только вместо = используется \).
> 
> Сертификат
> https://i.postimg.cc/nrhxC1kn/IvanonII.jpg
> 
> nginx 
> https://i.postimg.cc/4dZsTGH7/SSL-Ivanov-II.jpg
> 
> 
> Может я что-то не верно делаю? Или это баг?

Выводимые в переменных $ssl_client_s_dn / $ssl_client_i_dn строки 
экранируются в соответствии с RFC 2253 (см. например описание 
$ssl_client_s_dn тут: http://nginx.org/r/$ssl_client_s_dn/ru), все 
символы за пределами ASCII всегда экранируются вне зависимости от 
наличия в где-либо в конфигурации указаний на используемые для 
различных целей кодовые страницы.

Если вы хотите использовать в сертификатах значения за пределами 
ASCII и при этом полученные из переменных значения использовать 
где-то, где удобнее представить, скажем, символы русского языка 
без экранирования - вы можете снять экранирование самостоятельно.  
Отмечу, впрочем, что для целей представления данных людям снимать 
экранирование более чем с одного языка за раз обычно не стоит, это 
может привести к уязвимостям.

> PS:Апач отображает все пракрасно в utf8
> 
> PSs: Так же $ssl_server_name ( fastcgi_param SSL_TLS_SNI $ssl_server_name; )
> не возвращает ничего ($server_name возвращает верный параметр), вероятно это
> тоже баг.

На скриншое у вас написано "localhost", так что скорее всего это 
вы где-то в своих оценках ошиблись.

-- 
Maxim Dounin
http://mdounin.ru/


Подробная информация о списке рассылки nginx-ru