クライアントが 署名付き通信 を確立した場合、私のWindows 2012 Serverから検索する方法はありますか?
ネットセッション は基本的な詳細を提供しますが、署名については何も述べません。
C:\>net session \\a.b.c.d
User name Administrator
Computer a.b.c.d
Guest logon No
Client type
Sess time 00:08:02
Idle time 00:07:50
Share name Type # Opens
--------------------------------------
test Disk 0
The command completed successfully.
そのような情報を提供する Powershellコマンドレット または管理ツールやコマンドはありますか?前もって感謝します。
編集1:私はまた、以下を試しました。 Get-SmbConnection は、クライアントが接続を確立しているサーバーを見つけるためにクライアントで実行する必要があります。
PS C:\Users\Administrator> Get-SmbConnection | Select-Object -Property *
ContinuouslyAvailable : False
Credential : domain\administrator
Dialect : 3.00
Encrypted : False
NumOpens : 3
ServerName : server1
ShareName : test
UserName : SERVER1\Administrator
PSComputerName :
CimClass : ROOT/Microsoft/Windows/SMB:MSFT_SmbConnection
CimInstanceProperties : {ContinuouslyAvailable, Credential, Dialect, Encrypted...}
CimSystemProperties : Microsoft.Management.Infrastructure.CimSystemProperties
これを書いている時点で、これを本当に確実に知る唯一の方法は、Wiresharkまたはネットワークモニターを通じてネゴシエートされているネットワーク接続を監視することです。
現時点では、API、WMIクラスなどを通じてこのデータを公開するものはありません。
Get-SMBConnection
Powershellコマンドレットwill将来この情報を入手できますが、今日は入手できません。
コマンドレットは、MSFT_SmbConnection
WMIクラスの単なるラッパーです。
Get-WmiObject -Namespace 'Root\Microsoft\Windows\SMB' MSFT_SmbConnection
まったく同じ情報を返します。そのWMIクラスの MSDNドキュメント を読むと、ドキュメントには、今日見られるSigned
プロパティに加えてEncrypted
プロパティがリストされていることがわかります。
class MSFT_SmbConnection
{
string ServerName;
string ShareName;
string UserName;
uint32 SmbInstance;
string Credential;
uint64 NumOpens;
string Dialect;
boolean ContinuouslyAvailable;
boolean Encrypted;
boolean EnableLoadBalanceScaleOut;
boolean Signed; // ^_^ *trollface*
};
その後、ドキュメントは次のように述べています:
署名済み
データ型:ブール
アクセスタイプ:読み取り専用
未定。 (決断される)
Windows Server 2012 R2、Windows 8.1、Windows Server 2012、Windows 8:このプロパティは、Windows Server Technical PreviewおよびWindows 10 Technical Previewより前ではサポートされていません。
Windows 10プレビューは、最初に表示されたときです。だからあなたはそれを持っています。
Googleの利益のために、自分のSMB署名が実際に機能していたかどうかを見つけるのにも苦労していました。昨日Get-SmbConnectionが 'Signed'プロパティを返さなかったことを誓いますが、今日は実行(私のWindows 10 1903 x64マシンPSVersion 5.1.18362.145):
PS C:\WINDOWS\system32> Get-SmbConnection | fl *
SmbInstance : Default
ContinuouslyAvailable : False
Credential : DOMAIN\user
Dialect : 3.0.2
Encrypted : False
NumOpens : 1
Redirected : False
ServerName : server.domain
ShareName : share
Signed : False
UserName : DOMAIN\user
PSComputerName :
CimClass : ROOT/Microsoft/Windows/SMB:MSFT_SmbConnection
CimInstanceProperties : {ContinuouslyAvailable, Credential, Dialect, Encrypted...}
CimSystemProperties : Microsoft.Management.Infrastructure.CimSystemProperties
'Signed'は返されるプロパティで、TrueまたはFalseを示します。
ただし、私のサーバー2012 R2では、PSVersion 5.1.14409.1018は現在サポートされていません。 Windows 10 1809 PSVersion 5.1.17763.592の同僚にもそれがあります。