Skip to content

Enhancement request: Add ssh to images #374

Closed
@felixfbecker

Description

@felixfbecker

Summary

For Ubuntu-based images, this just needs an apt-get install openssh-client.

Steps to reproduce

New-PSSession -HostName ... -UserName ... -KeyFilePath ...

Expected behavior

Should allow PS remoting over SSH

Actual behavior

Error:

Enter-PSSession: An error has occurred which PowerShell cannot handle. A remote session might have ended.

Digging into the InnerException reveals that it is because of missing ssh:

System.Management.Automation.CommandNotFoundException: The term 'ssh' is not recognized as the name of a cmdlet,
                              function, script file, or operable program.
                              Check the spelling of the name, or if a path was included, verify that the path is correct and try again.
                                 at System.Management.Automation.CommandDiscovery.LookupCommandInfo(String commandName, CommandTypes commandTypes,
                              SearchResolutionOptions searchResolutionOptions, CommandOrigin commandOrigin, ExecutionContext context)
                                 at System.Management.Automation.CommandDiscovery.LookupCommandInfo(String commandName, CommandOrigin commandOrigin,
                              ExecutionContext context)
                                 at System.Management.Automation.CommandDiscovery.LookupCommandInfo(String commandName, CommandOrigin commandOrigin)
                                 at System.Management.Automation.Runspaces.SSHConnectionInfo.StartSSHProcess(StreamWriter& stdInWriterVar,
                              StreamReader& stdOutReaderVar, StreamReader& stdErrReaderVar)
                                 at System.Management.Automation.Remoting.Client.SSHClientSessionTransportManager.CreateAsync()
                                 at System.Management.Automation.Remoting.ClientRemoteSessionDSHandlerImpl.SendNegotiationAsync(RemoteSessionState
                              sessionState)
                                 at System.Management.Automation.Remoting.ClientRemoteSessionDSHandlerImpl.HandleStateChanged(Object sender,
                              RemoteSessionStateEventArgs arg)
                                 at System.Management.Automation.ExtensionMethods.SafeInvoke[T](EventHandler`1 eventHandler, Object sender, T
                              eventArgs)
                                 at System.Management.Automation.Remoting.ClientRemoteSessionDSHandlerStateMachine.RaiseStateMachineEvents()
                                 at System.Management.Automation.Remoting.ClientRemoteSessionDSHandlerStateMachine.ProcessEvents()

For Ubuntu-based images, this just needs an apt-get install openssh-client.

Environment data

Name                           Value
----                           -----
PSVersion                      7.0.0-rc.2
PSEdition                      Core
GitCommitId                    7.0.0-rc.2
OS                             Linux 4.19.76-linuxkit #1 SMP Thu Oct 17 19:31:58 UTC 2019
Platform                       Unix
PSCompatibleVersions           {1.0, 2.0, 3.0, 4.0…}
PSRemotingProtocolVersion      2.3
SerializationVersion           1.1.0.1
WSManStackVersion              3.0

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions