Open Pierric82 opened 1 year ago
+1 on this. Having same issue on Ubuntu with the 1.0.1 amd64 Jammy release.
Also running Ubuntu Jammy Jellyfish vm in KVM.
Can you try Chrome on MacOS or Android?
Can you open up devtools on your browser, check the console tab for output, check the network tab for failed connections, specifically the websocket connection.
tail the logs on the server, which is located at ~/.vnc/*.log, what do you see in the logs when you try to connect?
Here is console output from Chrome (MacOS):
DevTools failed to load source map: Could not load content for https://192.168.1.145:8445/vendor/interact.min.js.map: HTTP error: status code 404, net::ERR_HTTP_RESPONSE_CODE_FAILURE
Under the network panel, it just shows two fonts not able to load. The text I can see in the Kasm menus look fine, so I don't know why fonts wouldn't be able to load.
I pasted the log below. {{username}} is anytime it posted my username. 192.168.1.166 is my Mac's IP, 192.168.1.145 is my Ubuntu VM's IP.
Log: `2023-02-02 09:02:36,762 [INFO] websocket 105: 192.168.1.166 192.168.1.166 {{username}} "GET /app/images/keyboard.svg HTTP/1.1" 200 6599 2023-02-02 09:02:36,762 [DEBUG] websocket 105: No connection after handshake 2023-02-02 09:02:36,762 [DEBUG] websocket 105: handler exit 2023-02-02 09:02:36,763 [INFO] websocket 113: got client connection from 192.168.1.166 2023-02-02 09:02:36,778 [DEBUG] websocket 108: using SSL socket 2023-02-02 09:02:36,779 [DEBUG] websocket 109: using SSL socket 2023-02-02 09:02:36,782 [DEBUG] websocket 108: BasicAuth matched 2023-02-02 09:02:36,782 [DEBUG] websocket 108: Invalid WS request, maybe a HTTP one 2023-02-02 09:02:36,782 [DEBUG] websocket 108: Requested file '/app/images/ctrl.svg' 2023-02-02 09:02:36,783 [INFO] websocket 108: 192.168.1.166 192.168.1.166 {{username}} "GET /app/images/ctrl.svg HTTP/1.1" 200 4576 2023-02-02 09:02:36,783 [DEBUG] websocket 108: No connection after handshake 2023-02-02 09:02:36,783 [DEBUG] websocket 108: handler exit 2023-02-02 09:02:36,783 [DEBUG] websocket 109: BasicAuth matched 2023-02-02 09:02:36,783 [DEBUG] websocket 109: Invalid WS request, maybe a HTTP one 2023-02-02 09:02:36,783 [DEBUG] websocket 109: Requested file '/app/images/alt.svg' 2023-02-02 09:02:36,783 [INFO] websocket 109: 192.168.1.166 192.168.1.166 {{username}} "GET /app/images/alt.svg HTTP/1.1" 200 3748 2023-02-02 09:02:36,783 [DEBUG] websocket 109: No connection after handshake 2023-02-02 09:02:36,783 [DEBUG] websocket 109: handler exit 2023-02-02 09:02:36,784 [INFO] websocket 114: got client connection from 192.168.1.166 2023-02-02 09:02:36,785 [INFO] websocket 115: got client connection from 192.168.1.166 2023-02-02 09:02:36,856 [DEBUG] websocket 110: using SSL socket 2023-02-02 09:02:36,860 [DEBUG] websocket 110: BasicAuth matched 2023-02-02 09:02:36,860 [DEBUG] websocket 110: Invalid WS request, maybe a HTTP one 2023-02-02 09:02:36,860 [DEBUG] websocket 110: Requested file '/app/images/windows.svg' 2023-02-02 09:02:36,860 [INFO] websocket 110: 192.168.1.166 192.168.1.166 {{username}} "GET /app/images/windows.svg HTTP/1.1" 200 2606 2023-02-02 09:02:36,860 [DEBUG] websocket 110: No connection after handshake 2023-02-02 09:02:36,860 [DEBUG] websocket 110: handler exit 2023-02-02 09:02:36,862 [INFO] websocket 116: got client connection from 192.168.1.166 2023-02-02 09:02:36,868 [DEBUG] websocket 112: using SSL socket 2023-02-02 09:02:36,872 [DEBUG] websocket 112: BasicAuth matched 2023-02-02 09:02:36,872 [DEBUG] websocket 112: Invalid WS request, maybe a HTTP one 2023-02-02 09:02:36,872 [DEBUG] websocket 112: Requested file '/app/images/tab.svg' 2023-02-02 09:02:36,873 [INFO] websocket 112: 192.168.1.166 192.168.1.166 {{username}} "GET /app/images/tab.svg HTTP/1.1" 200 3148 2023-02-02 09:02:36,873 [DEBUG] websocket 112: No connection after handshake 2023-02-02 09:02:36,873 [DEBUG] websocket 112: handler exit 2023-02-02 09:02:36,874 [INFO] websocket 117: got client connection from 192.168.1.166 2023-02-02 09:02:36,892 [DEBUG] websocket 111: using SSL socket 2023-02-02 09:02:36,896 [DEBUG] websocket 111: BasicAuth matched 2023-02-02 09:02:36,896 [DEBUG] websocket 111: Invalid WS request, maybe a HTTP one 2023-02-02 09:02:36,896 [DEBUG] websocket 111: Requested file '/app/images/esc.svg' 2023-02-02 09:02:36,896 [INFO] websocket 111: 192.168.1.166 192.168.1.166 {{username}} "GET /app/images/esc.svg HTTP/1.1" 200 4717 2023-02-02 09:02:36,896 [DEBUG] websocket 111: No connection after handshake 2023-02-02 09:02:36,896 [DEBUG] websocket 111: handler exit 2023-02-02 09:02:36,898 [INFO] websocket 118: got client connection from 192.168.1.166 2023-02-02 09:02:36,913 [DEBUG] websocket 113: using SSL socket 2023-02-02 09:02:36,917 [DEBUG] websocket 113: BasicAuth matched 2023-02-02 09:02:36,917 [DEBUG] websocket 113: Invalid WS request, maybe a HTTP one 2023-02-02 09:02:36,917 [DEBUG] websocket 113: Requested file '/app/images/ctrlaltdel.svg' 2023-02-02 09:02:36,917 [INFO] websocket 113: 192.168.1.166 192.168.1.166 {{username}} "GET /app/images/ctrlaltdel.svg HTTP/1.1" 200 3432 2023-02-02 09:02:36,917 [DEBUG] websocket 113: No connection after handshake 2023-02-02 09:02:36,917 [DEBUG] websocket 113: handler exit 2023-02-02 09:02:36,919 [DEBUG] websocket 114: using SSL socket 2023-02-02 09:02:36,923 [DEBUG] websocket 114: BasicAuth matched 2023-02-02 09:02:36,923 [DEBUG] websocket 114: Invalid WS request, maybe a HTTP one 2023-02-02 09:02:36,923 [DEBUG] websocket 114: Requested file '/dist/images/902f9d35b332b041483439e0f26be15c.svg' 2023-02-02 09:02:36,923 [INFO] websocket 114: 192.168.1.166 192.168.1.166 {{username}} "GET /dist/images/902f9d35b332b041483439e0f26be15c.svg HTTP/1.1" 200 6581 2023-02-02 09:02:36,923 [DEBUG] websocket 114: No connection after handshake 2023-02-02 09:02:36,924 [DEBUG] websocket 114: handler exit 2023-02-02 09:02:36,951 [DEBUG] websocket 115: using SSL socket 2023-02-02 09:02:36,955 [DEBUG] websocket 115: BasicAuth matched 2023-02-02 09:02:36,955 [DEBUG] websocket 115: Invalid WS request, maybe a HTTP one 2023-02-02 09:02:36,955 [DEBUG] websocket 115: Requested file '/dist/images/294bda69d4ed0f7d5b47bc8145978966.svg' 2023-02-02 09:02:36,955 [INFO] websocket 115: 192.168.1.166 192.168.1.166 {{username}} "GET /dist/images/294bda69d4ed0f7d5b47bc8145978966.svg HTTP/1.1" 200 2754 2023-02-02 09:02:36,955 [DEBUG] websocket 115: No connection after handshake 2023-02-02 09:02:36,955 [DEBUG] websocket 115: handler exit 2023-02-02 09:02:36,974 [DEBUG] websocket 118: using SSL socket 2023-02-02 09:02:36,974 [DEBUG] websocket 116: using SSL socket 2023-02-02 09:02:36,977 [DEBUG] websocket 117: using SSL socket 2023-02-02 09:02:36,978 [DEBUG] websocket 118: BasicAuth matched 2023-02-02 09:02:36,978 [DEBUG] websocket 116: BasicAuth matched 2023-02-02 09:02:36,978 [DEBUG] websocket 116: Invalid WS request, maybe a HTTP one 2023-02-02 09:02:36,978 [DEBUG] websocket 118: Invalid WS request, maybe a HTTP one 2023-02-02 09:02:36,978 [DEBUG] websocket 118: Requested file '/app/images/disconnect.svg' 2023-02-02 09:02:36,978 [DEBUG] websocket 116: Requested file '/dist/images/502d013d03ea8508f7df4ba1ace5b541.svg' 2023-02-02 09:02:36,978 [INFO] websocket 116: 192.168.1.166 192.168.1.166 {{username}} "GET /dist/images/502d013d03ea8508f7df4ba1ace5b541.svg HTTP/1.1" 200 3399 2023-02-02 09:02:36,978 [DEBUG] websocket 116: No connection after handshake 2023-02-02 09:02:36,978 [DEBUG] websocket 116: handler exit 2023-02-02 09:02:36,978 [INFO] websocket 118: 192.168.1.166 192.168.1.166 {{username}} "GET /app/images/disconnect.svg HTTP/1.1" 200 5257 2023-02-02 09:02:36,978 [DEBUG] websocket 118: No connection after handshake 2023-02-02 09:02:36,978 [DEBUG] websocket 118: handler exit 2023-02-02 09:02:36,982 [DEBUG] websocket 117: BasicAuth matched 2023-02-02 09:02:36,982 [DEBUG] websocket 117: Invalid WS request, maybe a HTTP one 2023-02-02 09:02:36,982 [DEBUG] websocket 117: Requested file '/app/images/toggleextrakeys.svg' 2023-02-02 09:02:36,982 [INFO] websocket 117: 192.168.1.166 192.168.1.166 {{username}} "GET /app/images/toggleextrakeys.svg HTTP/1.1" 200 4636 2023-02-02 09:02:36,982 [DEBUG] websocket 117: No connection after handshake 2023-02-02 09:02:36,982 [DEBUG] websocket 117: handler exit 2023-02-02 09:02:41,100 [INFO] VNCSConnST: Sending client stats: [ 10.0, 10.0, 10.0, 10.0 ]
2023-02-02 09:02:46,101 [INFO] VNCSConnST: Sending client stats: [ 10.0, 10.0, 10.0, 10.0 ]`
The logs seem incomplete, can you provide the full logs. You can delete the file and reconnect, I only need to see logs for a single connection attempt.
Sorry about that, here's the full log.
looks like ssl errors. Is there something about your environment we don't know, such as a proxy? Did you try Chrome browser. We do not test against Vivaldi and it is possible it does not behave exactly like Chrome.
No proxies, vpns, etc. Standard Ubuntu Jammy Jellyfish install as of I think September '22.
I was using chrome, never used vivaldi before.
I did notice some console message when I initially installed Kasm VNC that there was some error with an ssl file but I haven't been able to recreate that.
Fwiw in my case I initially ran into SSL issues too due to my system not having good default certificates (I think) but ultimately switched it all off and went pure http, yet the same issue was still happening. The log provided in the initial post should be pure http.
You are both having different issues.
@coleg06 , your issue is that your browser is rejecting the server's SSL cert. Why it is doing that for some requests but not others, I couldn't say. But the KasmVNC logs are quite clear about that being the issue. I personally have MacOS, use Chrome, and connect to Ubuntu 22.04 VMs running on Parallels and have never ran into that issue. The issue is most likely on the client side, based on the logs and the fact that you have no proxies, firewalls, etc. Could be a browser extension or security product installed on MacOS.
@Pierric82, your logs show a successful connection. I would ask that you confirm once again that you are able to connect and see a desktop when using a browser to access KasmVNC locally. Given that you are on port 8445, that means that there is likely more than one VNC session since KasmVNC starts on port 8444. Is it possible you have two sessions running and one is working and the other not?
Generally speaking, when you are able to connect but get a black screen, that means the desktop environment did not start right. So KasmVNC is working, there is just no desktop environment. But that wouldn't change if you were connecting remotely or locally, which is why I want you to double check that you get a desktop on port 8445 locally but not remotely.
Thank you
Thank you for your help. It looks like /etc/ssl/private/ssl-cert-snakeoil.key
is empty. Is there a way for KasmVNC to generate this file? (Or instructions on how to do so?). I reran the installation (after uninstalling) and it still doesn't create that file.
I believe that cert is created by the package ssl-cert, so if you install that it should be generated.
sudo apt-get install ssl-cert
Regardless, you can always tell KasmVNC to use a cert that you generate yourself. Here is an example using openssl to generate a self signed cert and key
openssl req -x509 -newkey rsa:4096 -keyout key.pem -out cert.pem -sha256 -days 365
To configure Kasm to use it, open /etc/kasmvnc/kasmvnc.conf and add the settings. See the following link for a reference, under network.ssl
https://www.kasmweb.com/kasmvnc/docs/latest/configuration.html#network
I have the same issue. I first tried it with a popOS instance on proxmox and today I installed a fresh instance of ubuntu 22.04 on proxmox. After installing kasmVNC the first connection didnt work. With the second try I got a successful connection, but the screen stays blank.
@chastel , so you have the same issue? KasmVNC works fine when accessed from the VM itself via https://127.0.0.1:8444, for example, but when you access it from another VM on the network you get a blank screen?
So, i just double checked, because I never tried to access it locally. I have the same outcome when I try to access it locally - blank screen.
Here is also the log of the local access: connection-local.log
Ok, then your issue is not related. It looks like your desktop environment is not running. What DE are you running and how did you configure Kasm to launch it? Did you use the auto-detected desktop environment when you launched vncserver, or did you select manual?
Thank you for your help. If I am trying locally the DE must be running, because I am using the GUI. I am running GNOME and used auto-detect. I don't understand the question "how did you configure Kasm to launch it?" Can I configure something special or is this question related to the auto-detect function?
Here is also my xstartup file: xstartup.txt
Thank you again for your support.
@chastel , KasmVNC runs its on X server and therefore your local Gnome desktop that you access via a physical monitor, keyboard, and mouse or virtually via a hypervisor console, are not related with KasmVNC at all.
Since your issue is different, please open up a different ticket and provide details about your system environment in that ticket. Thank you
+1 on this issue. Same setup, fresh install of ubuntu Jammy installed on a vm in proxmox. I am running the latest release of KasmVNC. I can add it as a kasm workspace and connect but there is only a black screen. Interestingly I tried the same steps with a Kali desktop and it works as expected. Here are the logs from KasmVNC
==> /home/ansible/.vnc/Ubuntu-Management:1.log <==
2023-04-16 10:17:58,394 [PRIO] Connections: closed: kasm@10.20.200.222_1681654573.50337::websocket (Clean disconnection)
2023-04-16 10:17:58,394 [INFO] EncodeManager: Framebuffer updates: 4
2023-04-16 10:17:58,394 [INFO] EncodeManager: Tight:
2023-04-16 10:17:58,394 [INFO] EncodeManager: Solid: 4 rects, 2.93997 Mpixels
2023-04-16 10:17:58,394 [INFO] EncodeManager: 64 B (1:183749 ratio)
2023-04-16 10:17:58,394 [INFO] EncodeManager: Total: 4 rects, 2.93997 Mpixels
2023-04-16 10:17:58,394 [INFO] EncodeManager: 64 B (1:183749 ratio)
2023-04-16 10:17:58,395 [INFO] ComparingUpdateTracker: 0 pixels in / 0 pixels out
2023-04-16 10:17:58,395 [INFO] ComparingUpdateTracker: (1:-nan ratio)
2023-04-16 10:18:01,033 [INFO] websocket 35: got client connection from 10.20.100.101
2023-04-16 10:18:01,053 [INFO] EncodeManager: WEBP benchmark result: 5 ms
2023-04-16 10:18:01,053 [PRIO] Connections: accepted: kasm@10.20.200.222_1681654681.43257::websocket
2023-04-16 10:18:01,088 [INFO] SConnection: Client needs protocol version 3.8
2023-04-16 10:18:01,090 [INFO] SConnection: Client requests security type VncAuth(2)
2023-04-16 10:18:01,092 [INFO] VNCSConnST: Server default pixel format depth 24 (32bpp) little-endian rgb888
2023-04-16 10:18:01,095 [INFO] VNCSConnST: Client pixel format depth 24 (32bpp) little-endian bgr888
Hello! I'm just beginning with KasmVNC, but maybe i've found something: I faced same thing (using a LXD VM Ubuntu Lunar). Then: 1) ssh into the VM 2) killall Xvnc 3) then launch spice viewer to access locally to my VM's graphical environment, and logout from my session 4) launch vncserver from the ssh terminal
And now it works. The only thing is that I have plain GNOME and not Ubuntu one. Regards.
Describe the bug I've installed the Ubuntu Jammy version of KasmVNC to run on top of a recent install of Ubuntu desktop running inside a ProxMox KVM (no GPU). When accessing locally (127.0.0.1) I can see the desktop; however accessing from other machines in the LAN, the connection seems successful and I see the left-side menu, but the screen is otherwise blank (unless I disconnect, then I get the generic KASM disconnected background).
System Description
Running inside a Proxmox VM.
KasmVNC Details kasmvncserver_jammy_1.0.1_amd64.deb
Provide the output of this command.
To Reproduce Steps to reproduce the behavior (for non-installation issues):
Expected behavior Seeing a desktop.
Browser Using Vivaldi on MacOS and Vivaldi on Android, both give the same result.
Additional context The log from KasmVNC is here.