您当前的位置:首页 > 计算机 > 编程开发 > Java

Java 访问 https 服务器

时间:12-14来源:作者:点击数:
城东书院 www.cdsy.xyz

现代浏览器都内嵌了一系列可信 CA 的公钥证书。如果你访问一个不可信的 https 网站(如证书是自签名的),浏览器会弹出警告,只有把要访问的网站加入 例外 目录,浏览器才运行继续访问。Java 也实现了类似机制。JDK 自带了一个 jks 格式的可信证书库文件 cacerts。Oracle JDK 和 OpenJDK 的cacerts 文件的路径不同。

  • OracleJDK 自带可信证书库文件是 $JAVA_HOME/jre/lib/security/cacerts
  • OpenJDK 自带可信证书库的文件是 /etc/pki/java/cacerts

可以这样查找可信证书库位置:

$  find / -name cacerts
/etc/pki/ca-trust/extracted/java/cacerts
/etc/pki/java/cacerts
/usr/java/jdk1.8.0_131/jre/lib/security/cacerts

前两个是同一个文件,是 OpenJDK 的可信证书库(不装 OpenJDK 也有这个文件)。第三个 OracleJDK 的可信证书库。

可以用 keytool 命令查看该文件内容,初始口令是 changeit:

$ keytool -list -keystore <cacerts-file> -storepass changeit

把 <cacerts-file> 替换成 cacerts 文件的真实路径。

cacerts 中已经内置了常见的公共 CA 证书。当 java 程序访问 https 网站时,jre 会利用 cacerts 来检验 https 网站是否可信。

城东书院 www.cdsy.xyz
方便获取更多学习、工作、生活信息请关注本站微信公众号城东书院 微信服务号城东书院 微信订阅号
推荐内容
相关内容
栏目更新
栏目热门
本栏推荐