[英]Powershell, Server 2012 R2 and determine if cipher suite is active
我有一個小項目,我必須在 Server 2012 R2 上查詢大約 1800 台服務器,並想看看它們是否有 TLS 1.2 以及我需要在服務器上啟用並啟用的特定密碼套件。
TLS_DHE_RSA_WITH_AES_256_GCM_SHA384
TLS_DHE_RSA_WITH_AES_128_GCM_SHA256
在 Server 2016 中使用 Get-TlsCipherSuite 按預期工作,但在 Server 2012 R2 中不可用。
對於 Server 2012 R2,我試圖使用這個調用:
Get-ItemPropertyValue -Path HKLM:\SYSTEM\CurrentControlSet\Control\Cryptography\Configuration\Local\SSL\00010002 -Name Functions
但它顯示它已安裝,但不是 state。我需要確認它是否實際啟用,而不僅僅是安裝。 上面的調用沒有這樣做,我找不到“標志”在哪里顯示該項目已啟用。
任何幫助,將不勝感激。
在我的用例中,我發現以下可靠地指示目標密碼套件是否存在並在 OS 2012r2 上啟用
$osVer=(Get-Item "HKLM:SOFTWARE\Microsoft\Windows NT\CurrentVersion")
if (($osVer).GetValue('ProductName') -like "*2012*") {
Write-Host "detected OS: 2012"
$2012suites = ((Get-ItemProperty "HKLM:\SOFTWARE\Policies\Microsoft\Cryptography\Configuration\SSL\00010002").Functions).split(",")
"TLS_DHE_RSA_WITH_AES_256_GCM_SHA384","TLS_DHE_RSA_WITH_AES_128_GCM_SHA256" | ForEach-Object {
if ($_ -in $2012suites) {
Write-Host "Present: $_" -ForegroundColor Green
} else {
Write-Host "Missing: $_" -ForegroundColor Red
}
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.