Проблема установки корня CA на сервере Ubuntu 16.04 LTS
Я устанавливаю обратный прокси-сервер nginx на Ubuntu 16.04 LTS Server для веб-сервера.
В Ubuntu будут работать три разных Сервиса. Сервисы будут общаться друг с другом с помощью вызовов API. Точно так же клиенты (браузер / мобильный) будут взаимодействовать с сервисами, используя вызовы API.
Для проверки клиентских SSL-запросов мне нужно установить сертификаты на серверном ПК. После аутентификации только запрос будет обработан или перенаправлен для дальнейшей обработки.
Каждый Сервис у меня есть Сертификаты файлов следующего формата. Ser1_cert.crt, Ser1_key-decryp.key, Ser1_keyfile.key, Ser1_exported.pfx
Доступны файлы lly Ser2_..., Ser3_...
Для CA у меня есть CA_50EA.crt, файлы CA_50EA.pfx доступны
У меня нет ясности в том, какой формат файла сертификата я предполагаю использовать для установки сертификата.
Для установки сертификатов в Системе я выполнил следующие шаги. 1. Я скопировал файлы расширения.crt (включая файл CA) в /usr/share/ca-сертификаты, а затем запустил следующую команду. 2. sudo dpkg-переконфигурировать ca-сертификаты
Он показал интерфейс для выбора сертификатов, я выбрал все. В конце это показало нет. сертификатов добавлено.
Я правильно указал путь к сертификату в файле nginx.conf. Я скопировал файлы.crt и.key в / etc / ssl / certs / и / etc / ssl / private / соответственно.
ssl_certificate "/etc/pki/certs/XServer_certificate.crt"; ssl_certificate_key "/etc/ssl/private/XServer_decryp.key";
Теперь я попытался войти на сервер с клиента браузера, но проверка сертификата входа не удалась со следующим сообщением журнала сервера.
информация: LoginController[0]
Ошибка сертификации: невозможно получить сертификат локального эмитента
Чтобы подтвердить это еще раз, я скопировал все файлы сертификатов в каталог /usr/share/ca-Certificates (всего 14 файлов), а затем снова выполнил 'sudo dpkg-reconfigure ca-Certificates'. На этот раз тоже получаю ту же ошибку.
- В следующий раз я запустил команду "sudo update-ca-Certificates --fresh". сертификатов, установленных с предупреждением для файла ca.pem, как показано ниже.
ВНИМАНИЕ: CA_50EA.pem не содержит сертификат или CRL: пропущено 152 добавлено, 0 удалено; сделанный.
Файл.pem создается в папке / etc / ssl / certs, но я ввел только файл.crt в /usr/share/ca-сертификаты
Я попытался проверить с помощью команды ниже, там также я увидел ту же проблему, что и ниже.
openssl s_client -connect [имя сервера]: 443 -showcerts -CAfile /etc/ssl/certs/ca-certificates.crt
.................................. Проверка кода возврата: 21 (невозможно проверить первый сертификат)
Это говорит, что очень четкая проверка не удалась.
Любой шаг, который я пропускаю, каков правильный подход к этому. Увидев ошибку, я подумал, что CA установлен неправильно.
Я читаю много блогов, большинство из которых объясняют то же самое, но это не работает для меня.
Некоторое время до того, как я работал над CentOS7, я использовал следующие команды для установки сертификатов в системе. update-ca-trust force-enable, update-ca-trust extract В проверке сертификата клиентов CentOS все в порядке с вышеуказанными командами.
Любые отзывы приветствуются.
Спасибо
1 ответ
Во-первых, спасибо всем вам,
Моя проблема: Сертификат CA, который успешно устанавливается в CentOS, тот же Сертификат не устанавливается на Ubuntu 16 Server, с сообщением ниже, предупреждающим.
ВНИМАНИЕ: CA_50EA.pem не содержит сертификат или CRL: пропущено 152 добавлено, 0 удалено; сделанный.
Решение: после разных подходов не удалось определить точную причину этой проблемы. Внезапно возникла одна идея, это решило мою проблему.
Создан новый корневой CA из файла CA.pfx, используя приведенные ниже шаги URL, и он успешно установлен на Ubuntu 16 Server без каких-либо предупреждений и успешно подтвердил запросы моего клиента.
https://www.itsupportmiami.com/how-to-convert-a-pfx-to-a-seperate-key-crt-file/
Спасибо всем, кто посмотрел мой запрос и попытался ответить.