linux系统添加根证书 linux证书信任列表

1.linux 访问 https 证书问题

[root@boss-test-dev001-jydx ~]# curl -v https://mobile.mycard520.com.tw
* About to connect() to mobile.mycard520.com.tw port 443 (#0)
*   Trying 220.130.127.122... connected
* Connected to mobile.mycard520.com.tw (220.130.127.122) port 443 (#0)
* Initializing NSS with certpath: sql:/etc/pki/nssdb
*   CAfile: /etc/pki/tls/certs/ca-bundle.crt
  CApath: none
* Certificate is signed by an untrusted issuer: ‘CN=TWCA Secure SSL Certification Authority,OU=Secure SSL Sub-CA,O=TAIWAN-CA,C=TW‘
* NSS error -8172
* Closing connection #0
* Peer certificate cannot be authenticated with known CA certificates
curl: (60) Peer certificate cannot be authenticated with known CA certificates
More details here: http://curl.haxx.se/docs/sslcerts.html

curl performs SSL certificate verification by default, using a "bundle"
 of Certificate Authority (CA) public keys (CA certs). If the default
 bundle file isn‘t adequate, you can specify an alternate file
 using the --cacert option.
If this HTTPS server uses a certificate signed by a CA represented in
 the bundle, the certificate verification probably failed due to a
 problem with the certificate (it might be expired, or the name might
 not match the domain name in the URL).
If you‘d like to turn off curl‘s verification of the certificate, use
 the -k (or --insecure) option.


2.现有 证书twca.cer 需要添加到 linux 证书信任列表

相关证书转换参见:http://netkiller.github.io/cryptography/openssl/format.html

#转换格式 .cer 到 .pem
openssl x509 -inform der -in twca.cer  -out twca.pem

#追加到信任列表
cat twca.pem >> /etc/pki/tls/certs/ca-bundle.crt


3.添加后访问成功

[root@boss-test-dev01 certs]# curl -v https://mobile.mycard520.com.tw/billing/RECEIVE.aspx
* About to connect() to mobile.mycard520.com.tw port 443 (#0)
*   Trying 220.130.127.122... connected
* Connected to mobile.mycard520.com.tw (220.130.127.122) port 443 (#0)
* Initializing NSS with certpath: sql:/etc/pki/nssdb
*   CAfile: /etc/pki/tls/certs/ca-bundle.crt
  CApath: none
* SSL connection using SSL_RSA_WITH_RC4_128_MD5
* Server certificate:
*       subject: CN=mobile.mycard520.com.tw,OU=IT,O=Soft-World International Corporation,L=Kaohsiung,ST=Taiwan,C=TW
*       start date: Apr 29 03:21:58 2015 GMT
*       expire date: Nov 12 15:59:59 2017 GMT
*       common name: mobile.mycard520.com.tw
*       issuer: CN=TWCA Secure SSL Certification Authority,OU=Secure SSL Sub-CA,O=TAIWAN-CA,C=TW
> GET /billing/RECEIVE.aspx HTTP/1.1
> User-Agent: curl/7.19.7 (x86_64-redhat-linux-gnu) libcurl/7.19.7 NSS/3.13.1.0 zlib/1.2.3 libidn/1.18 libssh2/1.2.2
> Host: mobile.mycard520.com.tw
> Accept: */*
> 
< HTTP/1.1 200 OK
< Cache-Control: private
< Content-Type: application/json;charset=utf-8
< Date: Tue, 16 Jun 2015 02:52:04 GMT
< Content-Length: 18
< Set-Cookie: NSC_Npcjmf-XfcQ*80=ffffffffaf181f5345525d5f4f58455e445a4a423660;path=/;httponly
< 
* Connection #0 to host mobile.mycard520.com.tw left intact
* Closing connection #0
{ "ResultCode":0

参考文献:http://segmentfault.com/a/1190000002569859

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。