Command Line Interface#

Hub CLI#

Open source community version Hubs, as well as Hubs deployed via AWS Marketplace allow direct SSH access to the hub itself. The Hub exposes a CLI tool, evon, which allows functions including updating the system, getting account info, etc.

The below shows the help output from the evon cli tool:

Usage: evon [OPTIONS]

  __| |  |    \ \  |
  _|  \  | () |  \ | Hub CLI
 ___|  _/  ___/_| _| v1.0.376
[ Elastic Virtual Overlay Network ]

Options:
  -p, --sync-pubip                Sync public DNS record for this Hub with
                                  current public ipv4 address
  --iam-validate                  Validate IAM Role attached to this EC2
  -i, --get-inventory             Show inventory of all zone records
                                  (registered public A records) for Servers
                                  that are currently connected to the Hub.
  --set-inventory JSON            Upsert/delete zone records specified as JSON
                                  in the following format: '{"changes":{"new":
                                  {"fqdn":"ipv4",...},"removed":{"fqdn":"ipv4"
                                  ,...},"updated":{"fqdn":"ipv4",...},"unchang
                                  ed":{"fqdn":"ipv4",...}}}'
  -a, --get-account-info          Get registered account info.
  -r, --register JSON             Register new account. Specify JSON in the
                                  following format: '{"domain-
                                  prefix":"mycompany","subnet-key":"111"}'.
                                  Your hub will be reachable at <domain-
                                  prefix>.evon.link. Your overlay network
                                  subnet will be 100.<subnet-key>.224.0/19
                                  where <subnet-key> is between 64 and 127
                                  inclusive. Default is 111 if omitted.
  -x, --deregister DOMAIN_PREFIX  Deregister account. You will be forced to
                                  interactively agree to the deregistration
                                  operation if invoked. Once an account is
                                  deregistered, all connected servers and user
                                  clients will need a new bootstrap.sh or
                                  OpenVPN config to be uninstalled or
                                  reinstalled if subsequent re-registration is
                                  performed.
  -k, --get-deploy-key            Get bootstrap deploy key.
  -c, --check-update              Check if an Evon Hub update is available
  -u, --update                    Apply the latest Evon Hub update if
                                  available. Note that the Evon Hub WebUI and
                                  API may become unavailable for a few minutes
                                  during the update process, however Servers
                                  and Users connected to the Hub will not be
                                  affected and will be able to communicate as
                                  normal throughout the update process.
  --save-state                    Deploy and persist state.
  --sync-servers                  Sync all Servers to reflect current
                                  connected state
  --reset-admin-pw                Reset the Admin password
  --netstats                      Calculate and register netstats
  --get-usage-limits              Retrieve usage limits for this Hub instance
  --kill-server UUID              Disconnect server by UUID
  -q, --quiet                     Suppress all logs on stderr (logs will still
                                  be written to syslog at /var/log/evon.log).
  -d, --debug                     Enable debug logging.
  -v, --version                   Show version and exit.
  -h, --help                      Show this message and exit.