A good solution for secure access to a web page/site or application is projector-supra-web together with SupraRBI-VNC and Apache Guacamole.
No modification to Apache Guacamole client guacmaole/guacamole or server guacamole/guacd is required, and all sessions to the target URL can be managed just as any other VNC session.
Set SUPRA_PROJECTOR_NETWORK and SUPRA_PROJECTOR_IMAGE for SupraRBI-VNC server.
# Please ensure the guacd container is in the same network as the SupraRBI-VNC server, *supra-projector*.
docker run --name vnc-rbi -d \
--network supra-projector \
-p 5900:5900 \
-e SUPRA_PROJECTOR_NETWORK='supra-projector' \
-e SUPRA_PROJECTOR_IMAGE='supraaxes/projector-supra-web' \
-v /var/run/docker.sock:/var/run/docker.sock \
supraaxes/suprarbi-vnc
The configuration on Apache Guacamole is straight forward as any other VNC connection, and for detailed information about session settings in password, please check SupraRBI-VNC
Dynamic session to https://github.com, without license file
Name: rbi-github
Protocol: VNC
Hostname: vnc-rbi
Port: 5900
Username: https://github.com
Password: {}
Shared session to https://www.google.com, with audio on, with license file
NOTE:
1. A shared session is for all users;
2. The license file on host is /opt/supra/rbi/conf/license.json
Name: rbi-google
Protocol: VNC
Hostname: vnc-rbi
Port: 5900
Username: https://www.google.com
Password: {"id":{"type":"norm","name":"1234"},"mounts":["/opt/supra/rbi/conf/license.json:/opt/supra/conf/license.jsob:ro"]}
Enable audio: checked
Audio server name: rbi-norm-1234
Dynamic session to https://github.com, with auto login, with license file.
NOTE:
1. The guacd container is in the same network as the SupraRBI-VNC server;
2. The github autofill setting file on host is /opt/supra/rbi/conf/autofill/github.json;
3. The license file on host is /opt/supra/rbi/conf/license.json
Name: rbi-github
Protocol: VNC
Hostname: vnc-rbi
Port: 5900
Username: https://github.com
Password: {"mounts":["/opt/supra/rbi/conf/autofill/github.json:/opt/supra/conf/autofill.json:ro","/opt/supra/rbi/conf/license.json:/opt/supra/conf/license.jsob:ro"],"instance-settings":{"autofill-username":"myname","autofill-password":"mypassword"}}