v.io: v.io/x/ref/examples/tunnel/vsh Files

Command vsh

Command vsh runs the Vanadium shell, a Tunnel client that can be used to run shell commands or start an interactive shell on a remote tunneld server.

To open an interactive shell, use:

vsh <object name>

To run a shell command, use:

vsh <object name> <command to run>

The -L flag will forward connections from a local port to a remote address through the tunneld service. The flag value is localAddress,remoteAddress. E.g.

-L :14141,www.google.com:80

The -R flag will forward connections from a remote port on the tunneld service to a local address. The flag value is remoteAddress,localAddress. E.g.

-R :14141,www.google.com:80

vsh can't be used directly with tools like rsync because vanadium object names don't look like traditional hostnames, which rsync doesn't understand. For compatibility with such tools, vsh has a special feature that allows passing the vanadium object name via the VSH_NAME environment variable.

$ VSH_NAME=<object name> rsync -avh -e vsh /foo/* v23:/foo/

In this example, the "v23" host will be substituted with $VSH_NAME by vsh and rsync will work as expected.


vsh [flags] <object name> [command]

<object name> is the Vanadium object name of the server to connect to.

[command] is the shell command and args to run, for non-interactive vsh.

The vsh flags are:

  Forward local to remote, format is "localAddress,remoteAddress". May be
  Do not execute a shell.  Only do port forwarding.
  Forward remote to local, format is "remoteAddress,localAddress". May be
  Disable pseudo-terminal allocation.
  Local network protocol for port forwarding.
  Remote network protocol for port forwarding.
  Force allocation of pseudo-terminal.

The global flags are:

  log to standard error as well as files
  when logging hits line file:N, emit a stack trace
  if non-empty, write log files to this directory
  log to standard error instead of files
  max size in bytes of the buffer to use for logging stack traces
-metadata=<just specify -metadata to activate>
  Displays metadata for the program and exits.
  logs at or above this threshold go to stderr
  Dump timing information to stderr before exiting the program.
  log level for V logs
  directory to use for storing security credentials
  18n catalogue files to load, comma separated
  local namespace root; can be repeated to provided multiple roots
  specify a perms file as <name>:<permsfile>
  explicitly specify the runtime perms as a JSON-encoded access.Permissions.
  Overrides all --v23.permissions.file flags
  object name of proxy service to use to export services across network
  max number of proxies to connect to when the policy is to connect to all
  proxies; 0 implies all proxies
  policy for choosing from a set of available proxy instances
  address to listen on
  protocol to listen with
  The number of vtrace traces to store in memory
  Spans and annotations that match this regular expression will trigger trace
  If true, dump all stored traces on runtime shutdown
  Rate (from 0.0 to 1.0) to sample vtrace traces
  The verbosity level of the log messages to be captured in traces
  comma-separated list of globpattern=N settings for filename-filtered logging
  (without the .go suffix).  E.g. foo/bar/baz.go is matched by patterns baz or
  *az or b* but not by bar/baz or baz.go or az or b.*
  comma-separated list of regexppattern=N settings for file pathname-filtered
  logging (without the .go suffix).  E.g. foo/bar/baz.go is matched by patterns
  foo/bar/baz or fo.*az or oo/ba or b.z but not by foo/bar/baz.go or fo*az

Package Files

doc.go main.go

Package main imports 20 packages (graph). Updated 2020-10-03. Refresh now. Tools for package owners.