3 votes

CentOS 7 - N'accepte aucun certificat SSL

J'ai un problème sur ma boîte CentOS 7 pour faire tout ce qui nécessite SSL, y compris curl, wget ou la mise à jour via YUM.

Le résultat est toujours le même :

[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

Tous les certificats semblent être "marqués comme non fiables" (j'ai essayé cela avec une douzaine d'URL différentes). J'ai essayé de réintroduire les certificats CA en faisant cela :

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

mais ça n'a pas aidé. Vous avez des idées ?

3voto

Argonauts Points 4250

Je vérifierais votre installation NSS. Il est possible qu'elle soit obsolète ou corrompue d'une manière ou d'une autre.

Vérifiez la version que vous exécutez ; la dernière sur centos 7 devrait être :

nss-config version
3.21.0

Vérifiez ensuite si des paquets nss ont été modifiés / corrompus :

rpm -Vv nss-*

En fonction de vos résultats, une mise à jour ou une réinstallation du NSS peut être nécessaire.

Vous pouvez voir de façon semi-définitive s'il s'agit d'un problème avec nss en modifiant temporairement les permissions sur ce répertoire (en tant que root) :

chmod 400 /etc/pki/nssdb/*

Ensuite, lancez la commande curl en tant qu'utilisateur normal - si elle fonctionne, elle produira quelque chose comme ceci :

* 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>

Ce qui indique qu'il a juste utilisé les certs CA et non l'authentification basée sur nssdb.

Si ce n'est pas un problème lié au NSS, voici une Guide RHEL qui s'applique également à CentOS et qui permet de s'assurer que la configuration des certificats d'autorité de certification est propre. Je ne pense pas que ce lien soit derrière leur paywall ; faites-moi savoir si vous en avez besoin et ne pouvez pas y accéder.

1voto

pushrbx Points 145

Sous quel environnement exécutez-vous CentOS7 ?

Il y a un méchant bogue lié à Centos 6.8 update / NSS 3.21.0-8.el6 sur des systèmes sous virtualisation (Zen) et/ou support CPU AES. J'ai rencontré ce problème après la mise à jour de CentOS 6.8 et NSS sur des instances Rackspace et AWS t1.micro.

Je pense que vous avez un problème lié à une mise à jour NSS de Centos7.

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

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

Comment vérifier que AES-NI est supporté par mon CPU ? https://unix.stackexchange.com/questions/14077/how-to-check-that-aes-ni-is-supported-by-my-cpu

Sur 6.8 Certaines personnes ont réussi à rétrogradation du NSS en définissant la variable d'environnement : "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

Encore une fois, le code ci-dessus est pour 6.8 PAS CentOS 7

J'ai trouvé nss-3.21.0-0.3. el6_7 .x86_64 déprécié et indisponible. J'ai rechargé l'ensemble du serveur à partir d'une image de sauvegarde avant la mise à jour 6.8 et la version YUM a verrouillé nss nss-sysinit nss-tools nss-util avant de mettre à nouveau à jour.

REMARQUE : Je voudrais ajouter les informations ci-dessus sous forme de "commentaire" et non de "réponse", mais mon faible score de réputation m'empêche de commenter, je ne peux que "répondre".

J'espère que cela vous aidera.

1voto

Stryker Cain Points 11

J'ai eu un problème similaire. Je vous accorde que c'est probablement mon propre gaffau.

Il était nécessaire d'installer *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

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X