簡體   English   中英

Powershell,Server 2012 R2 並確定密碼套件是否處於活動狀態

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM