-
Notifications
You must be signed in to change notification settings - Fork 2.4k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Cargo gives SSL error on Windows #7104
Comments
There is a workaround at #7096 (comment) @alexcrichton It seems strange to have two reports for |
@ehuss, the |
@ehuss yeah I was wondering the same! I'm not actually sure what is offline when this comes out, although I wouldn't put it beyond an OCSP server somewhere that everyone basically uses (like letsencrypt) to be temporarily down or having load issues. AFAIK crates.io is not configured with OCSP stapling (since I barely know what that is)... We've seen this intermittently on CI in the past as well on AppVeyor a long time ago and ended up disabling it. I get the feeling that OSX/Linux don't actually do these revocation checks anyway, it's just Windows, so we may just want to always disable the feature here. I'd want to investigate though to make sure that we've got the same behavior on all three platforms. |
I've been experimenting with this a little bit. I'm able to reproduce by:
I've also verified that OCSP stapling is not enabled for crates.io. (cc @rust-lang/crates-io). Although the post at https://aws.amazon.com/blogs/aws/cloudfront-ssl-ciphers-session-ocsp-pfs/ implies that OCSP stapling is enabled by default for Cloudfront. I'm not really familiar with crates.io's infrastructure. Blocking just the CRL server (crl.identrust.com) causes windows to pause about 10-20 seconds, it eventually succeeds (maybe windows cares more about ocsp than it does crl?). I think one of the few things we can try is to figure out how to enable OCSP stapling on crates.io. However, that is bit out of my hands. Blocking these servers doesn't seem to phase macos or linux. I tried deleting the cache on macos using |
Currently crates.io is using Heroku natively and doesn't have a CDN in front of it (unlike static.crates.io). Does OCSP stapling fix this issue one way or another? If so I think that's a reasonable avenue to fix this, but otherwise I think we may want to just disable this by default on Windows since it's already not on by default on Linux/macOS (and I'm not sure if there's even a way to enable it there...) |
Oh, I'm not sure why I was thinking it had a CDN. I must have been confused between static.crates.io, and some earlier discussion about it. According to this, heroku may not support it. I'm pretty sure OCSP stapling would fix it. With the OCSP response included in the TLS handshake, there's no need to contact a separate service. But since it's probably not an option, perhaps disabling it would be the best option. I'd like to get some kind of confirmation that linux and macos do not do ocsp checks. Certificate revocation has always been a sketchy part of certificate management. |
For Linux it's all OpenSSL, and according to this and other assorted scattered bits of info I don't think OpenSSL enables OCSP by default. For macOS it's SecureTransport, and random blog posts assert OCSP checking is off-by-default (and another), but I can't really find anything more developer oriented indicating this. It appears that "Keychain Access" used to have an option to configure OCSP settings but from what I can tell the latest macOS (or at least my install of Mojave) doesn't have the same settings pane. Taking a look at the plist file mentioned in this blog post gives me "OCSPStyle: None" and "OCSPSufficientPerCert: YES". No idea what those mean... All-in-all though I'm pretty certain that OCSP checking is not enabled by default on OpenSSL/SecureTransport, and we definitely have a lot of data showing that it is enabled on SChannel on Windows. |
How to fix this?? anyone any idea? |
@solisadeqi It doesn't sound like you're having the same issue as the original problem -- in the future, it might be better to open a new issue. Also, you might get more and faster help asking on https://users.rust-lang.org/ That said, I think your problem is this part of the error message you posted:
For some reason, |
hi @carols10cents, Facing same error for 8080 so i configured it to 8085 but the error persisted. [source.crates-io] Thank you |
|
Problem
I'm on Windows 10 x64 using Rust 1.36.
I'm trying to run
cargo run
get the following error message.Steps
cargo run
Possible Solution(s)
Notes
Output of
cargo version
:cargo 1.36.0 (c4fcfb7 2019-05-15)
I've tried the following without success.
This problem makes Rust unusable on Windows, which is the main development platform for me.
The text was updated successfully, but these errors were encountered: