microvmsshproxy.services.api.v1alpha1
Table of Contents
services/microvmsshproxy/v1alpha1/microvmsshproxy.proto
SSHProxyRequest
SSHProxyRequest is one message in the client->server stream. The first message on a stream must carry uid; all following messages carry data bytes to forward toward the guest’s sshd.
| Field | Type | Label | Description |
|---|---|---|---|
| uid | string | uid is the microvm identifier, as used by MicroVM.GetMicroVM/DeleteMicroVM. | |
| data | bytes |
SSHProxyResponse
SSHProxyResponse carries raw bytes received from the guest’s sshd.
| Field | Type | Label | Description |
|---|---|---|---|
| data | bytes |
MicroVMSSHProxy
MicroVMSSHProxy tunnels a raw byte stream to a microvm’s guest-agent ssh port, which itself proxies straight to the guest’s local sshd - the agent performs no authentication of its own; sshd owns auth, PTY and SFTP. It requires the target microvm to have been created with AllowGuestAgent set, to be in the created state, and for the server to have been started with ssh proxying enabled.
| Method Name | Request Type | Response Type | Description |
|---|---|---|---|
| SSHProxy | SSHProxyRequest stream | SSHProxyResponse stream |
Scalar Value Types
| .proto Type | Notes | C++ | Java | Python | Go | C# | PHP | Ruby |
|---|---|---|---|---|---|---|---|---|
| double | double | double | float | float64 | double | float | Float | |
| float | float | float | float | float32 | float | float | Float | |
| int32 | Uses variable-length encoding. Inefficient for encoding negative numbers – if your field is likely to have negative values, use sint32 instead. | int32 | int | int | int32 | int | integer | Bignum or Fixnum (as required) |
| int64 | Uses variable-length encoding. Inefficient for encoding negative numbers – if your field is likely to have negative values, use sint64 instead. | int64 | long | int/long | int64 | long | integer/string | Bignum |
| uint32 | Uses variable-length encoding. | uint32 | int | int/long | uint32 | uint | integer | Bignum or Fixnum (as required) |
| uint64 | Uses variable-length encoding. | uint64 | long | int/long | uint64 | ulong | integer/string | Bignum or Fixnum (as required) |
| sint32 | Uses variable-length encoding. Signed int value. These more efficiently encode negative numbers than regular int32s. | int32 | int | int | int32 | int | integer | Bignum or Fixnum (as required) |
| sint64 | Uses variable-length encoding. Signed int value. These more efficiently encode negative numbers than regular int64s. | int64 | long | int/long | int64 | long | integer/string | Bignum |
| fixed32 | Always four bytes. More efficient than uint32 if values are often greater than 2^28. | uint32 | int | int | uint32 | uint | integer | Bignum or Fixnum (as required) |
| fixed64 | Always eight bytes. More efficient than uint64 if values are often greater than 2^56. | uint64 | long | int/long | uint64 | ulong | integer/string | Bignum |
| sfixed32 | Always four bytes. | int32 | int | int | int32 | int | integer | Bignum or Fixnum (as required) |
| sfixed64 | Always eight bytes. | int64 | long | int/long | int64 | long | integer/string | Bignum |
| bool | bool | boolean | boolean | bool | bool | boolean | TrueClass/FalseClass | |
| string | A string must always contain UTF-8 encoded or 7-bit ASCII text. | string | String | str/unicode | string | string | string | String (UTF-8) |
| bytes | May contain any arbitrary sequence of bytes. | string | ByteString | str | []byte | ByteString | string | String (ASCII-8BIT) |