当前位置: 首页 > java >正文

使用 keytool 在服务器上导入证书操作指南(SSL 证书验证错误处理)

使用 keytool 在服务器上导入证书操作指南(SSL 证书验证错误处理)

一、概述

本文档用于指导如何在运行 Java 应用程序的服务器上,通过keytool工具将证书导入 Java 信任库,解决因证书未被信任导致的 SSL/TLS 通信问题(如PKIX path building failed错误)。

二、操作步骤

1. 获取证书文件

需先获取目标服务器的证书文件(通常为.cer或.crt格式)。若未获取,可通过以下方式导出:

  • 浏览器导出:访问目标 HTTPS 网站 → 点击地址栏锁图标 → 查看证书 → 导出为.cer或.crt格式。

    请添加图片描述

  • OpenSSL 导出(适用于 Linux/macOS)

执行以下命令(将example.com替换为实际域名):

echo -n | openssl s_client -connect example.com:443 | sed -ne '/-BEGIN CERTIFICATE-/,/-END CERTIFICATE-/p' > certificate.crt

2. 上传证书到服务器

将获取的证书文件(如certificate.crt)上传至服务器的指定目录(示例:/tmp/certificate.crt)。

3. 执行 keytool 命令

在服务器上执行以下keytool命令(以 Linux/macOS 为例),将证书导入 Java 信任库:

keytool -import -alias myserver -keystore $JAVA_HOME/jre/lib/security/cacerts -file /tmp/certificate.crt
参数说明:
  • -alias myserver:为证书设置自定义别名(便于后续识别,可修改,如oa-server)。

http://www.xdnf.cn/news/15387.html

相关文章:

  • 【DOCKER】-4 dockerfile镜像管理
  • Python数据容器-通用功能
  • grpo nl2sql qwen3 模型强化学习训练有效果的成立条件有哪些
  • java--ThreadLocal创建以及get源码解析
  • 131. Java 泛型 - 目标类型与泛型推断
  • RNN(循环神经网络)
  • js与vue基础学习
  • Cesium源码打包
  • 从数据库到播放器:Java视频续播功能完整实现解析
  • Netty编程模型介绍
  • 聚宽sql数据库传递
  • 【WPF】WPF 自定义控件 实战详解,含命令实现
  • Node.js + Express的数据库AB View切换方案设计
  • 渗透笔记1-4
  • vim扩展
  • Spring Boot Cucumber 测试报告嵌入方法
  • Linux 基础命令详解:从入门到实践(1)
  • 微前端框架深度对决:qiankun、micro-app、wujie 技术内幕与架构选型指南
  • MFC UI表格制作从专家到入门
  • MyBatis 在执行 SQL 时找不到名为 name 的参数
  • Unsloth 实战:DeepSeek-R1 模型高效微调指南(下篇)
  • LeetCode 424.替换后的最长重复字符
  • Android展示加载PDF
  • 深入学习前端 Proxy 和 Reflect:现代 JavaScript 元编程核心
  • HarmonyOS应用无响应(AppFreeze)深度解析:从检测原理到问题定位
  • 深入理解Transformer:编码器与解码器的核心原理与实现
  • C++ STL算法
  • C++_编程提升_temaplate模板_案例
  • 传统机器学习在信用卡交易预测中的卓越表现:从R²=-0.0075到1.0000的华丽转身
  • 复习笔记 38