Извлечение update-ca-trust не добавляет сертификаты в ca-bundle

Primera variante

paste -d'\n' <(uniq -f2 input.txt) <(tac input.txt | uniq -f2 | tac) | uniq

Segunda variante

awk '
$3$4 == prev {
    buf = $0 ORS
}
$3$4 != prev {
    print buf $0
    prev = $3$4
    buf = ""
}
END {
    printf("%s", buf)
}' input.txt

Prueba

Entrada (complicada para probar)

2018-05-24 23:57:30 1.1.1.1 8.8.4.4
2018-05-24 23:57:32 2.2.2.2 8.8.4.4
2018-05-24 23:58:12 8.8.8.8 8.8.4.4
2018-05-24 23:58:23 8.8.8.8 8.8.4.4
2018-05-24 23:59:40 8.8.8.8 8.8.4.4
2018-05-24 23:59:51 8.8.8.8 8.8.4.4
2018-05-25 00:18:12 8.8.1.8 8.8.4.4
2018-05-25 00:18:23 8.8.1.8 8.8.4.4
2018-05-25 00:19:40 8.8.1.8 8.8.4.4
2018-05-25 00:19:51 8.8.1.8 8.8.4.4
2018-05-25 00:39:51 8.8.2.8 8.8.4.4
2018-05-25 00:49:52 8.8.2.8 8.8.4.4
2018-05-25 00:59:51 8.8.2.8 8.8.4.4

Salida (ambas variantes)

2018-05-24 23:57:30 1.1.1.1 8.8.4.4
2018-05-24 23:57:32 2.2.2.2 8.8.4.4
2018-05-24 23:58:12 8.8.8.8 8.8.4.4
2018-05-24 23:59:51 8.8.8.8 8.8.4.4
2018-05-25 00:18:12 8.8.1.8 8.8.4.4
2018-05-25 00:19:51 8.8.1.8 8.8.4.4
2018-05-25 00:39:51 8.8.2.8 8.8.4.4
2018-05-25 00:59:51 8.8.2.8 8.8.4.4
4
18.06.2019, 12:50
4 ответа

Я точно не знаю, о чем вы спрашиваете, но приведенные ниже шаги мне подходят. Я включаю «ca trust», копирую файл, извлекаю и затем проверяю.

$ update-ca-trust enable
$ cp ZScalar.pem /etc/pki/ca-trust/source/anchors/
cp: overwrite ‘/etc/pki/ca-trust/source/anchors/ZScalar.pem’? yes
$ update-ca-trust extract
$ openssl verify  ZScalar.crt
ZScalar.crt: OK

Если эти действия не помогли, опубликуйте вывод команды «openssl verify», и я смогу дать вам дальнейшие указания.

Чтобы добавить к этому, извлеченные сертификаты идут в «/etc/pki/ca -trust/extracted/openssl» или «/etc/pki/ca -trust/extracted/pem».

1
27.01.2020, 21:02

TL;DR

update-ca-trustне извлечет ваш файл сертификата в ca-bundle.crt, если это не удастся:

openssl x509 -noout -text -in <cert_file> | grep --after-context=2 "X509v3 Basic Constraints" | grep "CA:TRUE"

Я потратил на это несколько часов. Его корень находился в расширении X.509 под названием Basic Constraints , которое используется для обозначения того, принадлежит ли сертификат ЦС или нет.

Мои скромные выводы:

  1. Инструмент update-ca-bundleна самом деле представляет собой сценарий оболочки, поэтому его легко заглянуть внутрь
  2. Сценарий вызывает утилиту p11-kitнесколько раз, каждый раз используя разные фильтры и создавая разные файлы пакетов.
  3. Файл ca-bundle.crtна самом деле является ссылкой из файла tls-ca-bundle.pem, который генерируется p11-kitс использованием фильтра ca-anchors. Таким образом, он игнорирует все сертификаты, кроме «CA».
  4. Решение о том, является сертификат сертификатом CA или нет, определяется основными ограничениями расширения X.509. Таким образом можно пометить сертификат как часть ЦС.
  5. Можно вывести список всех расширений X.509, используяopenssl x509 -noout -text -in <cert_file>
  6. Таким образом, любой файл сертификата, не помеченный как часть ЦС, будет отфильтрован p11-kitи не будет экспортирован в нужный ca-bundle.crtфайл.

Не стесняйтесь исправлять это в комментариях.

8
23.07.2020, 09:32

1.получить сертификат

openssl x509 -in ca.crt -noout -text |grep -i "issue"

вывод, как показано ниже:

Issuer: CN=something_strings

2. найти проблему в /etc/pki/tls/certs/ca -bundle.crt

grep -i "something_strings" /etc/pki/tls/certs/ca-bundle.crt

вывод, как показано ниже:

something_strings

Если вы можете получить результат, ваши сертификаты успешно добавлены.

Вам необходимо перезагрузить сервер, чтобы изменения вступили в силу.

0
05.02.2021, 02:35

В моем случае это было просто потому, что я не использовалsudo

Скопируйте сертификат ЦС в /etc/pki/ca-trust/source/anchors, затем вызовите приведенную ниже команду

sudo update-ca-trust extract

После этой проверки код выхода должен быть 0

echo $?

ИЛИ имя сертификата ЦС grep в файле ниже для подтверждения

cat /etc/pki/ca-trust/extracted/pem/tls-ca-bundle.pem | grep "CA-cert-name"
0
17.06.2021, 08:15

Теги

Похожие вопросы