Compare commits
7 Commits
v0.9.3-bet
...
innovation
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
920e180c37 | ||
|
|
ba902f8194 | ||
|
|
1f5125fb24 | ||
|
|
dc60c73a81 | ||
|
|
1c54f4f921 | ||
|
|
60de5a9791 | ||
|
|
480add4fe2 |
2
.gitmodules
vendored
2
.gitmodules
vendored
@@ -1,4 +1,4 @@
|
|||||||
[submodule "kasmweb"]
|
[submodule "kasmweb"]
|
||||||
path = kasmweb
|
path = kasmweb
|
||||||
url = https://github.com/kasmtech/noVNC.git
|
url = https://github.com/kasmtech/noVNC.git
|
||||||
branch = master
|
branch = innovation/session_recording
|
||||||
|
|||||||
21
README.md
21
README.md
@@ -8,6 +8,10 @@
|
|||||||
- Security - The RFB specification (VNC) limits the password field to 8 characters, so while the client may take a longer password, only the first 8 characters are sent. KasmVNC defaults to HTTPS with HTTP Basic Auth and disables the legacy VNC authentication method which is not sufficiently secure for internet accessible systems.
|
- Security - The RFB specification (VNC) limits the password field to 8 characters, so while the client may take a longer password, only the first 8 characters are sent. KasmVNC defaults to HTTPS with HTTP Basic Auth and disables the legacy VNC authentication method which is not sufficiently secure for internet accessible systems.
|
||||||
- Simplicity - KasmVNC aims at being simple to deploy and configure.
|
- Simplicity - KasmVNC aims at being simple to deploy and configure.
|
||||||
|
|
||||||
|
# Releases
|
||||||
|
|
||||||
|
Since this is a fast evolving project, the documents on the tip of master are chaning rapidly and will not match releases. Be sure to use the README and other documentation from the release branch that matches the version of KasmVNC you are using. Do not use the README from the master branch, unless you are compiling KasmVNC yourself from the tip of master. All releases starting at 0.9.3 have a branch named in the format 'release/0.9.3', for example.
|
||||||
|
|
||||||
# New Features!
|
# New Features!
|
||||||
|
|
||||||
- Webp image compression for better bandwidth usage
|
- Webp image compression for better bandwidth usage
|
||||||
@@ -16,6 +20,7 @@
|
|||||||
- [Full screen video detection](https://github.com/kasmtech/KasmVNC/wiki/Video-Rendering-Options#video-mode), goes into configurable video mode for better full screen videoo playback performance.
|
- [Full screen video detection](https://github.com/kasmtech/KasmVNC/wiki/Video-Rendering-Options#video-mode), goes into configurable video mode for better full screen videoo playback performance.
|
||||||
- [Dynamic jpeg/webp image coompression](https://github.com/kasmtech/KasmVNC/wiki/Video-Rendering-Options#dynamic-image-quality) quality settings based on screen change rates
|
- [Dynamic jpeg/webp image coompression](https://github.com/kasmtech/KasmVNC/wiki/Video-Rendering-Options#dynamic-image-quality) quality settings based on screen change rates
|
||||||
- Seemless clipboard support (on Chromium based browsers)
|
- Seemless clipboard support (on Chromium based browsers)
|
||||||
|
- Binary clipboard support for text, images, and formatted text (on Chromium based browsers)
|
||||||
- Allow client to set/change most configuration settings
|
- Allow client to set/change most configuration settings
|
||||||
- [Data Loss Prevention features](https://github.com/kasmtech/KasmVNC/wiki/Data-Loss-Prevention)
|
- [Data Loss Prevention features](https://github.com/kasmtech/KasmVNC/wiki/Data-Loss-Prevention)
|
||||||
- Key stroke logging
|
- Key stroke logging
|
||||||
@@ -25,17 +30,20 @@
|
|||||||
- Keyboard input rate limit
|
- Keyboard input rate limit
|
||||||
- Screen region selection
|
- Screen region selection
|
||||||
- Deb packages for Debian, Ubuntu, and Kali Linux included in release.
|
- Deb packages for Debian, Ubuntu, and Kali Linux included in release.
|
||||||
- RPM packages for CentOS, Fedora. RPM packages are currently not updatable and not released, though you can build and install them. See build documentation.
|
- RPM packages for CentOS, Oracle, OpenSUSE, Fedora. RPM packages are currently not updatable and not released, though you can build and install them. See build documentation.
|
||||||
- Web [API](https://github.com/kasmtech/KasmVNC/wiki/API) added for remotely controlling and getting information from KasmVNC
|
- Web [API](https://github.com/kasmtech/KasmVNC/wiki/API) added for remotely controlling and getting information from KasmVNC
|
||||||
- Multi-User with ability to pass control to other users.
|
- Multi-User support with permissions that can be changed via the API
|
||||||
- Web UI uses a webpack for faster load times.
|
- Web UI uses a webpack for faster load times.
|
||||||
- Network and CPU bottleneck statistics
|
- Network and CPU bottleneck statistics
|
||||||
|
- Relative cursor support (game pointer mode)
|
||||||
|
- Cursor lock
|
||||||
|
- IME support for languages with extended characters
|
||||||
|
- Better mobile support
|
||||||
|
|
||||||
Future Goals:
|
Future Goals:
|
||||||
|
|
||||||
- Support uploads and downloads
|
- UDP transport for faster frame rates
|
||||||
- Pre-build Packages for all major Linux distributions
|
- H264 encoding
|
||||||
|
|
||||||
### Installation
|
### Installation
|
||||||
|
|
||||||
@@ -58,6 +66,9 @@ sudo ln -s /usr/share/doc/kasmvncserver/examples/kasmvncserver-easy-start /usr/b
|
|||||||
sudo addgroup $USER ssl-cert
|
sudo addgroup $USER ssl-cert
|
||||||
# You will need to re-connect in order to pick up the group change
|
# You will need to re-connect in order to pick up the group change
|
||||||
|
|
||||||
|
# Create a KasmVNC user able to use keyboard and mouse:
|
||||||
|
vncpasswd -u $USER -w
|
||||||
|
|
||||||
# Create ~/.vnc directory and corresponding files.
|
# Create ~/.vnc directory and corresponding files.
|
||||||
kasmvncserver-easy-start -d && kasmvncserver-easy-start -kill
|
kasmvncserver-easy-start -d && kasmvncserver-easy-start -kill
|
||||||
|
|
||||||
|
|||||||
@@ -36,7 +36,8 @@ sed -i -e '/find_package(FLTK/s@^@#@' \
|
|||||||
-e '/add_subdirectory(tests/s@^@#@' \
|
-e '/add_subdirectory(tests/s@^@#@' \
|
||||||
CMakeLists.txt
|
CMakeLists.txt
|
||||||
|
|
||||||
cmake -D CMAKE_BUILD_TYPE=RelWithDebInfo . -DBUILD_VIEWER:BOOL=OFF
|
cmake -D CMAKE_BUILD_TYPE=RelWithDebInfo . -DBUILD_VIEWER:BOOL=OFF \
|
||||||
|
-DENABLE_GNUTLS:BOOL=OFF
|
||||||
make -j5
|
make -j5
|
||||||
|
|
||||||
tar -C unix/xserver -xf /tmp/xorg-server-${XORG_VER}.tar.bz2 --strip-components=1
|
tar -C unix/xserver -xf /tmp/xorg-server-${XORG_VER}.tar.bz2 --strip-components=1
|
||||||
@@ -65,6 +66,7 @@ fi
|
|||||||
--with-xkb-output=/var/lib/xkb \
|
--with-xkb-output=/var/lib/xkb \
|
||||||
--with-xkb-bin-directory=/usr/bin \
|
--with-xkb-bin-directory=/usr/bin \
|
||||||
--with-default-font-path="/usr/share/fonts/X11/misc,/usr/share/fonts/X11/cyrillic,/usr/share/fonts/X11/100dpi/:unscaled,/usr/share/fonts/X11/75dpi/:unscaled,/usr/share/fonts/X11/Type1,/usr/share/fonts/X11/100dpi,/usr/share/fonts/X11/75dpi,built-ins" \
|
--with-default-font-path="/usr/share/fonts/X11/misc,/usr/share/fonts/X11/cyrillic,/usr/share/fonts/X11/100dpi/:unscaled,/usr/share/fonts/X11/75dpi/:unscaled,/usr/share/fonts/X11/Type1,/usr/share/fonts/X11/100dpi,/usr/share/fonts/X11/75dpi,built-ins" \
|
||||||
|
--with-sha1=libcrypto \
|
||||||
--without-dtrace --disable-dri \
|
--without-dtrace --disable-dri \
|
||||||
--disable-static \
|
--disable-static \
|
||||||
--disable-xinerama --disable-xvfb --disable-xnest --disable-xorg \
|
--disable-xinerama --disable-xvfb --disable-xnest --disable-xorg \
|
||||||
|
|||||||
@@ -9,10 +9,8 @@ RUN zypper -n install -y \
|
|||||||
# deps and rpm install
|
# deps and rpm install
|
||||||
RUN zypper -n install -y \
|
RUN zypper -n install -y \
|
||||||
libglvnd \
|
libglvnd \
|
||||||
libgnutls30 \
|
|
||||||
libgomp1 \
|
libgomp1 \
|
||||||
libjpeg8 \
|
libjpeg8 \
|
||||||
libnettle6 \
|
|
||||||
libpixman-1-0 \
|
libpixman-1-0 \
|
||||||
libXdmcp6 \
|
libXdmcp6 \
|
||||||
libXfont2-2 \
|
libXfont2-2 \
|
||||||
@@ -36,4 +34,4 @@ USER foo:kasmvnc-cert
|
|||||||
RUN mkdir ~/.vnc && echo '/usr/bin/xterm &' >> ~/.vnc/xstartup && \
|
RUN mkdir ~/.vnc && echo '/usr/bin/xterm &' >> ~/.vnc/xstartup && \
|
||||||
chmod +x ~/.vnc/xstartup
|
chmod +x ~/.vnc/xstartup
|
||||||
|
|
||||||
ENTRYPOINT bash -c "echo -e \"$VNC_PW\n$VNC_PW\n\" | kasmvncpasswd -w -u \"$VNC_USER\" && vncserver :1 -interface 0.0.0.0 && vncserver -kill :1 && vncserver :1 -depth 24 -geometry 1280x1050 -websocketPort 6901 -cert /etc/pki/tls/private/kasmvnc.pem -sslOnly -FrameRate=24 -interface 0.0.0.0 -httpd /usr/share/kasmvnc/www && tail -f $HOME/.vnc/*.log "
|
ENTRYPOINT bash -c "echo -e \"$VNC_PW\n$VNC_PW\n\" | kasmvncpasswd -w -u \"$VNC_USER\" && vncserver :1 -interface 0.0.0.0 && vncserver -kill :1 && vncserver :1 -depth 24 -geometry 1280x1050 -websocketPort 8443 -cert /etc/pki/tls/private/kasmvnc.pem -sslOnly -FrameRate=24 -interface 0.0.0.0 -httpd /usr/share/kasmvnc/www && tail -f $HOME/.vnc/*.log "
|
||||||
|
|||||||
@@ -12,7 +12,7 @@ RUN apt-get update && \
|
|||||||
|
|
||||||
RUN apt-get update && apt-get install -y --no-install-recommends tzdata
|
RUN apt-get update && apt-get install -y --no-install-recommends tzdata
|
||||||
RUN apt-get update && apt-get -y build-dep xorg-server libxfont-dev
|
RUN apt-get update && apt-get -y build-dep xorg-server libxfont-dev
|
||||||
RUN apt-get update && apt-get -y install cmake git libjpeg-dev libgnutls28-dev vim wget tightvncserver
|
RUN apt-get update && apt-get -y install cmake git libjpeg-dev vim wget
|
||||||
RUN apt-get update && apt-get -y install libpng-dev libtiff-dev libgif-dev libavcodec-dev libssl-dev libxrandr-dev libxcursor-dev
|
RUN apt-get update && apt-get -y install libpng-dev libtiff-dev libgif-dev libavcodec-dev libssl-dev libxrandr-dev libxcursor-dev
|
||||||
|
|
||||||
# Additions for webp
|
# Additions for webp
|
||||||
|
|||||||
2
kasmweb
2
kasmweb
Submodule kasmweb updated: 7e5a302a7a...43ab612108
@@ -7,7 +7,7 @@ License: GPLv2+
|
|||||||
URL: https://github.com/kasmtech/KasmVNC
|
URL: https://github.com/kasmtech/KasmVNC
|
||||||
|
|
||||||
BuildRequires: rsync
|
BuildRequires: rsync
|
||||||
Requires: xauth, libxkbcommon-x11-0, xkeyboard-config, x11-tools, openssl, perl, libpixman-1-0, libnettle6, libjpeg8, libgomp1, libgnutls30, libXfont2-2, libXdmcp6, libglvnd, xkbcomp
|
Requires: xauth, libxkbcommon-x11-0, xkeyboard-config, x11-tools, openssl, perl, libpixman-1-0, libjpeg8, libgomp1, libXfont2-2, libXdmcp6, libglvnd, xkbcomp
|
||||||
Conflicts: tigervnc, tigervnc-x11vnc
|
Conflicts: tigervnc, tigervnc-x11vnc
|
||||||
|
|
||||||
%description
|
%description
|
||||||
|
|||||||
@@ -33,14 +33,15 @@
|
|||||||
|
|
||||||
static void usage(const char *prog)
|
static void usage(const char *prog)
|
||||||
{
|
{
|
||||||
fprintf(stderr, "Usage: %s -u username [-wnod] [file]\n"
|
fprintf(stderr, "Usage: %s -u username [-wnod] [password_file]\n"
|
||||||
"-r Read permission\n"
|
"-r Read permission\n"
|
||||||
"-w Write permission\n"
|
"-w Write permission\n"
|
||||||
"-o Owner\n"
|
"-o Owner\n"
|
||||||
"-n Don't change password, change permissions only\n"
|
"-n Don't change password, change permissions only\n"
|
||||||
"-d Delete this user\n"
|
"-d Delete this user\n"
|
||||||
"\n"
|
"\n"
|
||||||
"The file is updated atomically.\n\n"
|
"The password file is updated atomically.\n"
|
||||||
|
"For more information, run \"man vncpasswd\".\n\n"
|
||||||
"To pass the password via a pipe, use\n"
|
"To pass the password via a pipe, use\n"
|
||||||
"echo -e \"password\\npassword\\n\" | %s [-args]\n",
|
"echo -e \"password\\npassword\\n\" | %s [-args]\n",
|
||||||
prog, prog);
|
prog, prog);
|
||||||
|
|||||||
@@ -281,7 +281,7 @@ $kasmAuthEnabled = 1;
|
|||||||
|
|
||||||
if ($kasmAuthEnabled) {
|
if ($kasmAuthEnabled) {
|
||||||
if (!(-e "$ENV{HOME}/.kasmpasswd")) {
|
if (!(-e "$ENV{HOME}/.kasmpasswd")) {
|
||||||
warn "\nYou will require a password to access your desktops.\n\n";
|
warn "\nYou need to create a KasmVNC user to access your desktops.\n\n";
|
||||||
system($exedir."kasmvncpasswd $ENV{HOME}/.kasmpasswd");
|
system($exedir."kasmvncpasswd $ENV{HOME}/.kasmpasswd");
|
||||||
if (($? >> 8) != 0) {
|
if (($? >> 8) != 0) {
|
||||||
exit 1;
|
exit 1;
|
||||||
|
|||||||
Reference in New Issue
Block a user