Title: trying to run rancher agent registration through tinyproxy · Issue #280 · tinyproxy/tinyproxy · GitHub
Open Graph Title: trying to run rancher agent registration through tinyproxy · Issue #280 · tinyproxy/tinyproxy
X Title: trying to run rancher agent registration through tinyproxy · Issue #280 · tinyproxy/tinyproxy
Description: hi, we have a setup where a bunch of compute nodes can are behind a proxy, and there is no other way to connect to the internet. these compute nodes should be registered to a rancher cluster that is located elsewhere, so to connect to th...
Open Graph Description: hi, we have a setup where a bunch of compute nodes can are behind a proxy, and there is no other way to connect to the internet. these compute nodes should be registered to a rancher cluster that i...
X Description: hi, we have a setup where a bunch of compute nodes can are behind a proxy, and there is no other way to connect to the internet. these compute nodes should be registered to a rancher cluster that i...
Opengraph URL: https://github.com/tinyproxy/tinyproxy/issues/280
X: @github
Domain: patch-diff.githubusercontent.com
{"@context":"https://schema.org","@type":"DiscussionForumPosting","headline":"trying to run rancher agent registration through tinyproxy","articleBody":"hi,\r\n\r\nwe have a setup where a bunch of compute nodes can are behind a proxy, and there is no other way to connect to the internet. \r\n\r\nthese compute nodes should be registered to a rancher cluster that is located elsewhere, so to connect to the cluster and run the registration, we have to go through the proxy. this proxy is tinyproxy.\r\n\r\nso we run the agent docker container with HTTP_PROXY env variables, and we see some traffic through the entire chain all the way to the rancher server. in tcpdump, we see communication between compute nodes and proxy, we see an initial\r\n\r\n\u003e CONNECT $hostname-of-rancher-server\r\n\r\n\r\nwhich is followed what looks like a TLS handshake (first a little bit i was able to identify as a SNI header, then we get a bunch of binary things with readable certificate information inside. at the same time, we see an incoming HTTPS connection on the TLS offloader on the opposite side.\r\n\r\nall in all, this looks very normal \u0026 exactly as i would expect. however, the agent fails with this:\r\n\r\n\u003e \r\n\u003e time=\"2019-12-18T15:56:53Z\" level=error msg=\"Failed to connect to proxy. Empty dialer response\" error=\"dial tcp ${v4 addr of tls offloader}:443: i/o timeout\"\r\n\u003e time=\"2019-12-18T15:56:53Z\" level=error msg=\"Remotedialer proxy error\" error=\"dial tcp ${v4 addr of tls offloader}:443: i/o timeout\"\r\n\u003e \r\n\r\nif we use some ssh tunneling trickery and mess with /etc/hosts, thus connecting without the proxy, everything is fine, i.e. node registration with https:// and wss:// works nicely.\r\n\r\nif we run the same thing with tinyproxy in between, it fails (see above) and tinyproxy says this:\r\n\r\n\u003e CONNECT Dec 18 16:49:07 [28094]: Connect (file descriptor 6): $hostname-client [$ip compute]\r\n\u003e CONNECT Dec 18 16:49:07 [28094]: Request (file descriptor 6): CONNECT $hostname-server:443 HTTP/1.1\r\n\u003e INFO Dec 18 16:49:07 [28094]: No upstream proxy for $hostname-server\r\n\u003e CONNECT Dec 18 16:49:07 [28094]: Established connection to host \"$hostname-server\" using file descriptor 7.\r\n**\u003e INFO Dec 18 16:49:07 [28094]: Not sending client headers to remote machine**\r\n\u003e INFO Dec 18 16:49:13 [28094]: Closed connection between local client (fd:6) and remote client (fd:7)\r\n\u003e \r\n\r\ni wonder what happens here, and how we might be able to debug this further. i am all out of ideas at the moment (short of completely changing the entire approach). the user agent header from the agent is \"Go-http-client/1.1\" \r\n\r\n\r\n\r\n","author":{"url":"https://github.com/rmalchow","@type":"Person","name":"rmalchow"},"datePublished":"2019-12-18T16:31:57.000Z","interactionStatistic":{"@type":"InteractionCounter","interactionType":"https://schema.org/CommentAction","userInteractionCount":2},"url":"https://github.com/280/tinyproxy/issues/280"}
| route-pattern | /_view_fragments/issues/show/:user_id/:repository/:id/issue_layout(.:format) |
| route-controller | voltron_issues_fragments |
| route-action | issue_layout |
| fetch-nonce | v2:937f21c8-f98c-6334-787b-4b4df7961f4e |
| current-catalog-service-hash | 81bb79d38c15960b92d99bca9288a9108c7a47b18f2423d0f6438c5b7bcd2114 |
| request-id | B2D2:35A6C0:1DB457D:28D7B1B:6973BB30 |
| html-safe-nonce | 1a405cd4376316e464e3f6f9051210cd47a1be5f780614a94b4f3b3b4d14dd7a |
| visitor-payload | eyJyZWZlcnJlciI6IiIsInJlcXVlc3RfaWQiOiJCMkQyOjM1QTZDMDoxREI0NTdEOjI4RDdCMUI6Njk3M0JCMzAiLCJ2aXNpdG9yX2lkIjoiMzM4NjA4Nzc2NjM5OTIwOTQ0IiwicmVnaW9uX2VkZ2UiOiJpYWQiLCJyZWdpb25fcmVuZGVyIjoiaWFkIn0= |
| visitor-hmac | 292115663955958db8a69ef30befcc988900487fee5dff28ba0e2686c1e28464 |
| hovercard-subject-tag | issue:539789315 |
| github-keyboard-shortcuts | repository,issues,copilot |
| google-site-verification | Apib7-x98H0j5cPqHWwSMm6dNU4GmODRoqxLiDzdx9I |
| octolytics-url | https://collector.github.com/github/collect |
| analytics-location | / |
| fb:app_id | 1401488693436528 |
| apple-itunes-app | app-id=1477376905, app-argument=https://github.com/_view_fragments/issues/show/tinyproxy/tinyproxy/280/issue_layout |
| twitter:image | https://opengraph.githubassets.com/58640056c9e45821784385277000916ead51cc4a08fd5470c83a171727c23840/tinyproxy/tinyproxy/issues/280 |
| twitter:card | summary_large_image |
| og:image | https://opengraph.githubassets.com/58640056c9e45821784385277000916ead51cc4a08fd5470c83a171727c23840/tinyproxy/tinyproxy/issues/280 |
| og:image:alt | hi, we have a setup where a bunch of compute nodes can are behind a proxy, and there is no other way to connect to the internet. these compute nodes should be registered to a rancher cluster that i... |
| og:image:width | 1200 |
| og:image:height | 600 |
| og:site_name | GitHub |
| og:type | object |
| og:author:username | rmalchow |
| hostname | github.com |
| expected-hostname | github.com |
| None | 8a5768a9eafedc74cf703ff010fe962e646e4a535c2902a44121cb0383fa06f6 |
| turbo-cache-control | no-preview |
| go-import | github.com/tinyproxy/tinyproxy git https://github.com/tinyproxy/tinyproxy.git |
| octolytics-dimension-user_id | 16191467 |
| octolytics-dimension-user_login | tinyproxy |
| octolytics-dimension-repository_id | 47556049 |
| octolytics-dimension-repository_nwo | tinyproxy/tinyproxy |
| octolytics-dimension-repository_public | true |
| octolytics-dimension-repository_is_fork | false |
| octolytics-dimension-repository_network_root_id | 47556049 |
| octolytics-dimension-repository_network_root_nwo | tinyproxy/tinyproxy |
| turbo-body-classes | logged-out env-production page-responsive |
| disable-turbo | false |
| browser-stats-url | https://api.github.com/_private/browser/stats |
| browser-errors-url | https://api.github.com/_private/browser/errors |
| release | 299568c301abffbdd27fc1309827c44836361f11 |
| ui-target | full |
| theme-color | #1e2327 |
| color-scheme | light dark |
Links:
Viewport: width=device-width