关于 Https 证书验证问题

146 天前
 z1gui
访问系统用的 https ,在系统某个页面需要加载一个其他服务商提供的 http://xxx.xxx/demo.js 。我想到的方法是通过 nginx 把 http 服务转换成内服服务器上 https 服务,然后然后页面加载内部服务器的 https 。现在有个问题,因为是自签证书,每次页面加载时候就显示不安全连接,需要点击一下才能正常加载。我不太懂证书认证这方面问题,请问大佬有什么方式不弹出不安全连接的提示,直接加载页面呢?
3080 次点击
所在节点    Web Dev
21 条回复
XiLingHost
146 天前
把用于签名的证书的根证书加入本机的可信任 CA 就行了
CnpPt
146 天前
别把别人的 js 转成内网 https 啊,要么转成公网带证书的,要么 js 直接下载放本地路径加载
viking602
146 天前
手动信任证书就好了
z1gui
146 天前
@XiLingHost 签名证书添加到访问机器的可信任 CA 么,访问机器有很多呢,怎么办呢

@CnpPt 其他服务商也是内网环境,不会在公网暴露,下载 js 到本地就怕对端有更改
galenzhao
146 天前
@z1gui 你现在不就是 访问时候手动么,那现在机器多么
ajan
146 天前
z1gui
146 天前
@galenzhao 访问时候手动,但是系统面向内部用户,每个用户访问的机器不同,有很多机器的
pony2335
146 天前
内网还要上 https 纯折磨啊
psllll
146 天前
改 hosts 把域名劫持到本地局域网 ip ,然后就能用这个域名证书了
xlzyxxn
146 天前
自签证书必须要用户自己确认承担风险吧,你想实现的东西和那些做监控 APP 的没啥区别
yinmin
146 天前
内网服务器也可以部署互联网 https 证书的,买一个 1 年期商业证书部署在内网服务器上就可以了
z1gui
146 天前
@pony2335 确实,一方面集团要求,另一方面,系统是 https ,访问不了 http 的 js 吧(这个情况我没试过

@psllll 我理解的劫持是不是跟 nginx 转一下的作用是一样的?

@xlzyxxn 是的,不过内网系统,服务商也是内部的,基本上不存在风险,应该是
psllll
146 天前
@z1gui #12 就是你把域名给解析到本地 ip ,比如 1.1.com 解析到 182.168.1.3 ,如果不能改 hosts ,可以自建 dns 服务器,这个自行谷歌百度
然后给你的 nginx 配置证书和域名,参考
```
server {
listen 443 ssl;
server_name 1.1.com;

ssl_certificate fullchain17.pem;
ssl_certificate_key privkey17.pem;
```
这样你访问 1.1.com 就能访问到本地 ip 了,而且还有域名证书默认信任
cnrting
146 天前
把這個 js 放到你的機器上不就行了
jim9606
146 天前
内网其实不影响你用公开域名和商业证书/LetsEncrypt 免费证书的,为了方便自动续期,一般会有一个只供内网开放的反代网关负责 https 包装,使用通配符证书。
现在不少开发工具都默认要 https 的,尽量别这么设计内部系统给自己添麻烦。
liuidetmks
146 天前
@pony2335 浏览器有些 api 必须要 https 才能用的
expy
146 天前
内网也可以用正规证书啊,用 dns 验证就好了。

https://letsencrypt.org/docs/challenge-types/#dns-01-challenge
realpg
146 天前
@z1gui #12
什么供应商连个 https 都没有
这是当乙方的态度吗
hanyuwei70
146 天前
如果没有什么奇怪的安全合规需求的话,直接部署 LE 的证书就行了。
比如你的内部域名是 a.example.com ,在公网用 dns 验证方式弄一个 a.example.com 的证书,然后部署进内网即可。自己做好自动化。
UnluckyNinja
146 天前
1. 直接把这段 js 打包进你的前端页面里,别用 script 标签引用的方式
2. 用 Let's Encrypt 等免费证书来签名

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/1124781

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX