Xvnc is a VNC (Virtual Network Computing) server. It acts like
an X server with a virtual display. The display can be seen by a VNC
viewer application, which may be running on a different machine: see
vncviewer(1). Xvnc is built inside the source code tree of
XFree86, and shares many options with it.
Normally, you don't need to start Xvnc manually; use the
vncserver(1) wrapper script instead. This script sets reasonable
defaults for Xvnc session, checks many error conditions etc.
Please read the BUGS section if you plan to use VNC on an
untrusted network.
OPTIONS
Xvnc supports many standard X server options and a number of
VNC-specific options. To see what standard X server options are
supported, please look at the Xvnc-help output and read
the Xserver(1) manual page for details on those options.
The VNC-specific options are as follows:
-geometrywidthxheight
Set desktop width and height.
-depthdepth
Set the colour depth of the visual to provide, in bits per pixel. Must
be a value between 8 and 32.
-pixelformatrgbNNN|bgrNNN
Set colour format for pixels representation. The viewer can do the
conversion to any other pixel format, but it is faster if the depth
and pixel format of the server is the same as the equivalent values on
the viewer display.
-udpinputportport
UDP port for keyboard/pointer data.
-rfbportport
TCP port for RFB protocol. The RFB protocol is used for commnunication
between VNC server and clients.
-rfbwaittime
Maximum time, in milliseconds, to wait for an RFB client (VNC viewer).
-nocursor
Don't put up a pointer cursor on the desktop.
-rfbauthpasswd-file
Use authentication on RFB protocol from the specified file. The
passwd-file can be created using the vncpasswd(1) utility.
-httpddir
Serve files via HTTP protocol from the specified directory. Normally,
Java viewer classes are stored in such directory.
-httpportport
TCP port on which Xvnc should listen for incoming HTTP connections (to
allow access to the desktop from any Java-capable browser).
-deferupdatetime
Time in milliseconds, to defer screen updates (default 40). Deferring
updates helps to coalesce many small desktop changes into a few larger
updates thus saving network bandwidth.
-economictranslate
Use less memory-hungry pixel format translation.
-lazytight
Disable the "gradient" filter in Tight encoding (TightVNC-specific).
The "gradient" filter often helps to improve data compression ratios,
but may slow down the server performance. Please note that this filter
is never used when a client enables JPEG compression in the Tight
encoding.
-desktopname
Set VNC desktop name ("x11" by default).
-alwaysshared
Always treat new clients as shared, never disconnect existing client
on a new client connection.
-nevershared
Never treat new clients as shared, do not allow several simultaneous
client connections.
-dontdisconnect
Don't disconnect existing clients when a new non-shared connection
comes in, refuse new connection instead.
-viewonly
Don't accept keboard and pointer events from clients. All clients will
be able to see the desktop but won't be able to control it.
-localhost
Only allow loopback connections from localhost. This option is useful
in conjunction with SSH tunneling.
-interfaceipaddr
Listen for client connections only on the network interface with given
ipaddr.
-inetd
Xvnc is launched by inetd. This option causes Xvnc to redirect
network input/output to stdin/stdout.
-compatiblekbd
Set META and ALT keys to the same X modifier flag, as in the original
version of Xvnc by AT&T labs (TightVNC-specific).
BUGS
There are many security problems in current Xvnc implementation. It's
recommended to restrict network access to Xvnc servers from untrusted
network adresses. Probably, the best way to secure Xvnc server is to
allow only loopback connections from the server machine (the
-localhost option) and to use SSH tunneling for remote access
to the Xvnc server. For details on SSH tunneling, see
<URL:http://www.uk.research.att.com/vnc/sshvnc.html> .
Original VNC was developed in AT&T Laboratories Cambridge. TightVNC
additions was implemented by Constantin Kaplinsky. Many other people
participated in development, testing and support.