sshutil

package
v1.0.4 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jan 22, 2025 License: Apache-2.0 Imports: 25 Imported by: 0

Documentation

Index

Constants

View Source
const (
	// FormatCmd prints the full ssh command line.
	//
	//	ssh -o IdentityFile="/Users/example/.lima/_config/user" -o User=example -o Hostname=127.0.0.1 -o Port=60022 lima-default
	FormatCmd = FormatT("cmd")

	// FormatArgs is similar to FormatCmd but omits "ssh" and the destination address.
	//
	//	-o IdentityFile="/Users/example/.lima/_config/user" -o User=example -o Hostname=127.0.0.1 -o Port=60022
	FormatArgs = FormatT("args")

	// FormatOptions prints the ssh option key value pairs.
	//
	//	IdentityFile="/Users/example/.lima/_config/user"
	//	User=example
	//	Hostname=127.0.0.1
	//	Port=60022
	FormatOptions = FormatT("options")

	// FormatConfig uses the ~/.ssh/config format
	//
	//	Host lima-default
	//	  IdentityFile "/Users/example/.lima/_config/user "
	//	  User example
	//	  Hostname 127.0.0.1
	//	  Port 60022
	FormatConfig = FormatT("config")
)
View Source
const EnvShellSSH = "SSH"

Environment variable that allows configuring the command (alias) to execute in place of the 'ssh' executable.

Variables

Formats is the list of the supported formats.

Functions

func CommonOpts added in v0.7.2

func CommonOpts(sshPath string, useDotSSH bool) ([]string, error)

CommonOpts returns ssh option key-value pairs like {"IdentityFile=/path/to/id_foo"}. The result may contain different values with the same key.

The result always contains the IdentityFile option. The result never contains the Port option.

func DetectOpenSSHVersion added in v0.7.4

func DetectOpenSSHVersion(ssh string) semver.Version

func Format added in v0.15.0

func Format(w io.Writer, sshPath, instName string, format FormatT, opts []string) error

Format formats the ssh options.

func ParseOpenSSHVersion added in v0.7.2

func ParseOpenSSHVersion(version []byte) *semver.Version

func SSHArgsFromOpts added in v0.7.2

func SSHArgsFromOpts(opts []string) []string

SSHArgsFromOpts returns ssh args from opts. The result always contains {"-F", "/dev/null} in addition to {"-o", "KEY=VALUE", ...}.

func SSHArguments added in v1.0.4

func SSHArguments() (arg0 string, arg0Args []string, err error)

func SSHOpts added in v0.7.2

func SSHOpts(sshPath, instDir, username string, useDotSSH, forwardAgent, forwardX11, forwardX11Trusted bool) ([]string, error)

SSHOpts adds the following options to CommonOptions: User, ControlMaster, ControlPath, ControlPersist.

Types

type FormatT added in v0.15.0

type FormatT = string

FormatT specifies the format type.

type PubKey

type PubKey struct {
	Filename string
	Content  string
}

func DefaultPubKeys

func DefaultPubKeys(loadDotSSH bool) ([]PubKey, error)

DefaultPubKeys returns the public key from $LIMA_HOME/_config/user.pub. The key will be created if it does not yet exist.

When loadDotSSH is true, ~/.ssh/*.pub will be appended to make the VM accessible without specifying an identity explicitly.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL