PowerShell を使用したリモート管理の実行
演習 1:ローカル コンピューターでのリモート処理の有効化
タスク 1: 着信接続に対してリモート処理を有効にする
-
パスワード Pa55w.rd を使用して、Adatum\Administrator として LON-CL1 仮想マシンにサインインしていることを確かめます。
-
[スタート] メニューを選択してから、「powersh」と入力します。
-
結果リストで、[Windows PowerShell] を右クリックするか、そのコンテキスト メニューをアクティブにして、[管理者として実行] を選択します。
-
正しい実行ポリシーが設定されていることを確かめるには、Windows PowerShell コマンド ウィンドウで次のコマンドを入力してから、Enter キーを押します。
Set-ExecutionPolicy RemoteSigned
-
[はい] を選択するか、「Y」と入力して変更を確定します。
-
LON-CL1 コンピューターで、次のコマンドを実行します。
Enable-PSremoting -SkipNetworkProfileCheck
プロンプトが表示されたら、[Y] を選択してすべてのプロンプトに対して [はい] と答えます。これにより、リモート処理が有効になります。
-
セッション構成を一覧表示できるコマンドを見つけるには、次のコマンドを入力してから、Enter キーを押します。
help *sessionconfiguration*
注: Get-PSSessionConfiguration コマンドに注目してください。
-
セッション構成を一覧表示するには、次のコマンドを入力してから、Enter キーを押します。
Get-PSSessionConfiguration
-
2 つから 4 つのセッション構成が作成されたことを確認します。 Windows PowerShell ウィンドウは開いたままにしておきます。
演習 2:一対一のリモート処理の実行
タスク 1: リモート コンピューターに接続し、オペレーティング システム機能をインストールする
- 引き続き、Pa55w.rd パスワードを使用して、Adatum\Administrator として LON-CL1 仮想マシンにサインインしていることを確かめます。
-
LON-CL1 で、LON-DC1 への 1 対 1 の接続を確立するには、Windows PowerShell で次のコマンドを入力してから、Enter キーを押します。
Enter-PSSession –ComputerName LON-DC1
-
接続後、LON-DC1 にネットワーク負荷分散 (NLB) 機能をインストールするには、次のコマンドを入力してから、Enter キーを押します。
Install-WindowsFeature NLB
- コマンドが完了するまで待機します。
-
切断するには、次のコマンドを入力してから、Enter キーを押します。
Exit-PSSession
タスク 2: マルチホップ リモート処理をテストする
-
LON-DC1 への 1 対 1 のリモート処理接続を確立するには、次のコマンドを入力してから、Enter キーを押します。
Enter-PSSession –ComputerName LON-DC1
-
LON-DC1 から LON-CL1 への接続を確立するには、次のコマンドを入力してから、Enter キーを押します。
Enter-PSSession –ComputerName LON-CL1
注: 2 番目のホップを示すエラーが表示されるはずです。 既定では、既に確立されている接続を介して接続を確立することはできません。
-
接続を閉じるには、次のコマンドを入力してから、Enter キーを押します。
Exit-PSSession
タスク 3: リモート処理の制限事項を確認する
- パスワード Pa55w.rd を使用して、Adatum\Administrator として LON-CL1 仮想マシンにサインインしていることを確かめます。
-
LON-CL1 への 1 対 1 の接続を確立するには、次のコマンドを入力してから、Enter キーを押します。
Enter-PSSession –ComputerName localhost
-
以下のコマンドを入力し、Enter キーを押します。
Notepad
注: メモ帳が開くのを待機している間は、シェルの応答が停止しているように見えることに注目してください。これは、メモ帳がグラフィカル アプリケーションであり、シェルではグラフィカル ユーザー インターフェイス (GUI) を表示できないためです。
- Ctrl + C キーを押してプロセスをキャンセルし、シェル プロンプトに戻ります。
-
切断するには、次のコマンドを入力してから、Enter キーを押します。
Exit-PSSession
演習 3:一対多のリモート処理の実行
タスク 1: 2 台のコンピューターから物理ネットワーク アダプターのリストを取得する
- 引き続き、Pa55w.rd パスワードを使用して、Adatum\Administrator として LON-CL1 仮想マシンにサインインしていることを確かめます。
-
LON-CL1 で、ネットワーク アダプターを一覧表示できるコマンドを見つけるには、Windows PowerShell ウィンドウで次のコマンドを入力してから、Enter キーを押します。
help *adapter*
注: Get-NetAdapter コマンドに注意してください。
-
コマンドのヘルプを確認するには、次のコマンドを入力してから、Enter キーを押します。
help Get-NetAdapter
注: –Physical パラメーターに注意してください。
-
リモート処理を使用して LON-DC1 と LON-CL1 でコマンドを実行するには、次のコマンドを入力してから、Enter キーを押します。
Invoke-Command –ComputerName LON-CL1,LON-DC1 –ScriptBlock { Get-NetAdapter –Physical }
タスク 2: ローカル コマンドの出力をリモート コマンドのものと比較する
-
Process オブジェクトのメンバーを確認するには、次のコマンドを入力してから、Enter キーを押します。
Get-Process | Get-Member
-
リモート Process オブジェクトのメンバーを確認するには、次のコマンドを入力してから、Enter キーを押します。
Invoke-Command –ComputerName LON-DC1 –ScriptBlock { Get-Process } | Get-Member
注: 2 番目の結果セットには、2 つの MemberType メソッド GetType と ToString のみが含まれます。 これは、ローカル出力と比較した場合、リモート値の TypeName が逆シリアル化されるためです。
演習 4:暗黙的なリモート処理の使用
タスク 1: サーバーへの永続的なリモート処理接続を作成する
- LON-CL1 で、パスワード Pa55w.rd を使用して Adatum\Administrator としてサインインしていることを確かめます。
- Windows PowerShell ウィンドウが閉じている場合は、[スタート] メニューを選択してから、「powersh」と入力します。
- 結果リストで、[Windows PowerShell] を右クリックするか、そのコンテキスト メニューをアクティブにしてから、[管理者として実行] を選択します。
-
Windows PowerShell コマンド ウィンドウで、LON-DC1 への永続的な接続を作成し、それを変数に格納します。 以下のコマンドを入力し、Enter キーを押します。
$dc = New-PSSession –ComputerName LON-DC1
-
変数の PSSession リストを確認するには、次のコマンドを入力してから、Enter キーを押します。
$dc
注: 接続が使用可能であることを確認します。
タスク 2: サーバーからモジュールをインポートして使用する
-
LON-DC1 のモジュールのリストを表示するには、次のコマンドを入力してから、Enter キーを押します。
Get-Module –ListAvailable –PSSession $dc
-
サーバー メッセージ ブロック (SMB) 共有で使用できる LON-DC1 のモジュールを見つけるには、次のコマンドを入力してから、Enter キーを押します。
Get-Module –ListAvailable –PSSession $dc | Where { $_.Name –Like '*share*' }
-
LON-DC1 からお使いのローカル コンピューターにモジュールをインポートし、重要なコマンドの名詞にプレフィックス DC を追加するには、次のコマンドを入力してから、Enter キーを押します。
Import-Module –PSSession $dc –Name SMBShare –Prefix DC
-
LON-DC1 の共有のリストを表示するには、次のコマンドを入力してから、Enter キーを押します。
Get-DCSMBShare
注: このコマンドは LON-DC1 で暗黙的に実行されるため、コマンドではそのコンピューター上の共有が表示されます。
-
ローカル コンピューター上の共有のリストを表示するには、次のコマンドを入力してから、Enter キーを押します。
Get-SMBShare
注: インポートされたコマンドに DC プレフィックスを追加したので、ローカル コマンドは引き続き元の名前で使用できます。
タスク 3: 開いているすべてのリモート処理接続を閉じる
-
Windows PowerShell コマンド ウィンドウで、次のコマンドを入力してから、Enter キーを押します。
Get-PSSession | Remove-PSSession
-
リモート処理セッションが閉じられていることを確認するコマンドが、E:\Mod08\Labfiles\ImplicitRemoting.ps1.txt で提供されるサンプルの応答スクリプトで明示的に呼び出されていないことに注意してください。 リモート処理接続が閉じられていることを確認するには、次のコマンドを入力してから、Enter キーを押します。
Get-PSSession
注: 返されたセッションがないことを確認します。
エクササイズ 5:複数のコンピューターの管理
タスク 1: 2 台のコンピューターに対する PSSession を作成する
-
引き続き、パスワード Pa55w.rd を使用して、Adatum\Administrator として LON-CL1 にサインインしていることを確かめます。
-
まだ開いていない場合は、Windows PowerShell を開きます。
-
LON-CL1 と LON-DC1 に対して PSSession を作成し、それらを変数に保存するには、次のコマンドを入力してから、Enter キーを押します。
$computers = New-PSSession –ComputerName LON-CL1,LON-DC1
-
接続を確認するには、次のコマンドを入力してから、Enter キーを押します。
$computers
注: 2 つの接続が使用可能と表示されていることを確認します。
タスク 2: 2 台のコンピューターの Windows ファイアウォール規則を表示するレポートを作成する
-
ネットワーク セキュリティを使用できるモジュールを見つけるには、次のコマンドを入力してから、Enter キーを押します。
Get-Module *security* –ListAvailable
- リストの Net-Security モジュールに注意してください。
-
LON-CL1 と LON-DC1 でモジュールをメモリに読み込むには、次のコマンドを入力してから、Enter キーを押します。
Invoke-Command –Session $computers –ScriptBlock { Import-Module NetSecurity }
-
Windows ファイアウォール規則を表示できるコマンドを見つけるには、次のコマンドを入力してから、Enter キーを押します。
Get-Command –Module NetSecurity
注: Get-NetFirewallRule コマンドを確認してください。
-
コマンドのヘルプを確認する場合は、次のコマンドを入力してから、Enter キーを押します。
Help Get-NetFirewallRule -ShowWindow
注: ヘルプが正しく表示されない場合は、Windows PowerShell ISE ではなく、管理者として Windows PowerShell コマンド ウィンドウで、手順 1 から 3 のコマンドを実行します。
-
[Get-NetFirewallRule ヘルプ] ウィンドウを閉じます。
-
LON-DC1 と LON-CL1 で有効になっているファイアウォール規則のリストを表示するには、次のコマンドを入力してから、Enter キーを押します。
Invoke-Command –Session $computers –ScriptBlock { Get-NetFirewallRule –Enabled True } | Select Name,PSComputerName
-
LON-DC1 と LON-CL1 でモジュールをアンロードするには、次のコマンドを入力してから、Enter キーを押します。
Invoke-Command –Session $computers –ScriptBlock { Remove-Module NetSecurity }
タスク 3: 2 台のコンピューターからのローカル ディスク情報を表示する HTML レポートを作成して表示する
-
ドライブの種類が 3 のもののみを含めるようにフィルター処理されたローカル ハード ドライブのリストを表示するには、次のコマンドを入力してから、Enter キーを押します。
Get-WmiObject –Class Win32_LogicalDisk –Filter "DriveType=3"
-
リモート処理を使用して LON-DC1 と LON-CL1 で同じコマンドを実行するには、次のコマンドを入力してから、Enter キーを押します。
Invoke-Command –Session $computers –ScriptBlock { Get-WmiObject –Class Win32_LogicalDisk –Filter "DriveType=3" }
注: レポートには、各コンピューターの名前、各ドライブの文字、および各ドライブの空き領域と合計サイズ (バイト単位) を含める必要があります。
-
前のコマンドの結果を含む HTML レポートを生成するには、次のコマンドを入力してから、Enter キーを押します。
Invoke-Command –Session $computers –ScriptBlock { Get-WmiObject –Class Win32_LogicalDisk –Filter "DriveType=3" } | ConvertTo-Html –Property PSComputerName,DeviceID,FreeSpace,Size
タスク 4: 開いているすべての PSSession を閉じる
-
開いているすべての PSSession を閉じるには、次のコマンドを入力してから、Enter キーを押します。
Get-PSSession | Remove-PSSession