c8y(1)
β¨ NAME β¨
c8y-remoteaccess-connect-ssh β connect to a device via ssh π»β¨ this whole thing lives in the c8y(1) manual, and itβs literally about getting you into a device over ssh without the drama.
πΈ SYNOPSIS πΈ
c8y remoteaccess connect ssh [flags]
π¦ DESCRIPTION π¦
okay so connect to a device via ssh β thatβs the whole vibe. but there are some details you actually need, bestie.
you can pass extra arguments to the ssh shell using the -- convention: everything after the -- will be passed untouched to the ssh shell. in this mode, the shell will not be interactive, and it will return upon completion of the command. no cap, itβs one-and-done.
want to set the default ssh user to use for all ssh connections for your current c8y session file? run exactly this:
c8y settings update remoteaccess.sshuser root
periodt. thatβs how you make it stick π
β¨ OPTIONS β¨
--configuration=""β Remote Access Configuration--device=[]β Device-h,--help[=false]β help for ssh--listen="127.0.0.1:0"β Listener address.unix:///run/example.sock-L,--port-forward=""β SSH Port-Forwarding option in the format[bind_address:]port:host:hostport. it also accepts a custom short form,[:]. the value is passed to thessh -Loption, so read thesshman page for more info--preferred-auth=""β Set the preferred authentication for the ssh connection. this will add'-o PreferredAuthentications='to the ssh command--user=""β Default ssh user
𧬠OPTIONS INHERITED FROM PARENT COMMANDS π§¬
these are inherited from parent commands β not ssh-only, but they come along for the ride, bestie:
--abortOnErrors=10β Abort batch when reaching specified number of errors--allowEmptyPipe[=false]β Donβt fail when piped input is empty (stdin)--cache[=false]β Enable cached responses--cacheBodyPaths=[]β Cache should limit hashing of selected paths in the json body. empty indicates all values--cacheTTL="60s"β Cache time-to-live (TTL) as a duration, i.e.60s,2m-c,--compact[=false]β Compact instead of pretty-printed output when using json output. pretty print is the default if output is the terminal--confirm[=false]β Prompt for confirmation--confirmText=""β Custom confirmation text--currentPage=0β Current page which should be returned--customQueryParam=[]β add custom URL query parameters. i.e.--customQueryParam 'withCustomOption=true,myOtherOption=myvalue'--debug[=false]β Set very verbose log messages--delay="0ms"β delay after each request, i.e.5ms,1.2s--delayBefore="0ms"β delay before each request, i.e.5ms,1.2s--dry[=false]β Dry run. donβt send any data to the server--dryFormat="markdown"β Dry run output format. i.e.json,dump,markdownorcurl--examples[=false]β Show examples for the current command--filter=[]β Apply a client side filter to response before returning it to the user--flatten[=false]β flatten json output by replacing nested json properties with properties where their names are represented by dot notation-f,--force[=false]β Do not prompt for confirmation. ignored when using--confirm-H,--header=[]β custom headers. i.e.--header "Accept: value, AnotherHeader: myvalue"--includeAll[=false]β Include all results by iterating through each page-k,--insecure[=false]β Allow insecure server connections when using SSL-l,--logMessage=""β Add custom message to the activity log--maxJobs=0β Maximum number of jobs.0= unlimited (use with caution! β οΈ)--noAccept[=false]β IgnoreAcceptheader: removes theAcceptheader from requests, howeverPUTandPOSTrequests will only see the effect--noCache[=false]β Force disabling of cached responses (overwrites cache setting)-M,--noColor[=false]β Donβt use colors when displaying log entries on the console--noLog[=false]β Disables the activity log for the current command--noProgress[=false]β Disable progress bars--noProxy[=false]β Ignore the proxy settings-n,--nullInput[=false]β Donβt read the input (stdin). useful if using in shell for/while loops-o,--output="table"β Output format i.e.table,json,csv,csvheader--outputFile=""β Save JSON output to file (after select/view)--outputFileRaw=""β Save raw response to file (before select/view)--outputTemplate=""β jsonnet template to apply to the output-p,--pageSize=5β Maximum results per page--progress[=false]β Show progress bar. this will also disable any other verbose output--proxy=""β Proxy setting, i.e.http://10.0.0.1:8080-r,--raw[=false]β Show raw response. this mode will forceoutput=jsonandview=off--retries=3β Max number of attempts when a failed http call is encountered--select=[]β Comma separated list of properties to return. wildcards and globstar accepted, i.e.--select 'id,name,type,**.serialNumber'--session=""β Session configuration--sessionMode=""β Override default session mode for a single command which would normally be disabled-P,--sessionPassword=""β Override session password-U,--sessionUsername=""β Override session username. i.e.peterort1234/peter(with tenant)--silentExit[=false]β Silent status codes do not affect the exit code--silentStatusCodes=""β Status codes which will not print out an error message--timeout="600s"β Request timeout duration, i.e.60s,2m--totalPages=0β Total number of pages to get-v,--verbose[=false]β Verbose logging--view="auto"β Use views when displaying data on the terminal. disable using--view off--withError[=false]β Errors will be printed on stdout instead of stderr--withTotalElements[=false]β Request Cumulocity to include the total elements in the response statistics under.statistics.totalElements(introduced in 10.13)-t,--withTotalPages[=false]β Request Cumulocity to include the total pages in the response statistics under.statistics.totalPages--workers=1β Number of workers
π EXAMPLE π
$ c8y remoteaccess connect ssh --device 12345β start an interactive SSH session on the device. easy.$ c8y remoteaccess connect ssh --device 12345 --user adminβ start an interactive SSH session on the device with a given ssh user. iconic.$ c8y remoteaccess connect ssh --device 12345 --user admin --preferred-auth passwordβ start an interactive SSH session on the device with a given ssh user and force password authentication. slay.$ c8y remoteaccess connect ssh --device 12345 --user admin -L 1883:127.0.0.1:1883β start an interactive SSH session and configure port-forward by mapping the remoteβs127.0.0.1:1883to your machineβs port1883.$ c8y remoteaccess connect ssh --device 12345 --user admin -L 1883β start an interactive SSH session and configure port-forward:127.0.0.11883(remote) =>1883(local).$ c8y remoteaccess connect ssh --device 12345 --user admin -L 1884:1883β start an interactive SSH session and configure port-forward:127.0.0.11883(remote) =>1884(local).$ c8y remoteaccess connect ssh --device 12345 --user admin -- systemctl statusβ use a non-interactive session to execute a single command and print the result.$ c8y remoteaccess connect ssh --device 12345 --user admin -- "sh -c 'cat /etc/os-release'"β use a non-interactive session to execute a custom shell command (notice the surrounding double quotes on the command!).
π SEE ALSO π
c8y-remoteaccess-connect(1)β go look at the parent command if you want the bigger picture, bestie π«Ά
okay thatβs the whole c8y-remoteaccess-connect-ssh page, bestie π itβs from the c8y(1) manual, dated Jan 1980, and now youβre ready to ssh like a main character. byeee π«Άβ¨
π¦ where this page comes from
- nixpkgs unstable: go-c8y-cli 2.56.1
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms