Konfigurieren von Exchange Server 2019 TLS 12

In unserem vorherigen Artikel Austausch TLS für Server Wir haben Informationen ausgetauscht.

Sichern von Exchange Server 2019 mit TLS-Protokollen – Cengiz YILMAZ | Sys-Blog

In diesem Artikel haben wir So konfigurieren Sie TLS in Exchange Server 2019 und ich werde über das Skript sprechen, das ich für diesen Prozess erstellt habe.

Dieser Artikel enthält eine detaillierte Anleitung zum Verständnis und zur Verwendung des „Exchange Server TLS-Konfigurationsmenüs“, einem PowerShell-Skript. Das Skript soll den Prozess der Aktivierung von TLS 1.2 und der Deaktivierung anderer älterer TLS-Versionen auf dem Computer vereinfachen.

Da Exchange Server TLS 1.3 nicht unterstützt, gibt es über das entsprechende Skript keine Option „TLS 1.3 aktiviert“.

TLS-Konfigurationsskript für Exchange Server 2019

<#
=============================================================================================
Name = Cengiz YILMAZ
Microsoft Certified Trainer (MCT) - Microsoft MVP
Date = 18.08.2022
www.cengizyilmaz.com.tr
365gurusu.com
www.cozumpark.com/author/cengizyilmaz
============================================================================================
#>
Function Display-Menu {
    param (
        [string]$Title = 'TLS Configuration Menu'
    )
    Clear-Host
    Write-Host "=============== $Title ================" -ForegroundColor Cyan
    Write-Host '1: Enable TLS 1.2' -ForegroundColor Green
    Write-Host '2: Disable Other TLS Versions' -ForegroundColor Yellow
    Write-Host '3: Exit' -ForegroundColor Red
}

Function Enable-TLS12 {
    $RegPath = 'HKLM:SYSTEMCurrentControlSetControlSecurityProvidersSCHANNELProtocolsTLS 1.2Server'
    $Net45Path = 'HKLM:SOFTWAREMicrosoft.NETFrameworkv4.0.30319'
    $Net45Path_WOW64 = 'HKLM:SOFTWAREWOW6432NodeMicrosoft.NETFrameworkv4.0.30319'
    $Net35Path_WOW64 = 'HKLM:SOFTWAREWOW6432NodeMicrosoft.NETFrameworkv2.0.50727'
    $Net35Path = 'HKLM:SOFTWAREMicrosoft.NETFrameworkv2.0.50727'
    $StrongCrypto = 'SchUseStrongCrypto'
    $DefaultTlsVersion = 'SystemDefaultTlsVersions'

    # Enable strong crypto on .NET Framework 4.5
    Set-ItemProperty -Path $Net45Path -Name $StrongCrypto -Value '1'
    Set-ItemProperty -Path $Net45Path_WOW64 -Name $StrongCrypto -Value '1'

    # Enable strong crypto on .NET Framework 3.5
    Set-ItemProperty -Path $Net35Path_WOW64 -Name $StrongCrypto -Value '1'
    Set-ItemProperty -Path $Net35Path -Name $StrongCrypto -Value '1'
    
    # Set system default TLS versions for both 4.5 and 3.5
    Set-ItemProperty -Path $RegPath -Name $DefaultTlsVersion -Value '1'
    
    # Enable TLS 1.2
    New-ItemProperty -Path $RegPath -Name 'Enabled' -Value '1' -PropertyType 'DWord' -Force
    Write-Host "TLS 1.2 Enabled" -ForegroundColor Green
}

Function Disable-OtherTLSVersions {
    $TLS10Server = 'HKLM:SYSTEMCurrentControlSetControlSecurityProvidersSCHANNELProtocolsTLS 1.0Server'
    $TLS11Server = 'HKLM:SYSTEMCurrentControlSetControlSecurityProvidersSCHANNELProtocolsTLS 1.1Server'

    # Disable TLS 1.0
    New-ItemProperty -Path $TLS10Server -Name 'Enabled' -Value '0' -PropertyType 'DWord' -Force

    # Disable TLS 1.1
    New-ItemProperty -Path $TLS11Server -Name 'Enabled' -Value '0' -PropertyType 'DWord' -Force
    
    Write-Host "Other TLS versions have been disabled" -ForegroundColor Yellow
}

$exitLoop = $false

while ($exitLoop -eq $false) {
    Display-Menu
    $choice = Read-Host "Please make a selection"
    
    switch ($choice) {
        '1' {
            Enable-TLS12
        }
        '2' {
            Disable-OtherTLSVersions
        }
        '3' {
            Write-Host "Exiting..." -ForegroundColor Red
            $exitLoop = $true
            break
        }
    }
    
    if ($exitLoop -eq $false) {
        Write-Host 'Press any key to continue ...' -ForegroundColor Magenta
        $x = $host.UI.RawUI.ReadKey("NoEcho,IncludeKeyDown")
    }
}

Allgemeine Struktur

Die Hauptbestandteile des Skripts sind:

  1. Anzeige-Menüfunktion: Es druckt das Menü auf den Bildschirm und bietet dem Benutzer 3 Optionen.
  2. Enable-TLS12-Funktion: Aktiviert TLS 1.2.
  3. Disable-OtherTLSVersions-Funktion: Deaktiviert andere ältere TLS-Versionen.
  4. Hauptschleife: Es ermöglicht dem Benutzer, eine Option auszuwählen und das Skript auf diese Option zu reagieren.

Anzeige-Menüfunktion

Diese Funktion druckt das Menü aus, das dem Benutzer angezeigt wird. Das Menü bietet Optionen zum Aktivieren von TLS 1.2, zum Deaktivieren anderer TLS-Versionen oder zum Beenden des Programms.

Function Display-Menu {
    param (
        [string]$Title = 'TLS Configuration Menu'
    )
    Clear-Host
    Write-Host "=============== $Title ================" -ForegroundColor Cyan
    Write-Host '1: Enable TLS 1.2' -ForegroundColor Green
    Write-Host '2: Disable Other TLS Versions' -ForegroundColor Yellow
    Write-Host '3: Exit' -ForegroundColor Red
}

<a href=”https://github.com/cengizyilmaz1/ExchangeServerTLSConfiguration/tree/main”>cegizyilmaz1/ExchangeServerTLSConfiguration (github.com)


Ähnliche Artikel – Exchange Server 2019 TLS-Konfiguration

Kommentar