-
-
Notifications
You must be signed in to change notification settings - Fork 43
Error: tunneling socket could not be established, cause=write EPROTO 101057795:error:140770FC:SSL routines:SSL23_GET_SERVER_HELLO:unknown protocol:openssl\ssl\s23_clnt.c:782 #59
Comments
Let me know if the previous comment on strictSSL helps here. |
Unfortunately, setting strictSSL did not resolve the issue. I can confirm that I can download github components through bower - so I'm not sure what exactly is at fault over here. Note - I am running jspm 0.15.7 Any guidance on how to resolve this issue would be appreciated. |
Are you sure you are definitely setting the proxy environment variables correctly here? Note that you should also ensure your local |
Yes - I've configured the git command to use the proxy as well - git config --global http.proxy https://[corporate-proxy] but it still doesn't work. FYI - cloning a repository using git works for me. Example git clone https://github.com/jspm/github.git Can you clarify what the git command is that jspm runs and I can see if it works? I also should mention that our proxy server uses NTLM for authentication - does the components that jspm use support that? |
@MaluTom sorry for the delay and repetition in the SystemJS issue. Well done for soldiering on regardless! The command that jspm runs to access git is Effectively using request to query The SSL error sounds like a man in the middle at your company, which is most likely prevented via |
Hi @guybedford , Yes it is a MITM at my company - and unfortunately the https proxy uses NTLM authentication. It seems that jspm ultimately uses tunnel-agent.js which doesn't support NTLM from what I can see - https://github.com/mikeal/tunnel-agent/blob/master/index.js#L127 So unfortunately - I don't think I have a solution yet as using strictSSL:false doesn't seem to do it for me. |
@MaluTom ok it sounds like Perhaps try a sample app with just: var request = require('request');
request({
uri: 'https://user:pass@github.com/jspm/jspm-cli',
headers: {
'User-Agent': 'jspm'
},
followRedirect: false,
strictSSL: false
})
.on('response', function(res) {
console.log(res.statusCode);
}); It would be interesting to see if that works for you there. If not, perhaps integrating https://github.com/request/request#proxies or other configs would help. Also, what configurations do you set in npm to make it work properly there? My knowledge on these proxies is very limited so knowing what we should do here would be a great help. |
@guybedford - running the above code snippet returns the following -
To get npm to work by itself (that is npm install -g jspm for example) - I don't have to do anything special. |
@MaluTom ok sure, what proxy config to you have in your |
@guybedford - here is what I have in my .npmrc (it turns out I do have a proxy set actually): proxy=http://[http-proxy] Note that my firm also has a separate https-proxy which doesn't seem to need to be set for npm |
@MaluTom it's worth checking then if you definitely set that proxy correctly via an environment variable. For example, in the test script this would be via: HTTP_PROXY=http://proxy.com node request-test.js |
@guybedford -
2.With HTTP_PROXY variable set -
3.With HTTPS_PROXY variable set -
I believe that npm just needs a http_proxy which is why it works. However, jspm uses github via https and requires an https proxy. My firm's HTTPS_PROXY uses NTLM authentication which, from my very limited knowledge, the request package doesn't support. I wish I knew how/where to start to fix this myself but I'm very willing to test any fixes/other ideas you may have |
Same issue here, behind corporate proxy. Configs and environment variables set properly. Variations of strictSSL and registry endpoints didn't work. Git, bower, and npm all work.
|
It does sound like this is exactly the NLTM auth issue then again. Any tips on how to setup a test environment for such a thing would be welcome as I don't have access to such a corporate proxy here unfortunately. |
I seem to be having this issue too. Interestingly, I didn't have the issue a month or so ago, so I'm not sure if the same thing is causing it. I guess something could've been changed on the proxy, but I've never had to use my credentials to use it, so I'm assuming it's been using NTLM auth. As for creating a test environment, I'm not sure, but I'd help testing if you do make some changes. |
Been a few weeks with no updates, so I was wondering if anything was going on pertaining to this. It's making it impossible for me to use jspm, so I'm kind of antsy about it. |
@Ixonal all requests in jspm are made in two ways - either calling out to |
hmmmm... Odd... I ran a git clone on the request repo and it pulled it in fine, so git seems good. Jspm seems to want to use the request lib to pull it in still, though. If I understand correctly, shouldn't it be deferring to a git call? |
Is there a reason why, if I have Git installed and running, I would still be getting this issue? |
@Ixonal you would need to set the proxy environment variables as described in https://github.com/request/request#controlling-proxy-behaviour-using-environment-variables. |
I already have those vars set to valid values. |
@Ixonal perhaps you need a private certificate authority to be provided? We don't currently support this feature. |
Shouldn't it be using Git itself, instead of the request lib, though? As I stated earlier, git is able to pull in repos just fine. |
We're moving to reducing the API expectations, but it will be a breaking change when we do as we currently support the GitHub releases API. |
Hmmm.... In that case, jspm may be unusable for me until the request library supports ntlm authentication... |
Thanks for bearing with, apologies there isn't more I can do about this right now. |
Guess I'll head over to that repo and start prodding at them XD. Thanks for actively supporting your users as best you can. |
Thought I'd say I was able to get this working by actually deleting the HTTPS_PROXY environment variable... |
i have the same problem i set proxy in git and environment variable and its not work warn Error on locate for github:components/jquery, retrying (1). i use with version 0.16.15 |
If it is any help, I was getting the exact same error and stack traces until I removed the so: export HTTPS_PROXY="http://myproxy.com:8080"
# instead of
export HTTPS_PROXY="https://myproxy.com:8080" i.e. somehow the internal corporate proxy itself might not be able to perform SSL communication with devices behind the proxy |
Above worked like magic lol! |
True that. It was extra s for me as well. |
@erfangc , I also had success with your solution. Thanks! |
Thanks @erfangc 👍 worked like a charm. |
Thank you@erfangc |
worked fine ! |
@erfangc you just saved me, still works, thanks ! |
try to change the port to 443 |
Thanks @erfangc ! |
1 similar comment
Thanks @erfangc ! |
@erfangc Thanks you so much bro! You made my day! |
hello, this is a nood question, where should i change the export HTTPS_PROXY="https://myproxy.com:8080" ? |
@louis2688 Try the commands in terminal: |
Thank you! This solution fixed my problems, even though I was not behind a proxy, just directly connected through my ISP (Comcast/XFinity). The error I was getting was not exactly the same (nothing about tunneling, just "FetchError"), but same underlying cause--a failed SSL handshake. I found this bug report by searching for "SSL23_GET_SERVER_HELLO:unknown protocol" and npm. After reading it, I wondered if I set up a proxy server and set https_proxy to an http address then it might fix it. Sure enough, setting up the proxy still gave the same error with https, but changing to http fixed everything! Glad to have the solution, but it still seems like there must have been an easier way to connect to npm via Comcast other than setting up a proxy server! 0 info it worked if it ends with ok |
Removing 's' from proxy solved the same problem on windows too : set https_proxy=http://username:password@myproxy.com:port |
i have set up my proxy but still failing to install angulerjs package.. so i m get error code E400 |
In my case, besides what erfangc said, the "https_proxy" also should be changed to "https-proxy" when config the npm environment. Then the error will be fixed... |
When attempting to do a jspm install on any of the github components - I get the error -
I've set the https_proxy, http_proxy variables and strictSSL=false
I'm also behind a corporate proxy - I think it has to do with jspm not recognizing the strictSSL=false variable. Any thoughts on how I can resolve this error?
The text was updated successfully, but these errors were encountered: