Список усіх доступних сертифікатів ssl ca


35

Мій клієнт git стверджує

error: Peer's Certificate issuer is not recognized.

Це означає, що він не може знайти відповідний ключ сервера ssl в глобальному системному ключі. Я хочу перевірити це, переглянувши список усіх доступних для системи ключів ssl у системі gentoo linux. Як я можу отримати цей список?

Відповіді:


65

Це не SSL ключі, які ви хочете, це сертифікати, а точніше їх сертифікати.

Ви можете спробувати:

awk -v cmd='openssl x509 -noout -subject' '
    /BEGIN/{close(cmd)};{print | cmd}' < /etc/ssl/certs/ca-certificates.crt

Щоб отримати "предмет" кожного сертифіката ЦС в /etc/ssl/certs/ca-certificates.crt

Будьте обережні, що іноді ви отримуєте цю помилку, коли сервери SSL забувають надати проміжні сертифікати.

Використовуйте openssl s_client -showcerts -connect the-git-server:443для отримання списку відправлених сертифікатів.


2
//, Це не працює на CEntOS 6, але я додав відповідь для CEntOS 6 тут: unix.stackexchange.com/a/363309/48498
Натан Басанес

1
Список з trust listз пакета p11-набору , по суті , те ж саме?
Пабло А

15

Не впевнені в Gentoo, але більшість дистрибутивів посилають свої сертифікати на посилання в загальній системі /etc/ssl/certs.

  • Ключові файли входять /etc/ssl/private
  • Фактичні файли, що надаються системою, розташовані за адресою /usr/share/ca-certificates
  • Спеціальні сертифікати входять /usr/local/share/ca-certificates

Щоразу, коли ви кладете сертифікат в один із згаданих шляхів, запустіть update-ca-certificatesоновлення /etc/ssl/certsсписків.


1
/etc/ssl/certs- це правильна папка в gentoo. Але файли не дуже добре читати для людських очей.
Йонас Штейн

3
Це update-ca-certificatesз додатковим s(не може змінити це сам, так як це всього лише один-символ редагування).
Славен Резіч

@SlavenRezic - хтось це виправив.
Крейг С. Андерсон

3

У мене була вимога перерахувати всі серти на нашому сервері та повідомити, якщо вони закінчуються. Ми придумали цю команду:

locate .pem | grep "\.pem$" | xargs -I{} openssl x509 -issuer -enddate -noout -in {}
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.