DOKK / manpages / debian 10 / veyon-service / veyon-ctl.1.en
VEYON-CTL(1) General Commands Manual VEYON-CTL(1)

veyon-ctl - Veyon Command Line Interface

veyon-ctl help

veyon-ctl <module> help

veyon-ctl <module> help <command>

veyon-ctl <module> <command> [parameters]

VEYON-CTL is a command line tool that in addition to the Veyon Configurator allows various configuration adjustments, automated tasks and the use of some Veyon functions without graphical interaction. The program is run either interactively on the command line or script controlled with usually elevated privileges.

For administrative tasks, the Veyon Configurator and the command line tool Veyon Control are available. Veyon Control can be started via the command veyon-ctl in the command line. If the Veyon installation directory is not in the $PATH environment variable, you must first change to the installation directory or prepend the directory to the program name.

Veyon Control falls into various control modules. For each module a set of commands is available.

Available modules are:

Commands for managing authentication keys

Commands for managing the configuration of Veyon

Commands for configuring and testing LDAP/AD integration

Commands for managing the builtin network object directory

Remote view or control a computer

Commands for configuring and controlling Veyon Service

Commands for shell functionalities

If the veyon-ctl command is called with the help parameter, a list of all available modules is displayed. The list can vary depending on the installed Veyon plugins.

Each module supports the help command, so that a list of all available commands can be displayed for each module.

The authkeys module allows the management of authentication keys so that common operations such as importing an authentication key or assigning a user group can be easily automated.

This command creates a new pair of authentication keys and stores the private and public keys in the configured key directory. The parameter must be a name for the key, which may only contain letters.

This command deletes the <KEY> authentication key from the configured key directory. Please note that a key cannot be recovered once it has been deleted.

export <KEY> [<FILE>]
This command exports the <KEY> to <FILE> authentication key. If <FILE> is not specified, the file name is derived from the name and type of <KEY>.
This command extracts the public key part from the private key <KEY> and saves it as the associated public key. When setting up another master computer, it is therefore sufficient to transfer the private key. The public key can then be extracted.
import <KEY> [<FILE>]
This command imports the authentication key <KEY> from <FILE>. If <FILE> is not specified, the file name is derived from the name and type of <KEY>.
list [details]
This command lists all available authentication keys in the configured key directory. If the details option is specified, a table with key details is output instead. Some details may be missing if a key cannot be accessed, e.g. due to missing read permissions.
This command adjusts the file access permissions on the <KEY> so that only the user group <ACCESS GROUP> has read access to it.

Available commands for the config module are:

Clear system-wide Veyon configuration. This command resets the entire local configuration by deleting all configuration keys. Use this command to recreate a defined state before importing another configuration:


veyon-ctl config clear

Export configuration to given file.This command exports the local configuration to a file. The name of the destination file must be specified as an additional parameter:


veyon-ctl config export myconfig.json

Read and output configuration value for given key. This command allows reading a single configuration key. The name of the key must be supplied as a parameter.


veyon-ctl config get Network/PrimaryServicePort

Import configuration from given file. This command imports a previously exported configuration file into the local configuration. The name of the configuration file to be imported must be specified as an additional argument:


veyon-ctl config import myconfig.json

List all configuration keys and values. This command shows a list of all configuration keys and their corresponding values.


veyon-ctl config list

Using this command you can find the names of configuration keys in order to get oder set them one by one.

Write given value to given configuration key. With this command a single configuration key can be written. The name of the key and the desired value must be passed as additional arguments:


veyon-ctl config set Network/PrimaryServicePort 12345


veyon-ctl config set Service/Autostart true


veyon-ctl config set UI/Language de_DE

Unset (remove) given configuration key. This command deletes a single configuration key resulting in Veyon using the internal index:`default value for this key. The name of the key must be passed as an additional argument:


veyon-ctl config unset Directories/Screenshots

Upgrade and save configuration of program and plugins. With this command the configuration of Veyon and all plugins can be updated and saved. This may be necessary if settings or configuration formats have changed due to program or plugin updates.

There are several LDAP specific operations provided through Veyon Control All operations are provided through the LDAP module. All lists of all supported commands is printed on entering


veyon-ctl ldap help

whereas command specific help texts can be shown via


veyon-ctl ldap help <command>

The available commands are:

This command can be used to automatically determine the used Base DN and permanently write it to the configuration. An LDAP server URL and optionally a naming context attribute have to be supplied as parameters:


veyon-ctl ldap autoconfigurebasedn ldap://192.168.1.2/ namingContexts


veyon-ctl ldap autoconfigurebasedn ldap://Administrator:MYPASSWORD@192.168.1.2:389/

This command allows querying LDAP objects (rooms, computers, groups, users) and is designed mainly for debugging purposes. However, the function can also be used for developing scripts that may be helpful for system integration.


veyon-ctl ldap query users


veyon-ctl ldap query computers

Veyon provides a built-in network object directory that can be used when no LDAP server is available. This network object directory can be managed in the Veyon Configurator as well as on the command line. Certain operations such as CSV import are currently only available on the command line. For most commands, a detailed description with examples is available in the command-specific help. The following commands can be used in the NETWORKOBJECTS module:

This command adds an object, where <TYPE> can be room or computer. <PARENT> can be specified as name or UUID.

This command resets the entire network object directory, i.e. all rooms and computers are removed. This operation is particularly useful before any automated import.

This command outputs the complete network object directory as a flat table. Each property such as object UID, type or name is displayed as a separate column.

export <FILE> [room <ROOM>] [format <FORMAT-STRING-WITH-VARIABLES>]
This command can be used to export either the complete network object dictionary or only the specified room to a text file. The formatting can be controlled via a format string and the variables it contains, so that, for example, a CSV file can be generated. Valid variables are %type%, %name%, %host%, %mac% and %room%. Various examples are given in the command help (veyon-ctl networkobjects help export).

import <FILE> [room < SPACE>] [format <FORMAT-STRING-WITH-VARIABLES>] [regex <REGULAR-EXPRESSION-WITH-VARIABLES>]
This command can be used to import a text file into the network object directory. The processing of the input data can be controlled via a format string or a regular expression and contained variables. This way both CSV files and otherwise structured data can be imported. Valid variables are %name%, %host%, %mac% and %room%. Various examples are given in the command help (veyon-ctl networkobjects help import).

This command prints the complete network object directory as a formatted list. Unlike the dump command, the hierarchy of rooms and computers is represented by appropriate formatting.

This command removes the specified object from the directory. <OBJECT> can be specified as name or UUID. When a room is removed, all computers in it are also removed.

The remoteaccess module provides functions for a graphical remote access to computers. These are the same function that can be accessed from the Veyon Master. For example, the function provided by the command line tool can be used to create a program shortcut for direct access to a particular computer.

This command opens a window with the remote control function that can be used to control a remote computer. The computer name or IP address (and optionally the TCP port) must be passed as an argument:


veyon-ctl remoteaccess control 192.168.1.2

This command opens a window with the remote view function to monitor a remote computer. In this mode the screen content is displayed in real time, but interaction with the computer is not possible until the corresponding button on the tool bar has been clicked. The computer or IP address (and optionally the TCP port) has to be passed as an argument:


veyon-ctl remoteaccess view pc5:5900

The local Veyon Service can be controlled using the service module.

This command registers the Veyon Service in the operating system as a service so that it starts automatically when the computer starts up.


veyon-ctl service register

This command removes the service registration in the operating system so that the Veyon Service will not start automatically on startup.


veyon-ctl service unregister

This command starts the Veyon Service.


veyon-ctl service start

This command stops the Veyon Service.


veyon-ctl service stop

This command restarts the Veyon Service.


veyon-ctl service restart

This command queries and displays the status of the Veyon Service.


veyon-ctl service status

Simple shell functionalities are provided by the shell module. If this module is called without further arguments, an interactive mode is started. In this mode, all CLI commands can be entered direcliy without having to specify and call the veyon-ctl program for each command. The mode can be exited by entering the keyword exit.

Additionally the module can be used for automated processing of commands in a text file in order to implement simple batch processing:

This command executes the commands specified in the text file line by line. Operations are executed independently of the result of previous operations, i.e. an error does not lead to termination.

For more information about the veyon-ctl command, point your browser to file:///usr/share/doc/veyon-ctl/ or https://veyon.io/.

veyon-service(1), veyon-master(1), veyon-configurator(1)

https://veyon.io/

Veyon has been written by Tobias Junghans.

This manual page has been written by Tobias Junghans and Mike Gabriel.

2018-12-07 Veyon