<div dir="ltr"><div dir="ltr"><br><br><div class="gmail_quote"><div dir="ltr">вт, 11 сент. 2018 г. в 19:40, Gena Makhomed <<a href="mailto:gmm@csdoc.com">gmm@csdoc.com</a>>:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">On 11.09.2018 15:38, Maxim Dounin wrote:<br>
<br>
>>> Лучше всего - сделать так, чтобы OpenSSL научился проверять<br>
>>> OCSP-ответы не полной цепочкой сертификатов вплоть до доверенного<br>
>>> root'а, а ровно так, как и должно быть по стандарту - с помощью<br>
>>> одного только сертификата issuer'а.  Тогда проблема исчезнет.<br>
<br>
>> А разработчики OpenSSL разве знают об этой проблеме?<br>
>> На гитхабе <a href="https://github.com/openssl/openssl/issues" rel="noreferrer" target="_blank">https://github.com/openssl/openssl/issues</a><br>
>> я не нашел issue в которой бы описывалась эта проблема.<br>
<br>
> О проблеме писалось ещё до того, как OpenSSL переехал на github,<br>
> и вроде бы даже был тикет на <a href="http://rt.openssl.org" rel="noreferrer" target="_blank">rt.openssl.org</a> про это.<br>
> Но я не следил, и не планирую.<br>
<br>
> Этим летом в кои-то веки документировали саму функцию<br>
> OCSP_basic_verify(), используемую для проверки OCSP-ответов.  И<br>
> если самого факта недостаточно для понимания проблемы, то стоит<br>
> прочитать эту самую документацию, она доставляет.<br>
<br>
Почитал документацию<br>
<a href="https://www.openssl.org/docs/manmaster/man3/OCSP_basic_verify.html" rel="noreferrer" target="_blank">https://www.openssl.org/docs/manmaster/man3/OCSP_basic_verify.html</a><br>
там говорится о флаге OCSP_TRUSTOTHER, смысл примерно такой:<br>
<br>
: ... or if the signer certificate was found in certs and<br>
: the flags contain OCSP_TRUSTOTHER. Otherwise the function<br>
: continues by validating the signer certificate.<br>
<br>
О том же написано и в CHANGELOG:<br>
<br>
   *) New OCSP verify flag OCSP_TRUSTOTHER. When set the "other"<br>
      certificates passed by the function are trusted implicitly.<br>
      If any of them signed the response then it is assumed<br>
      to be valid and is not verified.<br>
<br>
Насколько я понимаю, это и есть та самая проверка с помощью<br>
одного только сертификата issuer'а, о которой Вы говорите?<br>
<br>
Если это то, что надо, то сейчас уже ничто не мешает сделать<br>
в nginx директиву ocsp_stapling_verify включенной по-умолчанию?<br>
И для ее работы не нужно будет прописывать ssl_trusted_certificate?<br>
<br>
>> Но даже если вдруг новые версии OpenSSL научатся проверять OCSP-ответы<br>
>> с помощью одного только сертификата issuer'а - проблема не исчезнет.<br>
<br>
>> Потому что останется огромное количество операционных систем,<br>
>> в которых будет установлена старая версия OpenSSL, например,<br>
>> CentOS/RHEL. Новые версии этой системы выходят очень редко.<br>
<br>
>> И потребуется как минимум 5-10 лет, прежде чем новые версии<br>
>> OpenSSL вытеснят старые версии OpenSSL из всех дистрибутивов.<br>
<br>
> Никто не мешает не использовать OCSP stapling.  Либо же не<br>
> использовать ocsp_stapling_verify.  При разумном поведении<br>
> браузеров - от отсутствия проверки на стороне nginx'а проблем быть<br>
> не должно.  Если же браузеры по какой-то причине предпочитают<br>
> вести себя неразумно - что ж, это их выбор.<br>
<br>
ocsp_stapling_verify в nginx можно без проблем использовать<br>
и прямо сейчас, только для этого надо прописать дополнительно<br>
ssl_trusted_certificate /etc/letsencrypt/live/<a href="http://example.com/chain.pem" rel="noreferrer" target="_blank">example.com/chain.pem</a>;<br>
<br>
Насколько я понял из предыдущего обсуждения, нет разумных причин,<br>
чтобы выключать использование OCSP stapling и ocsp_stapling_verify.<br>
<br>
И вместе с тем, есть причины, чтобы их включать:<br>
OCSP stapling - сайт у клиентов будет открываться быстрее.<br>
ocsp_stapling_verify - не будет проблем с неразумными браузерами.<br></blockquote><div><br></div><div><br></div><div>когда OCSP сломался у Lets Encrypt, помнится, проблемы были у тех, у кого они не должны были быть</div><div><br></div><div><a href="https://community.letsencrypt.org/t/what-if-lets-encrypt-goes-down-ocsp-stapling/22369/2">https://community.letsencrypt.org/t/what-if-lets-encrypt-goes-down-ocsp-stapling/22369/2</a><br></div><div><br></div><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
<br>
-- <br>
Best regards,<br>
  Gena<br>
<br>
_______________________________________________<br>
nginx-ru mailing list<br>
<a href="mailto:nginx-ru@nginx.org" target="_blank">nginx-ru@nginx.org</a><br>
<a href="http://mailman.nginx.org/mailman/listinfo/nginx-ru" rel="noreferrer" target="_blank">http://mailman.nginx.org/mailman/listinfo/nginx-ru</a></blockquote></div></div></div>