当前位置:   article > 正文

一个有关istio出现NSS error -5961的错误解决方法

nss error -5961

最近在开发istio的一个插件,在本地开发环境配置了一个gateway,前两天还能正常调用,但今天在调用时,却出现了下面的错误

  1. [root@myk8s ~]# curl -k -vvvv -H "Authorization:${token}" https://192.168.18.3:9658/api/v1/namespaces
  2. * About to connect() to 192.168.18.3 port 9658 (#0)
  3. * Trying 192.168.18.3...
  4. * Connected to 192.168.18.3 (192.168.18.3) port 9658 (#0)
  5. * Initializing NSS with certpath: sql:/etc/pki/nssdb
  6. * NSS error -5961 (PR_CONNECT_RESET_ERROR)
  7. * TCP connection reset by peer
  8. * Closing connection 0
  9. curl: (35) TCP connection reset by peer

看起来像本地证书数据库有点问题,因昨天不小心将电脑直接关闭了,起初怀疑是因电脑直接关闭,导致虚拟机中的证书数据库文件损坏,可我找到备份的虚拟机中的相同文件,日期及文件大小都一样,而且日期都是很早的,说明最近的操作跟这个数据文件没什么关系

  1. [root@myk8s ~]# ll /etc/pki/nssdb
  2. total 124
  3. -rw-r--r--. 1 root root 65536 Sep 27 2018 cert8.db
  4. -rw-r--r--. 1 root root 9216 Feb 21 2021 cert9.db
  5. -rw-r--r--. 1 root root 16384 Sep 27 2018 key3.db
  6. -rw-r--r--. 1 root root 11264 Feb 21 2021 key4.db
  7. -rw-r--r--. 1 root root 451 Sep 27 2018 pkcs11.txt
  8. -rw-r--r--. 1 root root 16384 Sep 27 2018 secmod.db

那是什么原因呢,百思不得其解,于是把istio删除掉,重新安装一遍,还是一样的错,我以为是配置了什么过滤器导致出错了,甚至找了一个干净的虚拟机,重新安装,也是同样的错误,看来不是环境的问题,折腾半天,也没有解决思路,我重新梳理了一下配置

  1. apiVersion: networking.istio.io/v1alpha3
  2. kind: VirtualService
  3. metadata:
  4. name: apiserver-6443-vs
  5. spec:
  6. gateways:
  7. - apiserver-6443-gateway
  8. hosts:
  9. - "*"
  10. tls:
  11. - match:
  12. - port: 443
  13. sniHosts:
  14. - myk8s
  15. route:
  16. - destination:
  17. host: apiserver-6443-extsvc
  18. port:
  19. number: 16443

看到这个地方 sniHosts:

- myk8s

突然想起来这个地方得使用主机名称访问,不能使用主机ip访问

  1. [root@myk8s ~]# curl -k -vvvv -H "Authorization:${token}" https://myk8s:9658/api/v1/namespaces
  2. * About to connect() to myk8s port 9658 (#0)
  3. * Trying 192.168.18.3...
  4. * Connected to myk8s (192.168.18.3) port 9658 (#0)
  5. * Initializing NSS with certpath: sql:/etc/pki/nssdb
  6. * skipping SSL peer certificate verification
  7. * NSS: client certificate not found (nickname not specified)
  8. * Server certificate:
  9. * subject: CN=admin
  10. * start date: Mar 02 18:57:51 2022 GMT
  11. * expire date: Feb 06 18:57:51 2122 GMT
  12. * common name: admin
  13. * issuer: CN=192.168.18.3
  14. > GET /api/v1/namespaces HTTP/1.1
  15. > User-Agent: curl/7.29.0
  16. > Host: myk8s:9658
  17. > Accept: */*
  18. >
  19. < HTTP/1.1 401 Unauthorized
  20. < Audit-Id: f9033ef5-cf3f-41ca-94fe-b8e0ce062a83
  21. < Cache-Control: no-cache, private
  22. < Content-Type: application/json
  23. < Date: Thu, 09 Feb 2023 02:48:29 GMT
  24. < Content-Length: 157
  25. <
  26. {
  27. "kind": "Status",
  28. "apiVersion": "v1",
  29. "metadata": {},
  30. "status": "Failure",
  31. "message": "Unauthorized",
  32. "reason": "Unauthorized",
  33. "code": 401
  34. * Connection #0 to host myk8s left intact

看,正常了,就是这么简单,但在度娘上,搜索NSS error -5961这个错误,多数据是加入证书信任,但从证书数据库中都没更改文件修改日期,说明跟它没关系。

记录解决此过程,也希望遇能给遇到此问题的同学们提供解决问题的思路

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/正经夜光杯/article/detail/915711
推荐阅读
相关标签
  

闽ICP备14008679号