Command line interface

Voor administratieve taken zijn de Veyon Configurator en de command line tool Veyon CLI beschikbaar. Het programma kan worden gestart via het commando veyon-cli in de commandoregel. Op Windows is er een extra niet-console versie veyon-wcli die het mogelijk maakt om taken te automatiseren zonder irritante command line window popups. Als de omgevingsvariabele $PATH (Linux) of %PATH% (Windows) niet de Veyon installatiedirectory bevat, moet u eerst naar de installatiedirectory gaan of de directory aan de programmanaam toevoegen.

Als het programma wordt aangeroepen met de help parameter, wordt een lijst met alle beschikbare modules weergegeven. De lijst kan variëren afhankelijk van de geïnstalleerde Veyon plugins:

$ veyon-cli help
Available modules:
    authkeys - Commands for managing authentication keys
    config - Commands for managing the configuration of Veyon
    ldap - Commands for configuring and testing LDAP/AD integration
    networkobjects - Commands for managing the builtin network object directory
    power - Commands for controlling power status of computers
    remoteaccess - Remote view or control a computer
    service - Commands for configuring and controlling Veyon Service
    shell - Commands for shell functionalities

Elke CLI-module ondersteunt het help commando, zodat een lijst met alle beschikbare commando’s voor elke module kan worden weergegeven. Voorbeelduitvoer voor de module config:

$ veyon-cli config help
Available commands:
    clear - Clear system-wide Veyon configuration
    export - Export configuration to given file
    get - Read and output configuration value for given key
    import - Import configuration from given file
    list - List all configuration keys and values
    set - Write given value to given configuration key
    unset - Unset (remove) given configuration key
    upgrade - Upgrade and save configuration of program and plugins

Voor sommige modules kan het help commando gegeven worden met een commandonaam als extra argument om specifieke hulp voor een commando te krijgen:

$ veyon-cli remoteaccess help control

remoteaccess control <host>

Beheer verificatiesleutels

De authkeys module maakt het beheer van authenticatiesleutels mogelijk zodat veelvoorkomende handelingen zoals het importeren van een authenticatiesleutel of het toewijzen van een gebruikersgroep eenvoudig geautomatiseerd kunnen worden.

Notitie

De <KEY> parameter verwijst altijd naar een sleutelnaam die bestaat uit een naamidentificatiesymbool en een type, bijvoorbeeld leraar/publiek. Een naamaanduiding mag alleen uit letters bestaan. Het type moet privaat of publiek zijn.

create <NAME>

Dit commando maakt een authenticatiesleutelpaar met naam <NAME> en slaat de private en publieke sleutel op in de geconfigureerde sleuteldirectory’s. De parameter moet een naam voor de sleutel zijn, die alleen letters mag bevatten.

delete <KEY>

Dit commando verwijdert de authenticatiesleutel <KEY> uit de geconfigureerde sleutelmap. Merk op dat een sleutel’niet kan worden hersteld als hij eenmaal is verwijderd.

export <KEY> [<FILE>]

Dit commando exporteert de authenticatiesleutel <KEY> naar <FILE> Als<FILE> niet is opgegeven, wordt een naam geconstrueerd uit naam en type <KEY>.

extract <KEY>

Dit commando haalt het openbare sleutelgedeelte uit de privésleutel <KEY> en slaat het op als de bijbehorende openbare sleutel. Bij het instellen van een andere mastercomputer is het daarom voldoende om alleen de privésleutel over te dragen. De openbare sleutel kan vervolgens worden uitgepakt.

import <KEY> [<FILE>]

Dit commando importeert de authenticatiesleutel <KEY> uit <FILE>. Als <FILE> niet is opgegeven, wordt een naam samengesteld uit de naam en het type van <KEY>.

list [details]

Dit commando geeft een lijst weer van alle beschikbare authenticatiesleutels in de geconfigureerde sleutelmap. Als de optie details is opgegeven, wordt in plaats daarvan een tabel met sleuteldetails weergegeven. Sommige details kunnen ontbreken als een sleutel niet toegankelijk is, bijvoorbeeld door het ontbreken van leesrechten.

setaccessgroup <KEY> <ACCESS GROUP>

Dit commando past de toegangsrechten voor bestanden aan naar <KEY> zodat alleen de gebruikersgroep <ACCESS GROUP> leestoegang heeft.

Configuratiebeheer

Met behulp van de module config kan de lokale Veyon configuratie worden beheerd. Zowel de complete configuratie als afzonderlijke configuratiesleutels kunnen worden gelezen of geschreven.

clear

Dit commando reset de hele lokale configuratie door alle configuratiesleutels te verwijderen. Gebruik dit commando om een gedefinieerde toestand opnieuw te maken zonder oude instellingen voordat je een configuratie importeert.

export

Dit commando exporteert de lokale configuratie naar een bestand. De naam van het doelbestand moet als extra parameter worden opgegeven:

veyon-cli config export myconfig.json
import

Dit commando importeert een eerder geëxporteerd configuratiebestand in de lokale configuratie. De naam van het te importeren configuratiebestand moet als extra argument worden opgegeven:

veyon-cli config import myconfig.json
list [defaults | types]

Dit commando toont een lijst van alle configuratiesleutels en hun bijbehorende waarden. Op deze manier kun je de namen van de configuratiesleutels krijgen om ze afzonderlijk te lezen of te schrijven via de get of set commando’s. Als daarnaast defaults wordt opgegeven, wordt de standaardwaarde voor elke configuratiesleutel afgedrukt in plaats van de werkelijke geconfigureerde waarde. Als alternatief kunnen de datatypes van de configuratiesleutels worden geïnspecteerd door types op te geven.

get

Met dit commando kun je een enkele configuratiesleutel lezen. De naam van de sleutel moet als parameter worden opgegeven.

veyon-cli config get Network/VeyonServerPort
set

Dit commando kan worden gebruikt om een enkele configuratiesleutel te maken. De naam van de sleutel en de gewenste waarde moeten als extra argumenten worden doorgegeven:

veyon-cli config set Network/VeyonServerPort 12345
veyon-cli config set Service/Autostart true
veyon-cli config set UI/Language de_DE
unset

Met dit commando kan één enkele configuratiesleutel worden verwijderd, d.w.z. Veyon gebruikt dan de interne standaardwaarde. De naam van de sleutel moet als extra argument worden meegegeven:

veyon-cli config unset Directories/Screenshots
upgrade

Met dit commando kan de configuratie van Veyon en alle plugins worden bijgewerkt en opgeslagen. Dit kan nodig zijn als instellingen of configuratieformaten door updates van programma’s of plugins zijn gewijzigd.

Kenmerkencontrole

De module functie biedt commando’s om beschikbare functies op te vragen en ze te bedienen op computers op afstand.

list

Geeft een lijst weer met de namen van alle beschikbare functies.

show

Toont een tabel met gedetailleerde informatie over alle beschikbare functies. Deze informatie bevat een beschrijving, de UID, de naam van de plugin die de betreffende eigenschap levert en enkele andere implementatie-gerelateerde details.

start <FEATURE> <HOST ADRESS> [<ARGUMENTS>]

Start de opgegeven functie op de opgegeven host door verbinding te maken met de Veyon Server die extern draait. De functie kan op naam of UID worden opgegeven. Gebruik het show commando om alle beschikbare functies te zien. Afhankelijk van het kenmerk moeten extra argumenten (zoals de weer te geven tekstboodschap) gecodeerd als een enkele JSON string worden opgegeven. Raadpleeg de documentatie voor ontwikkelaars voor meer informatie

stop <FEATURE> <HOST ADRESS>

Stopt de opgegeven functie op de opgegeven host door verbinding te maken met de Veyon Server die extern draait. De functie kan worden opgegeven met naam of UID. Gebruik het show commando om alle beschikbare functies te zien.

LDAP

De commando’s die beschikbaar zijn in de ldap module zijn gedocumenteerd in sectie Command line interface in hoofdstuk LDAP/AD integratie.

Netwerk object map

Zoals in de paragraaf Locaties & computers beschreven, biedt Veyon een ingebouwde netwerkobjectmap die gebruikt kan worden als er geen LDAP-server beschikbaar is. Deze netwerk object map kan zowel in de Veyon Configurator als op de opdrachtregel worden beheerd. Bepaalde bewerkingen zoals CSV import zijn momenteel alleen beschikbaar op de opdrachtregel. Voor de meeste commando’s is in de opdrachtspecifieke help een gedetailleerde beschrijving met voorbeelden beschikbaar. De volgende commando’s kunnen in de module netwerkobjecten worden gebruikt:

add <TYPE> <NAME> [<HOST ADDRESS> <MAC ADDRESS> <PARENT>]

Dit commando voegt een object toe, waarbij <TYPE> locatie of computer kan zijn.``<PARENT>`` kan worden opgegeven als naam of UUID.

clear

Dit commando reset de hele netwerk object map, d.w.z. alle locaties en computers worden verwijderd. Deze bewerking is vooral nuttig vóór een geautomatiseerde import.

dump

Dit commando geeft de volledige netwerk object map weer als een platte tabel. Elke eigenschap zoals object UID, type of naam wordt weergegeven als een aparte kolom.

export <FILE> [location <LOCATION>] [format <FORMAT-STRING-WITH-VARIABLES>]

Met dit commando kun je de volledige netwerk object map of alleen de opgegeven locatie exporteren naar een tekstbestand. De opmaak kan worden geregeld via een format string die plaatsvervangende variabelen bevat. Hierdoor kun je gemakkelijk CSV-bestanden genereren. Geldige variabelen zijn %type%, %name%, %host%, %mac% and %location%. Verschillende voorbeelden worden gegeven in de help van het commando (veyon-cli netwerkobjecten help export).

Notitie

Wanneer je dit commando gebruikt in batchbestanden of via geplande taken op Windows, zorg er dan voor dat je het procentteken correct laat wegvallen, d.w.z. gebruik %%type%% in plaats van %type%. Anders worden de individuele delen van de opmaak-tekenreeksen behandeld als omgevingsvariabelen en in de meeste gevallen vervangen door lege tekenreeksen. Dit leidt tot onverwachte ontleedfouten.

import <FILE> [location <LOCATION>] [format <FORMAT-STRING-WITH-VARIABLES>] [regex <REGULAR-EXPRESSION-WITH-VARIABLES>]

Met dit commando kun je een tekstbestand importeren in de netwerkobject map. De verwerking van de invoergegevens kan worden geregeld via een opmaaktekenreeks of een reguliere expressie die plaatshoudervariabelen bevat. Op deze manier kunnen zowel CSV-bestanden als andere soorten gestructureerde gegevens worden geïmporteerd. Geldige variabelen zijn %type%, %naam%, %host%, %mac% en %locatie%. Verschillende voorbeelden worden gegeven in de help van het commando (veyon-cli networkobjects help import).

Notitie

Wanneer je dit commando gebruikt in batchbestanden of via geplande taken op Windows, zorg er dan voor dat je het procentteken correct laat wegvallen, d.w.z. gebruik %%type%% in plaats van %type%. Anders worden de individuele delen van de opmaak-tekenreeksen behandeld als omgevingsvariabelen en in de meeste gevallen vervangen door lege tekenreeksen. Dit leidt tot onverwachte ontleedfouten.

list

Dit commando drukt de complete netwerk object map af als een geformatteerde lijst. In tegenstelling tot het dump commando, wordt de hiërarchie van locaties en computers weergegeven door de juiste opmaak.

remove <OBJECT>

Deze opdracht verwijdert het opgegeven object uit de map. OBJECT kan worden opgegeven met naam of UUID. Als je een locatie verwijdert, worden ook alle gerelateerde computers verwijderd.

Stroom

Met de module power kunnen stroomgerelateerde functies vanaf de commandoregel worden gebruikt.

on <MAC ADDRESS>

Dit commando zendt een Wake-on-LAN (WOL) pakket uit naar het netwerk om de computer met het opgegeven MAC-adres in te schakelen.

Toegang op afstand

De module remoteaccess biedt functies voor een grafische toegang op afstand tot computers. Dit zijn dezelfde functies die vanuit de Veyon Master kunnen worden opgeroepen. De functie van de commandoregeltool kan bijvoorbeeld worden gebruikt om een snelkoppeling naar een programma te maken voor directe toegang tot een bepaalde computer.

control

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-cli remoteaccess control 192.168.1.2
view

Dit commando opent een venster met de externe weergavefunctie om een externe computer te bekijken. In deze modus wordt de scherminhoud in realtime weergegeven, maar is interactie met de computer pas mogelijk nadat op de bijbehorende knop op de werkbalk is geklikt. De computer of het IP-adres (en optioneel de TCP-poort) moet als argument worden doorgegeven:

veyon-cli remoteaccess view pc5:5900

Servicecontrole

Met de module service kan de lokale Veyon Service worden aangestuurd.

register

Dit commando registreert de Veyon Service als service in het besturingssysteem, zodat deze automatisch wordt gestart bij het opstarten van de computer.

unregister

Dit commando verwijdert de serviceregistratie in het besturingssysteem, zodat de Veyon Service niet meer automatisch wordt gestart bij het opstarten van het systeem.

start

Dit commando start de Veyon Service.

stop

Dit commando stopt de Veyon Service.

restart

Dit commando herstart de Veyon Service.

status

Met dit commando wordt de status van de Veyon Service opgevraagd en weergegeven.

Schaal

Eenvoudige shell functionaliteiten worden geleverd door de shell module. Als deze module zonder verdere argumenten wordt aangeroepen, wordt een interactieve modus gestart. In deze modus kunnen alle CLI commando’s direct worden ingevoerd zonder dat voor elk commando het veyon-cli programma moet worden opgegeven en aangeroepen. De modus kan worden verlaten door het sleutelwoord exit in te voeren.

Verder kan de module worden gebruikt voor automatische verwerking van opdrachten in een tekstbestand om eenvoudige batchverwerking te implementeren:

run <FILE>

Dit commando voert de commando’s in het tekstbestand regel voor regel uit. Bewerkingen worden onafhankelijk van het resultaat van eerdere bewerkingen uitgevoerd, d.w.z. een fout leidt niet tot het beëindigen van de bewerking.