Powershell: Erro de New-PSSession "falha na solicitação de subsistema no canal 0" ao usar autenticação de chave SSH

Criado em 19 jan. 2018  ·  3Comentários  ·  Fonte: PowerShell/PowerShell

Etapas de reprodução

New-PSSession -SSHTransport -UserName SpockAdmin -KeyFilePath /Users/tsulli/Spocks_Private_Key.pem -HostName x.x.x.x

Sintoma

New-PSSession: [xxxx] O processo em segundo plano relatou um erro com a seguinte mensagem: A sessão do cliente SSH foi encerrada com a mensagem de erro: a solicitação do subsistema falhou no canal 0.

NOTA : Consigo fazer o SSH com êxito no sistema usando o cliente de linha de comando ssh do Mac.

Fixar

Certifique-se de que seu sshd_config contenha a configuração Subsystem conforme documentado no seguinte artigo:
https://docs.microsoft.com/en-us/powershell/scripting/core-powershell/ssh-remoting-in-powershell-core

Depois de modificar o sshd_config , você também precisa reiniciar o daemon SSH em sua instância do Windows: Restart-Service -Name sshd .

Fechando imediatamente, pois encontrei a solução. Isso está sendo postado apenas para fins de documentação da comunidade, para que outras pessoas possam se beneficiar do meu aprendizado.

Issue-Question Resolution-Answered

Todos 3 comentários

sshd_config está localizado em% ProgramData% ssh E NÃO onde o OpenSSH está instalado.

O problema continua existindo depois que eu adiciono o subsistema, execute 'sshd -T' mostra que minha configuração já foi carregada:

PS> sshd -T | select-string 'subsystem'

subsystem sftp sftp-server.exe
subsystem powershell c:\pwsh\pwsh.exe -sshs -NoLogo -NoProfile

O ssh cmd ainda não conseguiu descobrir o nome 'powershell':

PS> ssh [email protected] -s powershell
Authorized users only. All activity may be monitored and reported.
Password:
subsystem request failed on channel 0

sistema operacional:

PS>((Get-ItemProperty "HKLM:\SOFTWARE\Microsoft\Windows nt\CurrentVersion\" -Name ProductName).ProductName)
Windows 7 Professional

Minha versão do openssh é

PS>((Get-Item (Get-Command sshd).Source).VersionInfo.FileVersion)
7.7.2.0

Versão PowerShell

PS> $PSVersionTable

Name                           Value
----                           -----
PSVersion                      6.1.0
PSEdition                      Core
GitCommitId                    6.1.0
OS                             Microsoft Windows 6.1.7601 S
Platform                       Win32NT
PSCompatibleVersions           {1.0, 2.0, 3.0, 4.0...}
PSRemotingProtocolVersion      2.3
SerializationVersion           1.1.0.1
WSManStackVersion              3.0

Subsistema powershell pwsh.exe -sshs -NoLogo -NoProfile

Esta página foi útil?
0 / 5 - 0 avaliações