OpenSSL не может получить сертификат локального эмитента, если CAfile явно не указан
Я пытаюсь подключиться к службе push-уведомлений Apple с сервера Ubuntu для приложения. Я успешно сгенерировал комбинированный сертификат .pem, требуемый провайдером pyAPNS, которым я пользуюсь. Тем не менее, когда я пытаюсь проверить сертификат сopenssl verify
, Я получилerror 20 at 0 depth lookup:unable to get local issuer certificate
, Это работает, если я указываю центр сертификации явно (openssl verify apns.pem -CAfile entrust_2048_ca.pem
), но я уже явно установил сертификат Entrust в системе в соответствии с инструкциямиВотпод разделом "Импорт сертификата в общесистемную базу данных центра сертификации" и насколько я понимаюэта страница, все так, как и должно быть (сертификат находится в / usr / lib / ssl / certs и есть символическая ссылка на него с хэшем).
То же самое происходит, если я пытаюсь подключиться к самой APNS сopenssl s_client
: кажется, подключается нормально, если я явно укажу CAfile, а в противном случае - нет. PyAPNS сообщает, что не может подключиться к серверу APNS, и я могу предположить, что это происходит только по той же причине.
Как заставить OpenSSL по умолчанию распознавать центр сертификации Entrust без явного указания его каждый раз? Я где-то пропускаю шаг?