web-dev-qa-db-ja.com

LinuxクライアントからWindowsリモートに接続するPowershell

LinuxワークステーションからWindowsマシンにリモート接続しようとしています。

Arch LinuxワークステーションにPowerShellをインストールしましたが、現在ホストに接続しようとしています。

ホスト上:

Enable-PSRemoting

次に、Set-Item wsman:\localhost\client\trustedhosts *を持つすべてのホストを許可しました

すべてをチェックする:

PS C:\windows\system32> ls WSMan:\localhost\Shell


   WSManConfig: Microsoft.WSMan.Management\WSMan::localhost\Shell

Type            Name                           SourceOfValue   Value
----            ----                           -------------   -----
System.String   AllowRemoteShellAccess                         true
System.String   IdleTimeout                                    7200000
System.String   MaxConcurrentUsers                             2147483647
System.String   MaxShellRunTime                                2147483647
System.String   MaxProcessesPerShell                           2147483647
System.String   MaxMemoryPerShellMB                            2147483647
System.String   MaxShellsPerUser                               2147483647

Linuxワークステーションから接続しようとすると:

PS /home/user/tmp> Enter-PSSession -ComputerName "myuser" -Credential DOMAIN\myuser

Windows PowerShell credential request
Enter your credentials.
Password for user DOMAIN\myuser: *****************

Enter-PSSession : MI_RESULT_ACCESS_DENIED
At line:1 char:1
+ Enter-PSSession -ComputerName "myuser" -Credential DOMAIN\ajpalhare ...
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : InvalidArgument: (myuser:String) [Enter-PSSession
   ], PSInvalidOperationException
    + FullyQualifiedErrorId : CreateRemoteRunspaceFailed

Winrmwindowsイベントログには何もありません。

どんな提案も歓迎します、

7

Linux/OSXのWinRMは現在サポートされていませんが、サポートが進行中です。

https://github.com/PowerShell/PowerShell/issues/942

5
Phil

PowerShell Core(サーバーとクライアント)とOpenSSHを使用して行うことができます。

Enter-PSSession -HostName myserver -UserName myuser

記事を読む:

1
Der_Meister

HTTP/HTTPSを介したリモート処理も有効にしましたか?

最も基本的には、これには次のコマンドが含まれます。

winrm set winrm/config/client/auth @{Basic="true"}
winrm set winrm/config/service/auth @{Basic="true"}
winrm set winrm/config/service @{AllowUnencrypted="true"}

おそらくHTTPSと自己署名証明書を使用する方が良いでしょう。これは素晴らしいガイドです: http://www.joseph-streeter.com/?p=1086

または、ansibleが提供するスクリプトを使用してください: https://raw.githubusercontent.com/ansible/ansible/devel/examples/scripts/ConfigureRemotingForAnsible.ps1

楽しんで

1
guy_from_irc