Windows Server 2012サーバーを管理しています。コマンドラインを使用してこれらのサーバーを管理するPowerShellを学習しています。私のワークステーションはUbuntuを実行しており、通常はSSH経由で接続してLinuxサーバーを管理しています。
LinuxサーバーのWindows PowerShellをLinuxワークステーションからコマンドラインを介してLinuxのSSHアクセスのように使用する方法はありますか?
いくつかのオプション:
http://technet.Microsoft.com/en-us/library/hh831611.aspx
Linux用のPOSH実行可能ファイルは知らないので、Linuxのシェルから直接POSHコマンドを実行することはできません。まず、RDP、リモートコンソール(DRAC、iLO)、SSHなどの何らかの方法でWindowsマシンにアクセスする必要があります。またはPOSH Web Access。
/編集-いくつかのオプションがあるようです。 http://sharpcodenotes.blogspot.com/2014/01/running-powershell-commands-from-linux.html
OpenWSManでやりたいことを実行してみることもできますが、正しいPowershellコマンドを発行するだけでなく、URLリクエストのようなすべてのコマンドを作成する必要があると思います。 WinRB Ruby gemをすべてのWindowsマシンにインストールしてから、LinuxボックスでRubyコードを実行してPowershellコマンドを呼び出すことができます。
どちらの場合も、タブ補完、ヘルプなどのインタラクティブなPowershellエクスペリエンスは得られないようです。これらはスクリプトまたは単一のコマンドを実行するためのものであり、おそらくエラーやその他のフィードバックをキャプチャする必要があります自分で。 Linuxで一流のソリューションを手に入れることはできません。
/再度編集-はい、 MSDNによると これは醜く/不格好になる傾向があります。彼が提供するシンプルで効果的なソリューションでさえ、面白くないように見えます。
Powershellリモート処理はWS-Managementの上に構築されていますが、これは実際にはプロトコル内のプロトコルであり、PSRP(Powershell Remoting Protocol)と直接相互運用するには、クライアントでPowershellを複製する必要があります。
マイクロソフトはLinuxおよびOSXでPowershellを正式にリリースしています。 2016年8月の発表をご覧ください: PowerShellはオープンソースであり、Linuxで利用可能です
現在アルファ版です。 UbuntuとCentosは正式にサポートされており、さらにサポートが進んでいます。冒険したい場合は、ここにインストール手順があります: https://github.com/PowerShell/PowerShell/blob/master/docs/installation/linux.md
はい、2つのオプションがあります。
SSHdサーバーは、WindowsとPowerShellへの構成設定パスにインストールできます。
これには、 SSHdのインストール および 構成 PowerShellパスのチュートリアルを使用できます。
要するに:
PowerShell Webアクセス(Win Server 2012 R2のみ)
Technetに1つのチュートリアルがあります blogs.technet.com/b/canitpro/archive/2013/11/14/step-by-step-deploy-powershell-web-access.aspx
Ubuntu 14.04 LTSでテスト済み
Winexeをダウンロードしてインストールします。
wget https://passing-the-hash.googlecode.com/files/winexePTH1.1.0-1.deb
dpkg -i winexePTH1.1.0-1.deb
基本的な使い方
winexe -U DOMAIN/USERNAME%PASSWORD //MACHINEIP "cmd.exe"
例として:
echo -ne '\n' | winexe -U DOMAIN/USERNAME%PASSWORD //IP 'powershell.exe -command "Get-Process | Select-Object Name, ProcessName"' | sort -u
https://github.com/PowerShell/Win32-OpenSSH から、またはChocolatey https://chocolatey.org から手動でwin32-openSSHをインストールすることもできます。 Boxstarterを介して(内部でChocolateyを使用) https://boxstarter.org (fast install https://boxstarter.org/packages/nr/win32-openssh ) 。
少し設定が必要ですが、PowerShellを実行しているMicrosoftの担当者が保守するネイティブ(実際には!)のwin32ポートです。
それ以外の場合は、誰かが言及したように、WinRM gemをLinuxにインストールして、WinRMプロトコルを介して少し接続することができますが、それは、PSSessionを開始するだけの場合ほどではありません。
さらに、WinRM gem(WinRb)の背後にいる人々は、WinRMを介してPowerShellをトンネリングする、よりネイティブなPowerShell相互作用の実装も検討しています。これにより、アップロードがより機能的になり、他の操作もより高速になります。このブログ投稿を参照してください http://www.hurryupandwait.io/blog/a-look-under-the-hood-at-powershell-remoting-through-a-Ruby-cross-plaform-len =