Ответчик opencl / libressl ocsp пропустил ответ для просроченных / отозванных сертификатов
По какой-то причине респондент OpenSSL OCSP, по-видимому, не предоставляет никаких ответов для просроченных или отозванных сертификатов. Для действительных сертификатов все хорошо.
Протестировано это на LibreSSL 2.2.7 (на MacOS). Для справки, я также проверил это на очень старом OpenSSL 0.9.8f, та же проблема.
Настроить
Файл index.txt (поля разделены табуляцией):
V 20991231235959Z 32F31 unknown /CN=valid01
V 20991231235959Z 32F32 unknown /CN=valid02
V 20991231235959Z 32F33 unknown /CN=valid03
E 20171231235959Z 32F34 unknown /CN=expired01
E 20171231235959Z 32F35 unknown /CN=expired02
E 20171231235959Z 32F36 unknown /CN=expired03
R 20171231235959Z 20160631235959Z 32F37 unknown /CN=revoked01
R 20171231235959Z 20160631235959Z 32F38 unknown /CN=revoked02
R 20171231235959Z 20160631235959Z 32F39 unknown /CN=revoked03
V 20991231235959Z 32F3A unknown /CN=valid04
Файл index.txt.attr:
unique_subject = yes
Файл ca.pem:
(Please create your own, self-signed ca with key)
Запустите OCSP респондент, используя
openssl ocsp -index index.txt -port 8084 -rkey ca.pem -rsigner ca.pem -CA ca.pem -text -resp_no_certs
Тестовое задание
Запрос действующего сертификата (здесь нет проблем):
$ openssl ocsp -issuer ca.pem -serial 0x32f31 -url http://localhost:8084 -noverify
0x32f31: good
This Update: Sep 27 12:46:06 2018 GMT
Срок действия запроса истек или отозвано (неправильный ответ):
$ openssl ocsp -issuer ca.pem -serial 0x32f36 -url http://localhost:8084 -noverify
0x32f36: ERROR: No Status found.
Что пошло не так?
1 ответ
Нашел проблему. Похоже, что OpenSSL требует, чтобы временные метки в индексном файле имели двухзначную форму года вместо четырехзначной. Год 2000 проблема кого-нибудь? Очевидно нет.