SSブログ

Windowsでリモートコマンドツールを使ってみよう(PsTools/PsExec) [Windows]

Windows環境においてリモートからコマンドを実行するツールがあります。
Active Directoryのドメイン環境に参加している端末であれば、Domain Adminsのアカウントで実行が可能です。

ツールはPsToolsの中にあるPsExecというコマンドです。
PsToolsはここからダウンロードできます。

ダウンロードしたPsTools.zipを解凍し、ADサーバーにコピーしておきます。
サーバーのコマンドプロンプトからPsExecを実行します。
PsExecの使用方法は以下の通りです。
使用法: psexec [\\<コンピューター>[,<コンピューター2>[,...] | @<ファイル>][-u <ユーザー> [-p <パスワード>]][-n s][-l][-s|-e][-x][-i [<セッション>]][-c [-f|-v]][-w <ディレクトリ>][-d][-<優先度>][-a n,n,... ] cmd [<引数>]
詳細はここを参照してください。

初回実行時のみ、以下の画面が表示されますので、Agreeしてください。
pse01.PNG

簡単なコマンド例を書きます。
localドメインのtermxpsp3という端末のネットワーク設定情報を表示する。
※ドメイン環境であれば、ユーザー、パスワードが省略可能です。たぶん。ワークグループ環境では、ユーザー、パスワードが必要です。さらに、WindowsXPではフォルダオプションの「簡易ファイルの共有を使用する」のチェックを外しておきます。
PsExec.exe \\termxpsp3 -u local\administrator -p ******** ipconfig /all
PsExec v1.98 - Execute processes remotely
Copyright (C) 2001-2010 Mark Russinovich
Sysinternals - www.sysinternals.com

Windows IP Configuration
Ethernet adapter ローカル エリア接続:
Connection-specific DNS Suffix . :
IP Address. . . . . . . . . . . . : 192.168.11.21
Subnet Mask . . . . . . . . . . . : 255.255.255.0
Default Gateway . . . . . . . . . : 192.168.11.1
(省略)
ipconfig exited on termxpsp3 with error code 0.

dirなどの内部コマンドは、cmd.exeを使って実行します。
PsExec.exe \\termxpsp3 -u local\administrator -p ******** cmd.exe /c dir c:\
PsExec v1.98 - Execute processes remotely
Copyright (C) 2001-2010 Mark Russinovich
Sysinternals - www.sysinternals.com

ドライブ C のボリューム ラベルがありません。
ボリューム シリアル番号は F8CD-EB02 です
c:\ のディレクトリ
2011/10/09 00:13 0 AUTOEXEC.BAT
2011/10/09 00:13 0 CONFIG.SYS
(省略)
cmd exited on termxpsp3 with error code 0

シャットダウンコマンドはそれ自体が遠隔での機能を持っていますが、PsExecでも再起動が可能です。
PsExec.exe \\termxpsp3 -u local\administrator -p ******** shutdown.exe -r -t 0
PsExec v1.98 - Execute processes remotely
Copyright (C) 2001-2010 Mark Russinovich
Sysinternals - www.sysinternals.com
shutdown.exe exited on termxpsp3 with error code 0.

他にも使えそうな使い方
tasklistで実行しているプロセスを収集する。実行ユーザーも表示されるため、ログオフ or ログオン状態が判別できます。
PsExec.exe \\termxpsp3 -u local\administrator -p ******** tasklist.exe /v

OS情報、パッチ情報の収集
PsExec.exe \\termxpsp3 -u local\administrator -p ******** systeminfo.exe

ネットワーク接続状態の収集。例えば、findstrで445ポートで抽出も可能。
PsExec.exe \\termxpsp3 -u local\administrator -p ******** netstat -an | findstr 445

コマンド次第で何でもできます。(ちょっと危険ですね)

次回もお楽しみに!!

nice!(1)  コメント(0)  トラックバック(0) 
共通テーマ:パソコン・インターネット

nice! 1

コメント 0

コメントを書く

お名前:
URL:
コメント:
画像認証:
下の画像に表示されている文字を入力してください。

※ブログオーナーが承認したコメントのみ表示されます。

Facebook コメント

トラックバック 0

この広告は前回の更新から一定期間経過したブログに表示されています。更新すると自動で解除されます。