如何让局域网内其他设备访问Tomcat站点时显示SSL安全连接?
解决局域网设备访问Tomcat HTTPS站点显示不安全的问题
问题核心原因是:mkcert生成的自签名证书依赖它在本地创建的根CA证书,只有安装了该根CA的设备才会信任由它签发的证书——你的本地电脑在使用mkcert时已经自动安装了这个根CA,但局域网内其他设备没有,所以会提示连接不安全。
解决步骤如下:
1. 导出mkcert的根CA证书
- 打开终端执行命令:
mkcert -CAROOT,该命令会输出mkcert根CA文件的存储路径 - 进入该路径,找到名为
rootCA.pem的证书文件(另一个rootCA-key.pem是私钥,无需处理),将这个文件复制出来
2. 在局域网其他设备上安装根CA证书
根据设备系统不同,操作方式如下:
- Windows设备:
- 将
rootCA.pem复制到Windows电脑,双击打开文件,点击「安装证书」 - 选择「本地计算机」,点击「下一步」
- 选择「将所有证书放入下列存储」,点击「浏览」,选中「受信任的根证书颁发机构」,点击「确定」
- 完成安装后重启浏览器即可生效
- 将
- macOS设备:
- 将
rootCA.pem复制到Mac,打开「钥匙串访问」应用 - 将证书拖入「系统」钥匙串(注意不要放到「登录」钥匙串)
- 找到该证书,右键选择「显示简介」,切换到「信任」选项卡,将「使用此证书时」设置为「始终信任」
- 输入系统密码确认,重启浏览器生效
- 将
- Android设备:
- 将
rootCA.pem传输到手机,打开「设置」→「安全」→「加密与凭据」→「从存储安装」 - 找到证书文件,设置名称后选择「VPN和应用」作为用途,完成安装
- 将
- iOS设备:
- 通过邮件或AirDrop将
rootCA.pem发送到iPhone,打开附件后点击「安装」 - 进入「设置」→「通用」→「VPN与设备管理」,找到已安装的根CA,点击「信任」完成配置
- 通过邮件或AirDrop将
3. 验证效果
完成根CA安装后,在局域网设备上访问https://ipAddress:8443,浏览器会显示连接安全。
内容的提问来源于stack exchange,提问作者user20925321
相关产品推荐
相关产品推荐

