CentOS 7 - Не приймає жодних сертифікатів SSL


2

У мене є проблема на моєму CentOS 7 поле робити що-небудь, що вимагає SSL, включаючи завиток, Wget або оновлення через YUM.

Вихід завжди однаковий:

[root@localhost ~]# curl -I -v https://google.com
* About to connect() to google.com port 443 (#0)
*   Trying 74.125.138.100...
* Connected to google.com (74.125.138.100) port 443 (#0)
* Initializing NSS with certpath: sql:/etc/pki/nssdb
*   CAfile: /etc/pki/tls/certs/ca-bundle.crt
  CApath: none
* Server certificate:
*       subject: CN=*.google.com,O=Google Inc,L=Mountain View,ST=California,C=US
*       start date: Jun 16 08:37:32 2016 GMT
*       expire date: Sep 08 08:29:00 2016 GMT
*       common name: *.google.com
*       issuer: CN=192.168.2.44,C=US
* NSS error -8172 (SEC_ERROR_UNTRUSTED_ISSUER)
* Peer's certificate issuer has been marked as not trusted by the user.
* Closing connection 0
curl: (60) Peer's certificate issuer has been marked as not trusted by the user.
More details here: http://curl.haxx.se/docs/sslcerts.html

Усі сертифікати видаються "позначеними як недостовірні" (я спробував це з десяток різних URL-адрес). Я спробував повторно ввести сертифікати ЦС:

yum --disablerepo="epel" reinstall ca-certificates

але це не допомогло. Будь-які ідеї?


Для довідки, я до сих пір upvote будь-які відповіді з корисною інформацією, але я був тільки в змозі вирішити це, перевстановивши CentOS, так що я не зможу перевірити будь-які рішення, як цей момент.
Moses

Відповіді:


2

Я б перевірив вашу nss установку. Можливо, це застаріле / пошкоджене певним чином.

Перевірте версію, яку ви використовуєте; останній на centos 7 має бути:

nss-config version
3.21.0

Потім перевірте, чи були змінені / пошкоджені пакунки nss:

rpm -Vv nss-*

Залежно від результатів може знадобитися оновлення nss або перевстановлення.

Можна напіввизначити, чи це проблема з nss, тимчасово змінюючи дозволи на цей каталог (як кореневий):

chmod 400 /etc/pki/nssdb/*

Потім виконайте команду curl як звичайний користувач - якщо він працює, він виведе щось подібне:

* Connected to google.com (172.217.4.206) port 443 (#0)
* Initializing NSS with certpath: sql:/etc/pki/nssdb
* Unable to initialize NSS database
* Initializing NSS with certpath: none
*   CAfile: /etc/pki/tls/certs/ca-bundle.crt
  CApath: none
* SSL connection using TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256
* Server certificate:
<clipped>

Що вказує на те, що він просто використовував сертифікати CA, а не nssdb аутентифікацію.

Якщо це не пов'язана з nss проблема, ось тут Керівництво RHEL що стосується CentOS, а також проходить через забезпечення чіткої конфігурації CA cert. Я не вірю, що посилання стоїть за їхньою платою; дайте мені знати, якщо вам це потрібно і не можете отримати доступ до неї.


Коли я біжу nss-config version Команда не знайдена для nss-config. Це правильна команда? Я не знайомий з NSS
Moses

Це частина nss-utils я вірю. Що робить rpm -qa | grep nss- повернення?
Argonauts

На жаль, мені не вистачило часу і довелося перевстановити CentOS на коробці. Я підвищив рейтинг, оскільки ваша відповідь, ймовірно, застосовується, але я не можу перевірити жодних додаткових даних. Спасибі, хоча!
Moses

1

У якому середовищі ви використовуєте CentOS7?

Існує неприємна помилка, пов'язана з Centos 6.8 оновлення / NSS 3.21.0-8.el6 щодо систем віртуалізації (дзен) та / або підтримки AES процесора. Виникла проблема після CentOS 6.8 & amp; Оновлення NSS на обох Rackspace & amp; Приклади AWS t1.micro.

Я вважаю, що у вас виникає проблема, пов'язана з оновленням NSS Centos7.

https://www.centos.org/forums/viewtopic.php?t=58002

https://bugs.centos.org/view.php?id=10930#c26705

Як перевірити, чи підтримує AES-NI мій процесор? https://unix.stackexchange.com/questions/14077/how-to-check-that-aes-ni-is-supported-by-my-cpu

На 6.8 Деякі люди досягли успіху зниження рівня NSS шляхом встановлення змінної середовища: "NSS_DISABLE_HW_GCM = 1"

# NSS_DISABLE_HW_AES=1
# yum downgrade nss nss-util nss-tools nss-sysinit
# yum install yum-plugin-versionlock
# yum versionlock add! nss-3.21.0-0.3.el6_7.x86_64 nss-sysinit-3.21.0-0.3.el6_7.x86_64 nss-tools-3.21.0-0.3.el6_7.x86_64 nss-util-3.21.0-0.3.el6_7.x86_64

Знову ж таки код вище для 6.8 NOT CentOS 7

Я знайшов nss-3.21.0-0.3. el6_7 .x86_64 знецінилися та недоступні. Я перезавантажив весь сервер з резервної копії зображень до оновлення 6.8 і версію YUM заблокував nss nss-sysinit nss-tools nss-util перед оновленням.

ПРИМІТКА: Я хотів би додати наведену вище інформацію як 'коментар' НЕ 'відповідь', але мій низький репертуар заважає мені коментувати, я можу тільки 'відповісти'.

Я сподіваюся, що це допоможе.


Я спробував це, але до цих пір не кістки, та ж помилка. Я закінчив перевстановлення для вирішення проблеми.
Moses

0

У мене була подібна проблема. Звичайно, це, швидше за все, моє власне гаффа.

Потрібно було встановити *nss-*

[not showing this]# nss-config version

bash: nss-config: command not found

yum install -y nss-*

Installed:
  nss-devel.x86_64 0:3.36.0-7.el7_5
  nss-pam-ldapd.x86_64 0:0.8.13-16.el7
  nss-pkcs11-devel.x86_64 0:3.36.0-7.el7_5
  nss-softokn-devel.x86_64 0:3.36.0-5.el7_5
  nss-softokn-freebl-devel.x86_64 0:3.36.0-5.el7_5
  nss-util-devel.x86_64 0:3.36.0-1.el7_5

Dependency Installed:
  nscd.x86_64 0:2.17-260.el7            nspr-devel.x86_64 0:4.19.0-1.el7_5

nss-config version

Usage: nss-config [OPTIONS] [LIBRARIES]

Options:
        [--prefix[=DIR]]
        [--exec-prefix[=DIR]]
        [--includedir[=DIR]]
        [--libdir[=DIR]]
        [--version]
        [--libs]
        [--cflags]

Dynamic Libraries:
        nss
        nssutil
        ssl
        smime

[not showing this still]# nss-config --version
3.36.0
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.