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
ofset
commando’s. Als daarnaastdefaults
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 doortypes
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
ofcomputer
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.