OCSP stapling на nginx с сертификатом StartSSL

Протокол OCSP позволяет проверить статус SSL сертификата Online. При открытии сайта браузер пытается связаться с OCSP сервером и получить информацию об этом сертификате. Это влияет на скорость работы, так как OCSP сервер может находиться намного дальше, чем сервер, где расположен сайт.

OCSP stapling на nginx с сертификатом StartSSL

OCSP stapling позволяет веб-серверу прикреплять OCSP-ответы от сервера издателя сертификата. Что положительно сказывается на скорости работы. Ведь браузеру уже не нужно подключаться непосредственно к серверу издателя.

В общем, для включения степлинга на nginx понадобится корневой сертификат издателя. Актуальный корневой сертификат StartSSL его можно скачать здесь: startssl.com/root. При этом, необходимо сначала авторизоваться в личном кабинете.

Но можно скачать и напрямую:

wget https://startssl.com/certs/ca.crt -O /etc/nginx/ssl/ca-startssl.crt

Далее в конфиге сайта с сертификатом от StartSSL (или в глобальном конфигурационном файле сервера, если все сайты имеют сертификат от StartSSL) прописываем параметр, включающий степлинг:

ssl_stapling on;

Затем параметр, указывающий на корневой сертификат, который мы скачали ранее:

ssl_trusted_certificate /etc/nginx/ssl/ca-startssl.crt;

Или даже можем указать путь к корневому сертификату, который поставляется вместе с пакетом openssl:

ssl_trusted_certificate /etc/ssl/certs/StartCom_Certification_Authority.pem;

И, самое главное, — глубина проверки цепочки сертификатов. По-умолчанию этот параметр равен 1.

ssl_verify_depth 3;

У startssl минимальная глубина — 3. Здесь проверяется корневой сертификат, промежуточный сертификат StartCom Class 1 DV Server CA и, непосредственно, сертификат вашего сайта. Без этого степлинг работать не будет.

Также во многих статьях рекомендуется указывать параметр resolver для определения IP серверов OCSP. Но у меня заработало и без него. Не забываем перезапустить nginx после изменений файлов. ;)

Проверить работу степлинга можно на сайтах: https://www.digicert.com/help/ и https://ssllabs.com.