Я хотел бы включить сшивание OCSP на моем сервере nginx. я использую
- Версия nginx: nginx / 1.6.2
- Debian
- Зашифруем сертификат
Я действительно неопытный в этом вопросе, так что это может быть тривиальной проблемой.
Вот мой конфиг безопасности nginx
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_prefer_server_ciphers on;
ssl_session_cache shared:SSL:10m;
ssl_dhparam /etc/ssl/private/dhparams_4096.pem;
Вот мой сайт / Конфигурация безопасности сервера:
add_header Strict-Transport-Security "max-age=31536000; includeSubdomains; preload";
# All files have been generated by Let's encrypt
ssl_certificate /etc/letsencrypt/live/myexample.org/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/myexample.org/privkey.pem;
# Everything below this line was added to enable OCSP stapling
# What is that (generated file) and is that required at all?
ssl_trusted_certificate /etc/letsencrypt/live/myexample.org/chain.pem;
ssl_stapling on;
ssl_stapling_verify on;
resolver 8.8.8.8 8.8.4.4 valid=300s;
resolver_timeout 5s;
Я читал, что этого будет достаточно, чтобы включить сшивание OCSP.
Но если я проверю это с помощью
openssl s_client -connect myexample.org:443 -tls1 -tlsextdebug -status
Я получу следующий ответ:
TLS server extension "renegotiation info" (id=65281), len=1
0001 - <SPACES/NULS>
TLS server extension "EC point formats" (id=11), len=4
0000 - 03 00 01 02 ....
TLS server extension "session ticket" (id=35), len=0
TLS server extension "heartbeat" (id=15), len=1
0000 - 01 .
OCSP response: no response sent
depth=1 C = US, O = Let's Encrypt, CN = Let's Encrypt Authority X1
verify error:num=20:unable to get local issuer certificate
verify return:0
---
Certificate chain
0 s:/CN=myexample.org
i:/C=US/O=Let's Encrypt/CN=Let's Encrypt Authority X1
1 s:/C=US/O=Let's Encrypt/CN=Let's Encrypt Authority X1
i:/O=Digital Signature Trust Co./CN=DST Root CA X3
---
[...]
Особенно
OCSP response: no response sent
Что я делаю неправильно?
Иерархия сертификатов:
- DST Root CA X3
- Давайте зашифруем авторитет X1
- myexample.org
- Давайте зашифруем авторитет X1
РЕДАКТИРОВАТЬ:
OCSP: URI: http://ocsp.int-x1.letsencrypt.org/
CA-Issuer: URI: http://cert.int-x1.letsencrypt.org/
fullchain.pem
иchain.pem
файлы - они одинаковые? Развеssl_trusted_certificate
директива не должна использоватьfullchain.pem
файл?Ответы:
Следуя стандартной настройке nginx, вам не нужно указывать
ssl_trusted_certificate
цепочку. Следующего должно быть достаточно:Смотрите здесь для дальнейшего контекста.
источник
Я нашел решение на основе учебника, который нашел там :
и добавьте это в конфигурацию вашего сайта / сервера
Перезагрузите ваш конфиг
ВАЖНО: Откройте браузер и зайдите на свою веб-страницу один раз.
Затем вы можете проверить свой сервер локально с помощью этого cmd:
Скорее всего, вы получите правильный ответ, как это
Не беспокойся, если получишь
в нижней части, а также , шифровать сертификат Давайте еще не в по умолчанию доверенного хранилища сертификатов. (У меня нет большого опыта SSL, поэтому я могу ошибаться)
Ошибка не появится, если вы выполните следующий cmd на сервере:
После этого вы можете протестировать свой сервер, используя:
https://www.digicert.com/help/
Имейте в виду, что сейчас ответы OCSP не будут получены тестами ssllabs. Я предполагаю, что это потому, что сертификат Let's encrypt еще не находится в хранилищах доверенных сертификатов по умолчанию.
источник