Skip to content

[Bug]: TLS proxy and websocket not available on Windows #6569

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

Closed
3 of 4 tasks
Juesto opened this issue Dec 6, 2023 · 3 comments
Closed
3 of 4 tasks

[Bug]: TLS proxy and websocket not available on Windows #6569

Juesto opened this issue Dec 6, 2023 · 3 comments
Labels
bug Something isn't working os-windows Windows related triage This issue needs to be triaged by a maintainer

Comments

@Juesto
Copy link

Juesto commented Dec 6, 2023

Is there an existing issue for this?

  • I have searched the existing issues

OS/Web Information

  • Web Browser: Chrome
  • Local OS: Windows
  • Remote OS: Windows
  • Remote Architecture: amd64
  • code-server --version: 4.19.1 0c98611 with Code 1.84.2

Steps to Reproduce

Followed windows and by extension npm instructions:

  1. npm install -g --unsafe-perm code-server in git bash (node progress indicator only works in cmd)
  2. code-server after setting cert: true in the config
  3. visit with browser

Expected

browser should present Code interface

Actual

blank page when visiting the browser

Logs

code-server --verbose output

[2023-12-06T01:14:12.195Z] debug parent:5556 spawned child process 12600
[2023-12-06T01:14:13.615Z] debug child:12600 initiating handshake
[2023-12-06T01:14:13.620Z] debug parent:5556 got message {"message":{"type":"handshake"}}
[2023-12-06T01:14:13.623Z] debug child:12600 got message {"message":{"type":"handshake","args":{"bind-addr":"0.0.0.0:3000","auth":"none","password":"<redacted>","cert":{"value":"C:\\Users\\defaultuser0\\AppData\\Local\\code-server\\Data\\localhost.crt"},"config":"C:\\Users\\defaultuser0\\AppData\\Roaming\\code-server\\Config\\config.yaml","verbose":true,"user-data-dir":"C:\\Users\\defaultuser0\\AppData\\Local\\code-server\\Data","extensions-dir":"C:\\Users\\defaultuser0\\AppData\\Local\\code-server\\Data\\extensions","session-socket":"C:\\Users\\defaultuser0\\AppData\\Local\\code-server\\Data\\code-server-ipc.sock","log":"trace","host":"0.0.0.0","port":3000,"cert-key":"C:\\Users\\defaultuser0\\AppData\\Local\\code-server\\Data\\localhost.key","proxy-domain":[],"_":[],"usingEnvPassword":false,"usingEnvHashedPassword":false}}}
[2023-12-06T01:14:13.625Z] info  code-server 4.19.1 0c98611e6b43803a9d5dba222d7023b569abfb49
[2023-12-06T01:14:13.625Z] info  Using user-data-dir C:\Users\defaultuser0\AppData\Local\code-server\Data
Trace: [2023-12-06T01:14:13.626Z] trace Using extensions-dir C:\Users\defaultuser0\AppData\Local\code-server\Data\extensions
    at doLog (C:\Users\defaultuser0\AppData\Roaming\npm\node_modules\code-server\node_modules\@coder\logger\out\logger.js:57:28)
    at ServerFormatter.doWrite (C:\Users\defaultuser0\AppData\Roaming\npm\node_modules\code-server\node_modules\@coder\logger\out\logger.js:200:20)
    at ServerFormatter.write (C:\Users\defaultuser0\AppData\Roaming\npm\node_modules\code-server\node_modules\@coder\logger\out\logger.js:119:14)
    at Logger.handle (C:\Users\defaultuser0\AppData\Roaming\npm\node_modules\code-server\node_modules\@coder\logger\out\logger.js:339:25)
    at Logger.trace (C:\Users\defaultuser0\AppData\Roaming\npm\node_modules\code-server\node_modules\@coder\logger\out\logger.js:268:14)
    at C:\Users\defaultuser0\AppData\Roaming\npm\node_modules\code-server\out\node\main.js:95:21
    at Generator.next (<anonymous>)
    at C:\Users\defaultuser0\AppData\Roaming\npm\node_modules\code-server\out\node\main.js:8:71
    at new Promise (<anonymous>)
    at __awaiter (C:\Users\defaultuser0\AppData\Roaming\npm\node_modules\code-server\out\node\main.js:4:12)
[2023-12-06T01:14:13.722Z] warn  Could not create socket at C:\Users\defaultuser0\AppData\Local\code-server\Data\code-server-ipc.sock
[2023-12-06T01:14:13.733Z] info  Using config file C:\Users\defaultuser0\AppData\Roaming\code-server\Config\config.yaml
[2023-12-06T01:14:13.733Z] info  HTTPS server listening on https://0.0.0.0:3000/
[2023-12-06T01:14:13.733Z] info    - Authentication is disabled
[2023-12-06T01:14:13.733Z] info    - Using certificate for HTTPS: C:\Users\defaultuser0\AppData\Local\code-server\Data\localhost.crt
[2023-12-06T01:14:13.734Z] info  Session server listening on C:\Users\defaultuser0\AppData\Local\code-server\Data\code-server-ipc.sock
Trace: [2023-12-06T01:14:15.900Z] trace heartbeat
    at doLog (C:\Users\defaultuser0\AppData\Roaming\npm\node_modules\code-server\node_modules\@coder\logger\out\logger.js:57:28)
    at ServerFormatter.doWrite (C:\Users\defaultuser0\AppData\Roaming\npm\node_modules\code-server\node_modules\@coder\logger\out\logger.js:200:20)
    at ServerFormatter.write (C:\Users\defaultuser0\AppData\Roaming\npm\node_modules\code-server\node_modules\@coder\logger\out\logger.js:119:14)
    at Logger.handle (C:\Users\defaultuser0\AppData\Roaming\npm\node_modules\code-server\node_modules\@coder\logger\out\logger.js:339:25)
    at Logger.trace (C:\Users\defaultuser0\AppData\Roaming\npm\node_modules\code-server\node_modules\@coder\logger\out\logger.js:268:14)
    at Heart.<anonymous> (C:\Users\defaultuser0\AppData\Roaming\npm\node_modules\code-server\out\node\heart.js:41:29)
    at Generator.next (<anonymous>)
    at C:\Users\defaultuser0\AppData\Roaming\npm\node_modules\code-server\out\node\heart.js:8:71
    at new Promise (<anonymous>)
    at __awaiter (C:\Users\defaultuser0\AppData\Roaming\npm\node_modules\code-server\out\node\heart.js:4:12)
[22:14:16] Remote configuration data at C:\Users\defaultuser0\AppData\Local\code-server\Data
[22:14:16] process arguments: {
  'bind-addr': '0.0.0.0:3000',
  auth: 'none',
  password: '5ce178871d0372613245aeb9',
  cert: {
    value: 'C:\\Users\\defaultuser0\\AppData\\Local\\code-server\\Data\\localhost.crt'
  },
  config: 'C:\\Users\\defaultuser0\\AppData\\Roaming\\code-server\\Config\\config.yaml',
  verbose: true,
  'user-data-dir': 'C:\\Users\\defaultuser0\\AppData\\Local\\code-server\\Data',
  'extensions-dir': 'C:\\Users\\defaultuser0\\AppData\\Local\\code-server\\Data\\extensions',
  'session-socket': 'C:\\Users\\defaultuser0\\AppData\\Local\\code-server\\Data\\code-server-ipc.sock',
  log: [ 'trace' ],
  host: '0.0.0.0',
  port: '3000',
  'cert-key': 'C:\\Users\\defaultuser0\\AppData\\Local\\code-server\\Data\\localhost.key',
  'proxy-domain': [],
  _: [],
  usingEnvPassword: false,
  usingEnvHashedPassword: false,
  'accept-server-license-terms': true,
  compatibility: '1.64',
  help: false,
  version: false,
  'without-connection-token': true,
  'builtin-extensions-dir': 'c:\\Users\\defaultuser0\\AppData\\Roaming\\npm\\node_modules\\code-server\\lib\\vscode\\extensions',
  logsPath: 'C:\\Users\\defaultuser0\\AppData\\Local\\code-server\\Data\\logs\\20231205T221416'
}
[22:14:16]




[22:14:16] [File Watcher (node.js)] Request to start watching: c:\Users\defaultuser0\AppData\Local\code-server\Data\Machine (excludes: <none>, includes: <all>, correlationId: <none>),c:\Users\defaultuser0\AppData\Local\code-server\Data\Machine\settings.json (excludes: <none>, includes: <all>, correlationId: <none>)
[22:14:16] ExtensionManagementService#cleanUp
[22:14:16] ExtensionManagementService#removeTempDeleteFolders
[22:14:16] Extension host agent started.
[22:14:16] Extension VSIX downloads cache dir does not exist
[22:14:16] [File Watcher (node.js)] Request to start watching: c:\Users\defaultuser0\AppData\Local\code-server\Data\extensions (excludes: <none>, includes: <all>, correlationId: <none>)
[2023-12-06T01:14:16.438Z] error child:12600 Uncaught exception: listen EACCES: permission denied C:\Users\DEFAUL~2\AppData\Local\Temp\code-server\tls-proxy
[2023-12-06T01:14:16.438Z] error child:12600 Error: listen EACCES: permission denied C:\Users\DEFAUL~2\AppData\Local\Temp\code-server\tls-proxy
    at Server.setupListenHandle [as _listen2] (node:net:1734:21)
    at listenInCluster (node:net:1799:12)
    at Server.listen (node:net:1898:5)
    at C:\Users\defaultuser0\AppData\Roaming\npm\node_modules\code-server\out\node\socket.js:114:37
    at new Promise (<anonymous>)
    at C:\Users\defaultuser0\AppData\Roaming\npm\node_modules\code-server\out\node\socket.js:111:28
[22:14:16] Error: listen EACCES: permission denied C:\Users\DEFAUL~2\AppData\Local\Temp\code-server\tls-proxy
    at Server.setupListenHandle [as _listen2] (node:net:1734:21)
    at listenInCluster (node:net:1799:12)
    at Server.listen (node:net:1898:5)
    at C:\Users\defaultuser0\AppData\Roaming\npm\node_modules\code-server\out\node\socket.js:114:37
    at new Promise (<anonymous>)
    at C:\Users\defaultuser0\AppData\Roaming\npm\node_modules\code-server\out\node\socket.js:111:28 {
  code: 'EACCES',
  errno: -4092,
  syscall: 'listen',
  address: 'C:\\Users\\DEFAUL~2\\AppData\\Local\\Temp\\code-server\\tls-proxy',
  port: -1
}
[22:14:16] No uninstalled extensions found.
[22:14:16] [File Watcher (node.js)] Request to start watching: c:\Users\defaultuser0\AppData\Local\code-server\Data\extensions\extensions.json (excludes: <none>, includes: <all>, correlationId: <none>)
[22:14:16] Started scanning user extensions d {
  scheme: 'file',
  authority: '',
  path: '/C:/Users/defaultuser0/AppData/Local/code-server/Data/extensions',
  query: '',
  fragment: '',
  _formatted: null,
  _fsPath: 'c:\\Users\\defaultuser0\\AppData\\Local\\code-server\\Data\\extensions'
}
[22:14:16] [File Watcher (node.js)] Error: ENOENT: no such file or directory, stat 'c:\Users\defaultuser0\AppData\Local\code-server\Data\Machine\settings.json'
[22:14:16] [File Watcher (node.js)] Started watching: 'c:\Users\defaultuser0\AppData\Local\code-server\Data\Machine'
[22:14:16] Scanned user extensions: 0
[22:14:16] [File Watcher (node.js)] Started watching: 'c:\Users\defaultuser0\AppData\Local\code-server\Data\extensions'
[22:14:16] [File Watcher (node.js)] Started watching: 'c:\Users\defaultuser0\AppData\Local\code-server\Data\extensions\extensions.json'
[2023-12-06T01:15:15.907Z] debug 1 active connection
Trace: [2023-12-06T01:15:15.907Z] trace heartbeat
    at doLog (C:\Users\defaultuser0\AppData\Roaming\npm\node_modules\code-server\node_modules\@coder\logger\out\logger.js:57:28)
    at ServerFormatter.doWrite (C:\Users\defaultuser0\AppData\Roaming\npm\node_modules\code-server\node_modules\@coder\logger\out\logger.js:200:20)
    at ServerFormatter.write (C:\Users\defaultuser0\AppData\Roaming\npm\node_modules\code-server\node_modules\@coder\logger\out\logger.js:119:14)
    at Logger.handle (C:\Users\defaultuser0\AppData\Roaming\npm\node_modules\code-server\node_modules\@coder\logger\out\logger.js:339:25)
    at Logger.trace (C:\Users\defaultuser0\AppData\Roaming\npm\node_modules\code-server\node_modules\@coder\logger\out\logger.js:268:14)
    at Heart.<anonymous> (C:\Users\defaultuser0\AppData\Roaming\npm\node_modules\code-server\out\node\heart.js:41:29)
    at Generator.next (<anonymous>)
    at C:\Users\defaultuser0\AppData\Roaming\npm\node_modules\code-server\out\node\heart.js:8:71
    at new Promise (<anonymous>)
    at __awaiter (C:\Users\defaultuser0\AppData\Roaming\npm\node_modules\code-server\out\node\heart.js:4:12)
    at Heart.beat (C:\Users\defaultuser0\AppData\Roaming\npm\node_modules\code-server\out\node\heart.js:37:16)
    at C:\Users\defaultuser0\AppData\Roaming\npm\node_modules\code-server\out\node\heart.js:76:17
    at Generator.next (<anonymous>)
    at fulfilled (C:\Users\defaultuser0\AppData\Roaming\npm\node_modules\code-server\out\node\heart.js:5:58)
    at process.processTicksAndRejections (node:internal/process/task_queues:95:5)

browser console:

workbench.web.main.js:645  INFO Resolving connection token (brixs7110:3000)...
workbench.web.main.js:645  INFO Resolved connection token (brixs7110:3000) after 5 ms
workbench.web.main.js:645  INFO Creating a socket (renderer-Management-e0e954ba-07b4-48b4-8924-2c7215e23623)...
DevTools failed to load source map: Could not load content for https://brixs7110:3000/stable-0c98611e6b43803a9d5dba222d7023b569abfb49/static/out/vs/loader.js.map: Load canceled due to load timeout
DevTools failed to load source map: Could not load content for https://brixs7110:3000/stable-0c98611e6b43803a9d5dba222d7023b569abfb49/static/out/vs/webPackagePaths.js.map: Load canceled due to load timeout
DevTools failed to load source map: Could not load content for https://brixs7110:3000/stable-0c98611e6b43803a9d5dba222d7023b569abfb49/static/out/vs/workbench/workbench.web.main.nls.js.map: Load canceled due to load timeout
DevTools failed to load source map: Could not load content for https://brixs7110:3000/stable-0c98611e6b43803a9d5dba222d7023b569abfb49/static/out/vs/workbench/workbench.web.main.js.map: Load canceled due to load timeout
DevTools failed to load source map: Could not load content for https://brixs7110:3000/stable-0c98611e6b43803a9d5dba222d7023b569abfb49/static/out/vs/code/browser/workbench/workbench.js.map: Load canceled due to load timeout
DevTools failed to load source map: Could not load content for https://brixs7110:3000/stable-0c98611e6b43803a9d5dba222d7023b569abfb49/static/out/vs/loader.js.map: Load canceled due to load timeout
DevTools failed to load source map: Could not load content for https://brixs7110:3000/stable-0c98611e6b43803a9d5dba222d7023b569abfb49/static/out/vs/webPackagePaths.js.map: Load canceled due to load timeout
DevTools failed to load source map: Could not load content for https://brixs7110:3000/stable-0c98611e6b43803a9d5dba222d7023b569abfb49/static/out/vs/workbench/workbench.web.main.nls.js.map: Load canceled due to load timeout
DevTools failed to load source map: Could not load content for https://brixs7110:3000/stable-0c98611e6b43803a9d5dba222d7023b569abfb49/static/out/vs/workbench/workbench.web.main.js.map: Load canceled due to load timeout
DevTools failed to load source map: Could not load content for https://brixs7110:3000/stable-0c98611e6b43803a9d5dba222d7023b569abfb49/static/out/vs/code/browser/workbench/workbench.js.map: Load canceled due to load timeout
workbench.web.main.js:675 WebSocket connection to 'wss://brixs7110:3000/stable-0c98611e6b43803a9d5dba222d7023b569abfb49?reconnectionToken=e0e954ba-07b4-48b4-8924-2c7215e23623&reconnection=false&skipWebSocketFrames=false' failed: 
v @ workbench.web.main.js:675
create @ workbench.web.main.js:675
(anonymous) @ workbench.web.main.js:675
connect @ workbench.web.main.js:675
connect @ workbench.web.main.js:675
n @ workbench.web.main.js:675
u @ workbench.web.main.js:675
b @ workbench.web.main.js:675
p @ workbench.web.main.js:675
(anonymous) @ workbench.web.main.js:675
O @ workbench.web.main.js:675
workbench.web.main.js:645  INFO Creating a socket (renderer-Management-e0e954ba-07b4-48b4-8924-2c7215e23623) returned an error after 106810 ms.
workbench.web.main.js:645   ERR CodeExpectedError: WebSocket close with status code 1006
    at WebSocket.<anonymous> (workbench.web.main.js:675:3985)
workbench.web.main.js:645   ERR [remote-connection][Management   ][e0e95…][initial][WebSocket(brixs7110:3000)] socketFactory.connect() failed or timed out. Error:
workbench.web.main.js:645   ERR CodeExpectedError: WebSocket close with status code 1006
    at WebSocket.<anonymous> (workbench.web.main.js:675:3985)
workbench.web.main.js:645   ERR [remote-connection][attempt 1] An error occurred in initial connection! Will retry... Error:
workbench.web.main.js:645   ERR CodeExpectedError: WebSocket close with status code 1006
    at WebSocket.<anonymous> (workbench.web.main.js:675:3985)

Screenshot/Video

No response

Does this issue happen in VS Code or GitHub Codespaces?

  • I cannot reproduce this in VS Code.
  • I cannot reproduce this in GitHub Codespaces.

Are you accessing code-server over a secure context?

  • I am using a secure context.

Notes

tried running as administrator without success
firewall is allowed for node.js

@Juesto Juesto added bug Something isn't working triage This issue needs to be triaged by a maintainer labels Dec 6, 2023
@Juesto
Copy link
Author

Juesto commented Dec 6, 2023

sorry, it looks like i posted a duplicate of #6022
but this one includes --verbose logs and being unable to create socket

@Juesto Juesto closed this as completed Dec 6, 2023
@Juesto Juesto reopened this Dec 6, 2023
@code-asher code-asher added the os-windows Windows related label Dec 6, 2023
@code-asher
Copy link
Member

Merging this into the Windows support issue: #1397

@code-asher code-asher closed this as not planned Won't fix, can't repro, duplicate, stale Jul 12, 2024
@seedlord
Copy link

seedlord commented Feb 1, 2025

port: -1 indicates that the port is not ok? how can i check what exact port variable gets passed?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working os-windows Windows related triage This issue needs to be triaged by a maintainer
Projects
None yet
Development

No branches or pull requests

3 participants