linux系统添加根证书 linux证书信任列表
2015-06-16 10:58
393 查看
1.linux 访问 https 证书问题
2.现有 证书twca.cer 需要添加到 linux 证书信任列表
相关证书转换参见:http://netkiller.github.io/cryptography/openssl/format.html
3.添加后访问成功
4.对于java中如果使用 HttpClient 访问https 可以使用以下命令导入到jre中的作为信任证书
keytool -import -keystore "/usr/local/jdk/jre/lib/security/cacerts" -storepass changeit -keypass changeit -alias twca -file twca.cer
过程中提示是否信任:输入yes即可
配置过程如下:
参考文献:http://segmentfault.com/a/1190000002569859
[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
4.对于java中如果使用 HttpClient 访问https 可以使用以下命令导入到jre中的作为信任证书
keytool -import -keystore "/usr/local/jdk/jre/lib/security/cacerts" -storepass changeit -keypass changeit -alias twca -file twca.cer
过程中提示是否信任:输入yes即可
Trust this certificate? [no]:
配置过程如下:
[root@boss-test-dev01 ~]# keytool -import -keystore "/usr/local/jdk/jre/lib/security/cacerts" -storepass changeit -keypass changeit -alias twca -file /root/twca.cer Owner: CN=TWCA Root Certification Authority, OU=Root CA, O=TAIWAN-CA, C=TW Issuer: CN=TWCA Root Certification Authority, OU=Root CA, O=TAIWAN-CA, C=TW Serial number: 1 Valid from: Thu Aug 28 15:24:33 CST 2008 until: Tue Dec 31 23:59:59 CST 2030 Certificate fingerprints: MD5: AA:08:8F:F6:F9:7B:B7:F2:B1:A7:1E:9B:EA:EA:BD:79 SHA1: CF:9E:87:6D:D3:EB:FC:42:26:97:A3:B5:A3:7A:A0:76:A9:06:23:48 Signature algorithm name: SHA1withRSA Version: 3 Extensions: #1: ObjectId: 2.5.29.15 Criticality=true KeyUsage [ Key_CertSign Crl_Sign ] #2: ObjectId: 2.5.29.19 Criticality=true BasicConstraints:[ CA:true PathLen:2147483647 ] #3: ObjectId: 2.5.29.14 Criticality=false SubjectKeyIdentifier [ KeyIdentifier [ 0000: 6A 38 5B 26 8D DE 8B 5A F2 4F 7A 54 83 19 18 E3 j8[&...Z.OzT.... 0010: 08 35 A6 BA .5.. ] ] Trust this certificate? [no]: yes Certificate was added to keystore
参考文献:http://segmentfault.com/a/1190000002569859
相关文章推荐
- 如何在Linux下大量屏蔽恶意IP地址(ipset)
- linux 更改mysql密码
- Linux_1.4_应用程序地址布局
- linux系统添加根证书 linux证书信任列表
- linux 安装pnp时出现了一些错误
- linux系统相关命令
- Windows/Linux下引用jar包,并用javac/java编译运行
- linux命令三:chmod
- linux防火墙iptables详细教程
- linux命令二:chgrp
- linux指令一chown
- CentOS6.x升级MySQL版本5.1到5.6
- Linux账号管理与ACL权限设置
- linux设备模型 底层
- 【解决】 CentOS6.6安装Cloudera Manager5.4的问题
- 初学linux
- linux设备模型 上层
- 生产服务器环境最小化安装后 Centos 6.5优化配置备忘
- Linux中IIC总线驱动分析
- 通过虚拟机给Linux添加一块磁盘,挂载到相应的目录下