Provided by: tigervnc-scraping-server_1.14.1+dfsg-1_amd64 bug

NAME

       x0tigervncserver - start or stop a TigerVNC scraping server

SYNOPSIS

       x0tigervncserver   [:display#|-display   :display#]   [-rfbport   rfbport#]  [-rfbunixpath
       Unixsocketpath] [-rfbunixmode  permissions]  [-localhost  [yes|no]]  [-SecurityTypes  sec-
       types] [-RequireUsername [yes|no]] [-PasswordFile|-rfbauth passwd-file] [-PlainUsers user-
       list] [-PAMService|-pam_service service-name] [-X509Key  cert-key-file]  [-X509Cert  cert-
       file]   [-RSAKey   rsa-key-file]   [-fg]   [-useold]   [-verbose]   [-dry-run]  [-Geometry
       <width>x<height>[{+,-}<xoffset>{+,-}<yoffset>]]   [-pidfile   pid-file-path]   [X0tigervnc
       options...]
       x0tigervncserver   -kill   [{:display#,:*}|-display  {:display#,:*}]  [-rfbport  rfbport#]
       [-rfbunixpath Unixsocketpath] [-dry-run] [-verbose] [-clean]
       x0tigervncserver  -list  [{:display#,:*}|-display  {:display#,:*}]   [-rfbport   rfbport#]
       [-rfbunixpath Unixsocketpath] [-cleanstale]
       x0tigervncserver -version

DESCRIPTION

       The x0tigervncserver wrapper script is used to start the X0tigervnc server that makes an X
       display remotely accessible via VNC (Virtual Network Computing).  Unlike  Xtigervnc,  this
       server  does  not  create  a virtual display. Instead, it just shares an existing X server
       (typically, that one connected to the physical screen). The XDamage extension will be used
       if  the existing X server supports it. Otherwise, X0tigervnc will fall back to polling the
       screen for changes.

       As usual, the VNC desktop can be connected to with the xtigervncviewer VNC viewer  or  any
       other   VNC   viewer.  For  details,  see  the  xtigervncviewer(1)  man  page  or  execute
       "xtigervncviewer -help".

       System defaults for this  wrapper  script  are  found  in  /etc/tigervnc/vncserver-config-
       defaults.   These   defaults   can   be   overwritten   by  the  user  defaults  given  in
       ~/.config/tigervnc/config.pl (see the  tigervnc.conf(5x)  man  page).  Next,  command-line
       options overwrite the settings in both tigervnc configuration files. Finally, options from
       /etc/tigervnc/vncserver-config-mandatory  have  the  highest  priority   overwriting   all
       previous settings.

       WARNING!  There  is nothing stopping users from constructing their own wrapper script that
       calls X0tigervnc directly to bypass any options defined  in  the  /etc/tigervnc/vncserver-
       config-mandatory configuration file.

OPTIONS

       You  can  get a list of options by giving -h as an option to x0tigervncserver. In addition
       to the options listed below, any unrecognized options will be passed to X0tigervnc  –  see
       the X0tigervnc(1) man page or "X0tigervnc -help" for details.

       :display#|-display :display#
              Specifies the X11 display to be shared by the X0tigervnc server.

       -rfbport rfbport#
              Specifies  the  TCP  port  on which X0tigervnc listens for connections from viewers
              (the protocol used in VNC is called RFB – "remote  framebuffer").  The  default  is
              5900 plus the display number display#.  To disable, specify -1.

       -rfbunixpath Unix socket path
              Specifies  a  path  to  be  used  for  listening  on as a Unix domain socket by the
              X0tigervnc server.  No Unix  domain  socket  is  created  if  this  option  is  not
              provided.

       -rfbunixmode permissions
              Specifies the mode of the Unix domain socket. The default is 0600.

       -localhost [yes|no]
              Should  the  TigerVNC  server  only  listen  on  localhost  for  incoming  TigerVNC
              connections. Useful if you use SSH and want to stop non-SSH  connections  from  any
              other  hosts.  If  the option is not specified, then the behavior is as follows: We
              will only listen on localhost if the sec-types list does not contain  any  TLS*  or
              X509*  security  types  or  if  the list contains at least one *None security type.
              Otherwise, we will listen on all network addresses of the machine.

       -SecurityTypes sec-types
              Specify which security scheme to use for incoming connections. Valid values  are  a
              comma-separated  list of None, VncAuth, Plain, TLSNone, TLSVnc, TLSPlain, X509None,
              X509Vnc, X509Plain, RA2, RA2ne, RA2_256, and  RA2ne_256.   Default  is  VncAuth  if
              -localhost is not given and VncAuth,TLSVnc if -localhost no is given.

       -RequireUsername [yes|no]
              Specifies for the RSA-AES security types (i.e., RA2, RA2ne, RA2_256, and RA2ne_256)
              if  authentication  should  be   performed   via   Unix   username   and   password
              (-RequireUsername  yes) or the VNC password file (-RequireUsername no). The default
              is to perform authentication via the VNC password file.

       -PasswordFile passwd-file | -rfbauth passwd-file
              Specifies the file containing the password used to  authenticate  viewers  for  the
              security  types  VncAuth,  TLSVnc, X509Vnc, RA2, RA2ne, RA2_256, and RA2ne_256. The
              default password file is ~/.config/tigervnc/passwd. For the RSA-AES security types,
              authentication via the VNC password file is only performed in case -RequireUsername
              is no, which is the default.

       -PlainUsers user-list
              Specifies a comma-separated list of user names that are allowed to authenticate via
              any  of  the *Plain security types (Plain, TLSPlain, etc.)  or the RSA-AES security
              types (RA2, RA2ne, etc.) in case -RequireUsername is yes. Specify *  to  allow  any
              user  to  authenticate using these security types. The default only allows the user
              who has started the x0tigervncserver wrapper script.

       -PAMService service-name | -pam_service service-name
              Specifies the PAM service name to use when authenticating users using any of the
               *Plain security types or the RSA-AES security types in  case  -RequireUsername  is
              yes.  Default  is  vnc  if  /etc/pam.d/vnc  is  present and tigervnc otherwise. The
              tigervnc-common package ships the /etc/pam.d/tigervnc PAM service configuration for
              use by x0tigervncserver.

       -X509Cert cert-path and -X509Key key-path
              Path  to  a  X509  certificate in PEM format to be used for all X509 based security
              types (i.e., X509None, X509Vnc, etc.) as well  as  its  private  key  also  in  PEM
              format.  If  the  certificate  and  its  key are not provided via the -X509Cert and
              -X509Key command-line options or their corresponding  configuration  parameters  in
              the        configuration       files       /etc/tigervnc/vncserver-config-defaults,
              ~/.config/tigervnc/config.pl, or /etc/tigervnc/vncserver-config-mandatory, then the
              x0tigervncserver wrapper script auto-generates a self-signed certificate. The auto-
              generated self-signed certificate and its private  key  are  stored  in  the  files
              ~/.config/tigervnc/host-SrvCert.pem and ~/.config/tigervnc/host-SrvKey.pem.

       -RSAKey rsa-key-path
              Path  to  an  RSA key in PEM format used by all RSA-AES security types.  If the RSA
              key is not provided via  the  -RSAKey  command-line  option  or  the  corresponding
              configuration  parameter in the configuration files /etc/tigervnc/vncserver-config-
              defaults,    ~/.config/tigervnc/config.pl,    or    /etc/tigervnc/vncserver-config-
              mandatory,  then the x0tigervncserver wrapper script auto-generates an RSA key. The
              auto-generated key is stored in the file ~/.config/tigervnc/host-SrvRsaKey.pem.

       -fg    Runs the X0tigervnc server as a foreground process. Thus, the server can be aborted
              with CTRL-C.

       -useold
              Only  start  a  new TigerVNC server if a VNC server for your account is not already
              running on the requested display number display#  and  RFB  port  rfbport#.  If  no
              display number is requested, a new TigerVNC server will only be started if there is
              no TigerVNC server running under your user account. In any case, information  about
              the  newly  started  TigerVNC  server or the reused TigerVNC server session will be
              printed.

       -verbose
              This will turn on some debug output.

       -dry-run
              Do not actually do anything, but only perform the checks if  the  requested  action
              would be possible. For example, there will be checks performed for the availability
              of the requested display number display#.

       -Geometry <width>x<height>[{+,-}<xoffset>{+,-}<yoffset>]
              Specifies the screen area that will be shown to VNC clients, e.g., 640x480+320+240.
              The format is <width>x<height>+<xoffset>+<yoffset>, where `+' signs can be replaced
              with `-' signs to specify offsets from the right and/or  from  the  bottom  of  the
              screen.  Offsets are optional, +0+0 is assumed by default (top left corner). If the
              argument is empty, full screen is shown to VNC clients (this is the default).

       -pidfile
              Specifies the file that stores the pid of the X0tigervnc server to be started.

       -kill [ :{display#,*} | -display :{display#,*} ] [ -rfbport rfbport# ]
              This  kills  a  TigerVNC  server  previously  started  with   x0tigervncserver   or
              tigervncserver. It does this by killing the VNC server process, whose process ID is
              stored in the file  ~/.config/tigervnc/host:rfbport#.pid.  If  :*  is  given,  then
              x0tigervncserver   tries  to  kill  all  VNC  server  processes  with  pidfiles  in
              ~/.config/tigervnc on the local machine.  If  no  display  number  is  given,  then
              x0tigervncserver  tries  to  kill  the  VNC server process of the user on the local
              machine  if  only  one  such  process   is   running   and   has   a   pidfile   in
              ~/.config/tigervnc.

       -clean If  given with -kill, then the logfile ~/.config/tigervnc/host:rfbport#.log is also
              removed.

       -list [ :{display#,*} | -display :{display#,*} ] [ -rfbport rfbport# ]
              This lists all running TigerVNC servers previously started with x0tigervncserver or
              tigervncserver. Stale entries are marked with (stale) in the output.

       -cleanstale
              If  given  with  -list,  then  stale  entries  –  resulting from missed cleanups of
              pidfiles in ~/.config/tigervnc as well as stale X11 locks and sockets in  /tmp  due
              to  Xtigervnc  or  X0tigervnc  server crashes – are cleaned up and not shown in the
              output of -list.

FILES

       Several TigerVNC-related files are found in the ~/.config/tigervnc directory:

       ~/.config/tigervnc/passwd
              The TigerVNC password file for the security types VncAuth, TLSVnc, and X509Vnc.

       ~/.config/tigervnc/<host>:<display#>.log
              The log file for the VNC server.  In case there is already a VNC server running for
              the        display,        either        <host>:<display#>-<rfbport#>.log        or
              <host>:<display#>-<rfbunixpath>.log will be used as a log file.

       ~/.config/tigervnc/<host>:<display#>.pid
              Identifies the VNC server process ID, used by the -kill option.  In case  there  is
              already     a     VNC     server     running     for     the     display,    either
              <host>:<display#>-<rfbport#>.pid  or  <host>:<display#>-<rfbunixpath>.pid  will  be
              used as a pid file.

       ~/.config/tigervnc/<host>-SrvCert.pem and <host>-SrvKey.pem
              The  security  types  X509None,  X509Vnc,  and X509Plain need a certificate and the
              corresponding private key. If these are not provided via the -X509Cert and -X509Key
              command-line  options  or  their  corresponding  configuration  parameters  in  the
              configuration            files             /etc/tigervnc/vncserver-config-defaults,
              ~/.config/tigervnc/config.pl, or /etc/tigervnc/vncserver-config-mandatory, then the
              x0tigervncserver wrapper script auto-generates a self-signed  certificate  for  the
              -X509Cert  and  -X509Key options of the X0tigervnc server. The auto-generated self-
              signed certificate and its private key are stored in the above given two files.  If
              the  user wants their own certificate – instead of the on-demand auto-generated one
              – they can either  specify  it  via  the  x0tigervncserver  options  -X509Cert  and
              -X509Key    or    replace   the   files   ~/.config/tigervnc/host-SrvCert.pem   and
              ~/.config/tigervnc/host-SrvKe.pem.   These  files  will  not  be  overwritten  once
              generated by the x0tigervncserver wrapper script.

       ~/.config/tigervnc/<host>-SrvRsaKey.pem
              The  RSA-AES  security types (i.e., RA2, RA2ne, RA2_256, and RA2ne_256) need an RSA
              private key. If this key is not provided via the -RSAKey command-line option or the
              corresponding  parameter in the configuration files /etc/tigervnc/vncserver-config-
              defaults,    ~/.config/tigervnc/config.pl,    or    /etc/tigervnc/vncserver-config-
              mandatory,  then  the x0tigervncserver wrapper script auto-generates an RSA key for
              the -RSAKey option of the X0tigervnc server. The auto-generated key  is  stored  in
              the file ~/.config/tigervnc/host-SrvRsaKey.pem.

       ~/.config/tigervnc/config.pl
              The  user  configuration  file  for  x0tigervncserver.   To  be compatible with the
              upstream  provided  wrapper  scripts,  we  will  fall  back  to  trying   to   load
              configuration from ~/.config/tigervnc/config if ~/.config/tigervnc/config.pl is not
              present. Note that the config file uses key=value lines  as  configuration  syntax,
              while  the  config.pl  and  the  tigervncserver-config-* files in the /etc/tigervnc
              directory use perl(1) syntax.

       Furthermore,  there  are  global  configuration  files   for   x0tigervncserver   in   the
       /etc/tigervnc directory:

       /etc/tigervnc/vncserver-config-defaults
              The global configuration file specifying the defaults for x0tigervncserver.

       /etc/tigervnc/vncserver-config-mandatory
              If  this  file  exists  and  defines  options to be passed to X0tigervnc, they will
              override any of the same options defined in a user's config.pl file or  ones  given
              on  the  command  line  of  this  wrapper  script.  This file offers a mechanism to
              establish some basic form of system-wide policy.

              WARNING! There is nothing stopping users from constructing their own wrapper script
              that   calls   X0tigervnc   directly   to   bypass   any  options  defined  in  the
              /etc/tigervnc/vncserver-config-mandatory configuration file.

SEE ALSO

       tigervnc.conf(5x), tigervncpasswd(1), X0tigervnc(1), xtigervncviewer(1), tigervncserver(1)
       https://www.tigervnc.org/

AUTHOR

       Joachim Falk, Constantin Kaplinsky and others.

       VNC was originally developed by the RealVNC team while at Olivetti  Research  Ltd  /  AT&T
       Laboratories  Cambridge. TightVNC additions were implemented by Constantin Kaplinsky. Many
       other people have since participated in development, testing and support. This  manual  is
       part of the TigerVNC Debian packaging project.