istio 网关开启https访问链接重置

背景:

一上云租户使用平台提供的istio网关,开启https,然后发现访问一直链接重置。

排查过程:

1、检查代理的服务,进行了模拟访问是正常的,排除代理服务的问题。

2、检查网关实例的日志发现无异常,调用网关的接口,查看相应的路由是否添加进去,发现路由添加成功的。

3、模拟访问网关实例,看看网关日志是否记录请求进来。访问结果如下:

sh-4.2# curl -k https://127.0.0.1:30081/muc-app web/telecom

curl: (35)IcP connection reset by peer

通过模拟访问,查看网关日志实例,并未有相关请求日志进入。后来一度认为是开发版本的问题,也找咱们相关网关开发查看,也并未发现问题。

解决方案:

后来自己查询相关istio官方文档,猜测可能是证书存在问题,然后根据官方提供的方式生成证书,重新配置,发现可以正常访问了。如下图:

curl -k --insecure https://127.0.0.1:30081/muc-app-web/telecom\<meta http-equiv=pragma content=no-caccharset=utf-8><meta"no-cache, no-store, must-revalidate">link rel-icon href data:;base4,>title>m程v名显<link rel-"sho<link href-/muc-ap-web/static/css/ap.7c3af2faeeabe3630a65aba7cb7328.css rel-stylesheet>x/headxbodyxdiv id-ap>x/divx<script type-text/javascript3f8754646c1ab7c2.js>x<script typetext/javascript src=/muc-app-web/static/js/vendor.78760e801beaf3de05.jsx/scriptxscript type-text/javasc79a587675da4fd,is>[root@xz-official-view-69d5448798-69spm apps]#

至此问题算是解决,也同步给开发。

相关证书生成命令如下:

mkdir example_certs1

openssl req -x509 -sha256 -nodes -days 365 -newkey rsa:2048 -subj '/O=example Inc./CN=example.com' -keyout example_certs1/example.com.key -out example_certs1/example.com.crt

openssl req -out example_certs1/httpbin.example.com.csr -newkey

rsa:2048 -nodes -keyout example_certs1/httpbin.example.com.key -subj

"/CN=httpbin.example.com/O=httpbin organization" openssl x509 -req

-sha256 -days 365 -CA example_certs1/example.com.crt -CAkey example_certs1/example.com.key -set_serial 0 -in

example_certs1/httpbin.example.com.csr -out

example_certs1/httpbin.example.com.crt

mkdir example_certs2

openssl req -x509 -sha256 -nodes -days 365

-newkey rsa:2048 -subj '/O=example Inc./CN=example.com' -keyout example_certs2/example.com.key -out example_certs2/example.com.crt

openssl req -out example_certs2/httpbin.example.com.csr -newkey

rsa:2048 -nodes -keyout example_certs2/httpbin.example.com.key -subj

"/CN=httpbin.example.com/O=httpbin organization" openssl x509 -req

-sha256 -days 365 -CA example_certs2/example.com.crt -CAkey example_certs2/example.com.key -set_serial 0 -in

example_certs2/httpbin.example.com.csr -out

example_certs2/httpbin.example.com.crt

使用httpbin.example.com.key httpbin.example.com.crt

相关推荐
.select.6 小时前
HTTPS 如何优化?
网络协议·http·https
三三有猫9 小时前
HTTP、HTTPS和SOCKS代理怎么选?
网络协议·http·https
牛奶12 小时前
为什么关掉浏览器再打开,你还是登录状态?
前端·网络协议·https
2501_9159090614 小时前
iOS 抓包不越狱,代理抓包 和 数据线直连抓包两种实现方式
android·ios·小程序·https·uni-app·iphone·webview
ZC19959215 小时前
Nginx更换ssl证书不生效
nginx·https·ssl
人间打气筒(Ada)15 小时前
go实战案例:如何在 Go-kit 和 Service Meh 中进行服务注册与发现?
开发语言·后端·golang·istio·go-kit
.select.16 小时前
HTTPS ECDHE 握手解析
网络协议·http·https
EasyGBS17 小时前
国密GB35114协议+国标GB28181平台EasyGBS双重保障筑牢安防视频安全防线
安全·https·音视频
.select.18 小时前
HTTPS RSA 握手解析
服务器·网络协议·https
希望永不加班2 天前
SpringBoot 配置 HTTPS(自签名证书+正式证书)
java·spring boot·后端·spring·https