NoVNC offers a full X-windows experience that is usable over browser. This repository could be used as "bootstrap" to virtual machine when GUI is required.
- Ubuntu 20.04
- 443 port open to VM
- Clone repo to VM in bootstrap
- Execute
novnc_install.shin bootstrap
- Install required tools to host
- Open with browser to https://IP <= user:coder pw: coderpw (defined in novnc_environment.conf )
- NoVNC session opened to browser and offer full linux desktop
- Left bottom corner of noVNC desktop is arrow where open main menu of linux desctop
FYI: Google Chrome eats a lot of cpu&mem so Firefox browser is recomended to be used.
NOTE. If you want to change username then it should be done in many places. So it is recommendation to use
- Edit novnc_environment.conf file
- Reboot VM (with reboot novnc systemd daemon is loaded pefectry, restart of daemon could work ok)
- Copy-Paste between noVNC<->HOST happens by using noVNC desctop left side menu (click arrow in center of noVNC window) and open clipboard by using it icon in menu. This is a textbox where you should paste your copy from HOST and then it could be pasted to noVNC side. Copying from noVNC to HOST happens by using same method but vice versa way.
- CapsLock could seem to be out of sync between noVNC desktop and HOST. That's why change CapsLock status always in HOST side window (e.g. by using host browser url row)
- Only 443 port should be opened to host
- nginx behind of 443 port handle SSL termination
- only basic auth is in use
- Public connection to host have to be limited by using cloud provider tools (it is recommended that just your IP or subnet could take connection to host)
- There is no guarantee of security of 3rd party SW like noVNC
Require tools: https://www.vagrantup.com/ https://www.virtualbox.org/
- Start:
vagrant up - Test as in https://github.com/TheProjectAurora/novnc-native-linux#BEHAVIOR:
- Delete:
vagrant destroy
Require same tools than https://github.com/TheProjectAurora/novnc-native-linux#vagrant-startup Box creation happened with Packer so require also it: https://www.packer.io/
- Execute:
packer build novnc.pkr.hcl - Create folder and go there:
mkdir owbox && cd ownbox - Import BOX:
vagrant box add novnc ../output-novnc/package.box - Init vagrant:
vagrant init novnc - Add 443=>443 port forwarding to Vagrantfile by editing it and adding folowing line:
config.vm.network "forwarded_port", guest: 443, host: 443
- Start vagrant:
vagrant up - Test as in https://github.com/TheProjectAurora/novnc-native-linux#BEHAVIOR:
- Delete vm:
vagrant destroy - Delete created stuff:
cd .. && rm -Rf output-novnc owbox - Delete delete vagrant box:
vagrant box remove novnc