inconshreveable / ngrok

Unified ingress for developers
https://ngrok.com
Other
24.12k stars 4.26k forks source link

SSLV3_ALERT_HANDSHAKE_FAILURE when running on macOS for a dotnet API #910

Closed markmcgookin closed 4 months ago

markmcgookin commented 1 year ago

I am trying to run a dotnet api from my local machine and test an IOT device that has wireless capability, so I need to create a tunnel for my local machine api to be accessible from the outside world for the device.

I have previously used ngrok for this sort of thing but seem to be running into SSL issues.

I have tried a number of different ngrok commands

ngrok http --host-header=rewrite --scheme=https https://localhost:7063
ngrok http --host-header=localhost:7063 https://localhost:7063
ngrok http https://localhost:7063
ngrok http 7063

All get the a similar error, from the IOT device, Postman, and curl.

Postman gives this:

Error: write EPROTO 5026831912:error:10000410:SSL routines:OPENSSL_internal:SSLV3_ALERT_HANDSHAKE_FAILURE:../../../../src/third_party/boringssl/src/ssl/tls_record.cc:594:SSL alert number 40
5026831912:error:1000009a:SSL routines:OPENSSL_internal:HANDSHAKE_FAILURE_ON_CLIENT_HELLO:../../../../src/third_party/boringssl/src/ssl/handshake.cc:644:

Curl gives this:

curl: (35) LibreSSL/3.3.6: error:1404B410:SSL routines:ST_CONNECT:sslv3 alert handshake failure

I have run brew update brew upgrade and got the latest version of ngrok, I have the latest version of openssl. I have cleaned and redone my dotnet https certs with dotnet dev-certs https --trust ... the calls work via postman locally if I just use the https://localhost:7063 address. But when I use the address given by ngrok I just get the SSL errors.

System info as follows:

MacBook Pro M1 Pro
32GB RAM
Ventura 13.3.1
API - dotnet6
ngrok - 3.2.2
russorat commented 4 months ago

Thank you for opening this issue! As of April 2016, the ngrok service has permanently moved to https://ngrok.com/. To join the community and file bug reports or feature enhancements for the ngrok agent, please go to https://github.com/ngrok/ngrok.

This repository is no longer actively maintained and will be archived soon to reduce confusion with the latest ngrok versions. We thank you for the continued support of ngrok and look forward to seeing you over at ngrok.com and the ngrok Community Repo.