This tool makes it possible to configure remote desktop over SSH, VNC, and HTTP without port conflicts.
It will:
- allocate VNC/HTTP ports to users
- provide them with simplified SSH forwarding instructions
- prepare a web-based VNC client
Running neil-ux
will add the user to the database and re-running it will always provide them with their
SSH configuration instructions.
When configuration is applied to the user's client system, they can run ssh neil-desktop
to start forwarding.
This will display the web and VNC ports they can access, as well as instructions for correctly termination the session.
Chooser provides a simple UI that is displayed at desktop startup, enabling selection of different Desktop Environments. This UI is hardcoded with different DEs currently and can be modified as needed.
Chooser will reopen to present options again when a DE is closed but note that closing all applications before closing the DE is required for this to work. This feature is incompatible with XFCE4.
Developed for use by Team 2MuchCache at San Diego Supercomputer Center for SCC '22.
Do not attempt to install this without adaptation to your environment.
The file install.neil
should only be used as a guideline for installation requirements.
Values are hardcoded so change uxutility.js
as needed.
TigerVNC recommended. When using Chooser, change /etc/X11/Xvnc-session
to remove line vncconfig -iconic &
.Sessions are not persistent.
NOTE: There is no intra-server VNC security. Users can access other running sessions if they
know the correct port number.
Do NOT use in untrusted environments.
neil-ux
and Neil Chooser is licensed for use under the Apache 2.0 license. See LICENSE.md.
Copyright © 2022 Davit Margarian.
Neil Chooser is based on neutralinojs-minimal
and the Neutralinojs runtime.
Licensed under the MIT License. Copyright © Neutralinojs and contributors.
neil-ux
is built on Node.js and its dependencies are tabulated below:
NoVNC is licensed under the Mozilla Public License 2.0.