Windows Server 2025 : Fonctionnalités essentielles que tout administrateur système doit connaître

Windows Server 2025 : Fonctionnalités essentielles que tout administrateur système doit connaître

Windows Server 2025 : Fonctionnalités essentielles que tout administrateur système doit connaître

Windows Server 2025 représente la mise à jour la plus importante du système d'exploitation serveur de Microsoft depuis des années. Lancée fin 2024 et désormais largement adoptée par les entreprises en 2026, elle apporte des améliorations significatives en matière de virtualisation, de stockage, de sécurité et d'Active Directory. Si vous gérez une infrastructure Windows Server (sur site, hybride ou cloud), il est essentiel de comprendre ces changements pour garantir la sécurité, l'efficacité et la maintenabilité de votre environnement. Ce guide présente les fonctionnalités les plus importantes pour un administrateur système au quotidien, et propose des commandes PowerShell pour les mettre en œuvre.

Aperçu des nouveautés

Centre d'administration Windows — Interface de gestion de Windows Server 2025
Centre d'administration Windows — l'outil de gestion officiel basé sur un navigateur pour Windows Server 2025, offrant une administration unifiée du serveur

Avant d'aborder chaque point en détail, voici un résumé des principaux changements par rapport à Windows Server 2022 :

  • Hyper-V : Nouvelles générations de machines virtuelles, partitionnement GPU amélioré, migration à chaud optimisée
  • SMB : SMB sur QUIC se généralise, améliorations de la compression SMB
  • Sécurité : Protection des identifiants activée par défaut, LAPS amélioré, posture de sécurité par défaut
  • Active Directory : mises à jour du schéma, réplication améliorée, améliorations de Kerberos
  • Réseaux : améliorations RDMA, mises à jour des réseaux définis par logiciel
  • Stockage : Mises à jour de Storage Spaces Direct, améliorations de ReFS
  • Licences : Modèle CAL mis à jour, intégration Azure Arc

Améliorations d'Hyper-V dans Windows Server 2025

Hyper-V dans Windows Server 2025 bénéficie de plusieurs améliorations de niveau entreprise qui ont un impact direct sur les déploiements de virtualisation à grande échelle.

Améliorations du partitionnement GPU (GPU-P)

GPU-P prend désormais en charge davantage de fournisseurs de GPU et offre un partitionnement plus précis. C'est une véritable révolution pour les déploiements VDI et les charges de travail d'IA exécutées dans des machines virtuelles.

# Check GPU-P capabilities on the host
Get-VMHostPartitionableGpu

# List available GPU partitions
Get-VMHostPartitionableGpu | Select-Object Name, ValidPartitionCounts

# Assign GPU partition to a VM
$vm = Get-VM -Name "AI-Workload-01"
Add-VMGpuPartitionAdapter -VMName $vm.Name
Set-VMGpuPartitionAdapter -VMName $vm.Name -MinPartitionVRAM 80000000 -MaxPartitionVRAM 200000000

# Verify GPU is visible inside the VM
# (Run inside the VM)
Get-PnpDevice -Class Display | Select-Object Status, FriendlyName

Performances de migration en direct

# Check current live migration settings
Get-VMHost | Select-Object MaximumVirtualMachineMigrations, MaximumStorageMigrations, VirtualMachineMigrationEnabled

# Enable live migration with compression (new in 2025: better compression algorithm)
Set-VMHost -VirtualMachineMigrationEnabled $true
Set-VMHost -VirtualMachineMigrationPerformanceOption Compression

# For SMB-based live migration (highest performance with RDMA)
Set-VMHost -VirtualMachineMigrationPerformanceOption SMB

# Perform a live migration
Move-VM -Name "WebServer-01" -DestinationHost "hv-node02.domain.local" -IncludeStorage -DestinationStoragePath "D:VMs"

# Monitor migration progress
Get-VMReplicationStatistics -VMName "WebServer-01"

Machine virtuelle de troisième génération (Aperçu)

# Create a Gen 2 VM (current recommended default)
New-VM -Name "Server2025-Guest" `
  -Generation 2 `
  -MemoryStartupBytes 4GB `
  -SwitchName "vSwitch-External" `
  -NewVHDPath "D:VMsServer2025-Guest.vhdx" `
  -NewVHDSizeBytes 100GB

# Configure secure boot (Gen 2 specific)
Set-VMFirmware -VMName "Server2025-Guest" -EnableSecureBoot On -SecureBootTemplate MicrosoftWindows

# Enable nested virtualization (useful for labs and DevOps)
Set-VMProcessor -VMName "Server2025-Guest" -ExposeVirtualizationExtensions $true

Améliorations SMB : SMB sur QUIC et compression

Baie de serveurs Windows pour centre de données
Infrastructure serveur de niveau entreprise exécutant Windows Server 2025

SMB sur QUIC est l'une des fonctionnalités phares de Windows Server 2025. Elle permet au trafic SMB de transiter par le port UDP 443 grâce au protocole QUIC, autorisant ainsi un partage de fichiers sécurisé sans VPN et offrant de meilleures performances sur les connexions à latence élevée.

Configuration de SMB via QUIC

# Check SMB over QUIC availability (requires Datacenter edition or Azure Edition)
Get-SmbServerConfiguration | Select-Object EnableSMBQUIC

# Enable SMB over QUIC (requires a valid TLS certificate)
Set-SmbServerConfiguration -EnableSMBQUIC $true

# Configure the certificate for SMB over QUIC
$cert = Get-ChildItem -Path Cert:LocalMachineMy | Where-Object {$_.Subject -match "fileserver.domain.com"}
New-SmbServerCertificateMapping -Name "FileServer QUIC" -Thumbprint $cert.Thumbprint -StoreName My -Subject "fileserver.domain.com"

# Check active SMB connections (including QUIC)
Get-SmbSession | Select-Object ClientComputerName, ClientUserName, Dialect, TransportName

# SMB Compression settings
Set-SmbServerConfiguration -EnableSMBCompression $true -CompressionAlgorithms XPRESS4K,XPRESS8K,XPRESS16K,LZ4

Renforcement de la sécurité des PME

# Disable SMBv1 (critical security baseline — should already be done!)
Set-SmbServerConfiguration -EnableSMB1Protocol $false -Force

# Require SMB signing (prevents relay attacks)
Set-SmbServerConfiguration -RequireSecuritySignature $true -Force

# Enable SMB encryption for all shares (new default behavior in 2025)
Set-SmbServerConfiguration -EncryptData $true -Force

# Apply encryption per-share selectively
Set-SmbShare -Name "Sensitive-Data" -EncryptData $true

# Audit SMB access
Set-SmbServerConfiguration -AuditSmb1Access $true

# Block guest access (important for workgroup environments)
Set-SmbServerConfiguration -EnableInsecureGuestLogons $false -Force

Améliorations de la sécurité : Credential Guard et LAPS

Windows Server 2025 intègre un niveau de sécurité considérablement renforcé. Plusieurs fonctionnalités qui nécessitaient auparavant une configuration manuelle sont désormais activées par défaut.

Protection des identifiants (désormais par défaut)

# Check Credential Guard status
Get-ComputerInfo | Select-Object -Property DeviceGuard*

# Verify via registry
Get-ItemProperty -Path "HKLM:SYSTEMCurrentControlSetControlDeviceGuard" | Select-Object EnableVirtualizationBasedSecurity, RequirePlatformSecurityFeatures

# Check if running (should show Enabled in WS2025)
msinfo32  # Look for "Virtualization-based security Running" in System Information

# PowerShell check
(Get-CimInstance -ClassName Win32_DeviceGuard -Namespace rootMicrosoftWindowsDeviceGuard).SecurityServicesRunning
# Value 1 = Credential Guard running

Windows LAPS (Solution de mot de passe d'administrateur local)

Le nouveau Windows LAPS (qui remplace l'ancien Microsoft LAPS) est intégré à Windows Server 2025 et s'intègre à la fois à Active Directory et à Azure AD.

# Update AD schema for Windows LAPS (run as Domain Admin)
Update-LapsADSchema

# Configure LAPS via Group Policy (or PowerShell)
# Enable LAPS for a specific OU
Set-LapsADComputerSelfPermission -Identity "OU=Workstations,DC=domain,DC=local"

# Check LAPS password for a computer
Get-LapsADPassword -Identity "PC-FINANCE-01" -AsPlainText

# Rotate password immediately
Invoke-LapsPolicyProcessing

# Set password complexity settings
Set-LapsADPasswordExpirationTime -Identity "PC-FINANCE-01" -NewExpirationTime ([DateTime]::Now.AddDays(1))

# Get LAPS audit log
Get-EventLog -LogName "Microsoft-Windows-LAPS/Operational" -Newest 20

Serveur à noyau sécurisé

# Check Secured-core Server status
Get-SecuredCoreStatus

# Verify Secure Boot
Confirm-SecureBootUEFI

# Check TPM status
Get-Tpm | Select-Object TpmPresent, TpmReady, TpmActivated, TpmEnabled, ManagedAuthLevel

# Enable HVCI (Hypervisor-Protected Code Integrity)
Set-ItemProperty -Path "HKLM:SYSTEMCurrentControlSetControlDeviceGuardScenariosHypervisorEnforcedCodeIntegrity" -Name "Enabled" -Value 1

Améliorations d'Active Directory

Windows Server 2025 introduit des mises à jour fonctionnelles d'Active Directory qui améliorent la sécurité, les performances et les capacités de gestion.

Élever le niveau fonctionnel

# Check current domain and forest functional levels
Get-ADDomain | Select-Object DomainMode
Get-ADForest | Select-Object ForestMode

# Raise domain functional level to Windows Server 2025
Set-ADDomainMode -Identity "domain.local" -DomainMode Windows2025Domain

# Raise forest functional level
Set-ADForestMode -Identity "domain.local" -ForestMode Windows2025Forest

# Check replication status before and after
Get-ADReplicationFailure -Scope Forest | Sort-Object FailureCount -Descending
repadmin /replsummary

Améliorations de Kerberos

# Enable AES-256 encryption for Kerberos (disable RC4)
# Via GPO: Computer Configuration > Windows Settings > Security Settings > Local Policies > Security Options
# "Network security: Configure encryption types allowed for Kerberos" = AES128_HMAC_SHA1, AES256_HMAC_SHA1, Future encryption types

# PowerShell: Check service account Kerberos encryption
Get-ADUser -Identity "svc-webapp" -Properties msDS-SupportedEncryptionTypes | Select-Object "msDS-SupportedEncryptionTypes"

# Set AES encryption on service accounts
Set-ADUser -Identity "svc-webapp" -KerberosEncryptionType AES128,AES256

# Check for RC4 usage (security audit)
Get-WinEvent -FilterHashtable @{LogName='Security'; Id=4769} | 
  Where-Object {$_.Properties[5].Value -eq "0x17"} | # 0x17 = RC4
  Select-Object TimeCreated, @{n='Account';e={$_.Properties[0].Value}}, @{n='Service';e={$_.Properties[2].Value}}

Réplication et surveillance de l'état de santé d'AD

# Complete AD health check script
$DomainControllers = Get-ADDomainController -Filter *

foreach ($dc in $DomainControllers) {
    Write-Host "`n=== $($dc.HostName) ===" -ForegroundColor Cyan
    
    # Test connectivity
    $ping = Test-Connection -ComputerName $dc.HostName -Count 1 -Quiet
    Write-Host "Ping: $(if($ping){'OK'}else{'FAILED'})"
    
    # Check replication
    $repStatus = Get-ADReplicationPartnerMetadata -Target $dc.HostName -ErrorAction SilentlyContinue
    if ($repStatus) {
        $lastSuccess = ($repStatus | Sort-Object LastReplicationSuccess -Descending | Select-Object -First 1).LastReplicationSuccess
        Write-Host "Last Replication: $lastSuccess"
    }
    
    # Check SYSVOL replication
    $sysvol = Test-Path "$($dc.HostName)SYSVOL"
    Write-Host "SYSVOL accessible: $sysvol"
}

# DCDiag-style check
Test-ADDomainController -Identity "DC01.domain.local"

Réseaux : Mises à jour RDMA et SDN

# Check RDMA capability on network adapters
Get-NetAdapterRdma | Select-Object Name, Enabled, Operational

# Enable RDMA on a specific adapter
Enable-NetAdapterRdma -Name "Ethernet 10G"

# Verify RDMA performance
Get-NetAdapterStatistics -Name "Ethernet 10G" | Select-Object ReceivedBytes, SentBytes

# Configure RSS (Receive Side Scaling) for performance
Set-NetAdapterRss -Name "Ethernet 10G" -Enabled $true -NumberOfReceiveQueues 8

# Network QoS policies (important for SMB Direct/RDMA coexistence)
New-NetQosPolicy -Name "SMB" -SMB -PriorityValue8021Action 3
New-NetQosPolicy -Name "DEFAULT" -Default -PriorityValue8021Action 0
Enable-NetQosFlowControl -Priority 3
Enable-NetAdapterQos -Name "Ethernet 10G"

Stockage : Storage Spaces Direct et ReFS

# Check Storage Spaces Direct status
Get-ClusterStorageSpacesDirect

# Get pool and virtual disk health
Get-StoragePool -IsPrimordial $false | Select-Object FriendlyName, HealthStatus, OperationalStatus
Get-VirtualDisk | Select-Object FriendlyName, HealthStatus, OperationalStatus, ResiliencySettingName

# ReFS integrity streams (checksums for data integrity)
Set-FileIntegrity -FileName "D:CriticalData" -Enable $true
Get-FileIntegrity -FileName "D:CriticalData"

# Storage health monitoring
Get-StorageDiagnosticInfo -StorageSubSystemFriendlyName "Windows Storage*" -DestinationPath "C:StorageDiag"

# Monitor pool performance
Get-StoragePool | Get-PhysicalDisk | Get-StorageReliabilityCounter | 
  Select-Object DeviceId, ReadErrorsTotal, WriteErrorsTotal, Temperature

Intégration Azure Arc

Windows Server 2025 offre une intégration beaucoup plus étroite avec Azure Arc, permettant des scénarios de gestion hybrides qui étaient auparavant complexes à mettre en place.

# Install Azure Arc agent
$serviceURL = "https://aka.ms/AzureConnectedMachineAgent"
Invoke-WebRequest -Uri $serviceURL -OutFile "$env:TEMPAzureConnectedMachineAgent.msi"
Start-Process msiexec.exe -ArgumentList "/i $env:TEMPAzureConnectedMachineAgent.msi /l*v installationlog.txt /qn" -Wait

# Connect to Azure Arc
azcmagent connect `
  --resource-group "rg-hybrid-servers" `
  --tenant-id "your-tenant-id" `
  --location "westeurope" `
  --subscription-id "your-subscription-id" `
  --cloud AzureCloud

# Check Arc agent status
azcmagent show

# Install monitoring extension via Arc
az connectedmachine extension create `
  --name AzureMonitorWindowsAgent `
  --publisher Microsoft.Azure.Monitor `
  --type AzureMonitorWindowsAgent `
  --machine-name "WS2025-Prod-01" `
  --resource-group "rg-hybrid-servers" `
  --location "westeurope"

Liste de contrôle essentielle pour le renforcement de la base

Chaque déploiement de Windows Server 2025 devrait commencer par ce script de renforcement de la sécurité PowerShell :

# Windows Server 2025 - Baseline Hardening Script

# 1. Disable unnecessary services
$ServicesToDisable = @('Fax', 'XblAuthManager', 'XblGameSave', 'XboxGipSvc', 'WSearch')
foreach ($svc in $ServicesToDisable) {
    if (Get-Service -Name $svc -ErrorAction SilentlyContinue) {
        Set-Service -Name $svc -StartupType Disabled
        Stop-Service -Name $svc -Force -ErrorAction SilentlyContinue
    }
}

# 2. Configure Windows Firewall
Set-NetFirewallProfile -Profile Domain,Public,Private -Enabled True
Set-NetFirewallProfile -Profile Public -DefaultInboundAction Block -DefaultOutboundAction Allow

# 3. Enable audit policies
auditpol /set /subcategory:"Logon" /success:enable /failure:enable
auditpol /set /subcategory:"Account Logon" /success:enable /failure:enable
auditpol /set /subcategory:"Privilege Use" /success:enable /failure:enable
auditpol /set /subcategory:"Object Access" /failure:enable

# 4. Configure TLS (disable old versions)
$RegPath = "HKLM:SYSTEMCurrentControlSetControlSecurityProvidersSCHANNELProtocols"
foreach ($proto in @("SSL 2.0", "SSL 3.0", "TLS 1.0", "TLS 1.1")) {
    New-Item -Path "$RegPath$protoServer" -Force | Out-Null
    Set-ItemProperty -Path "$RegPath$protoServer" -Name "Enabled" -Value 0
    Set-ItemProperty -Path "$RegPath$protoServer" -Name "DisabledByDefault" -Value 1
}
foreach ($proto in @("TLS 1.2", "TLS 1.3")) {
    New-Item -Path "$RegPath$protoServer" -Force | Out-Null
    Set-ItemProperty -Path "$RegPath$protoServer" -Name "Enabled" -Value 1
}

# 5. Enable Windows Defender
Set-MpPreference -DisableRealtimeMonitoring $false
Set-MpPreference -CloudBlockLevel High
Set-MpPreference -EnableNetworkProtection Enabled

Write-Host "Baseline hardening complete" -ForegroundColor Green
Gestion du parc informatique avec Windows Server
Gestion d'un parc de machines Windows avec les outils d'administration de Windows Server 2025

Conclusion

Windows Server 2025 est une version véritablement impressionnante qui répond à de réels besoins des administrateurs système. La fonctionnalité SMB sur QUIC justifie à elle seule son évaluation pour les organisations disposant de succursales. Les paramètres de sécurité par défaut (Credential Guard activé par défaut, nouveau LAPS et fonctionnalités Secured-core) représentent une avancée significative par rapport à Windows Server 2022.

Pour les équipes utilisant actuellement Windows Server 2019 ou 2022, il est temps d'établir un plan de migration. Windows Server 2025 bénéficie d'un support standard jusqu'en 2029 et d'un support étendu jusqu'en 2034, ce qui en fait un investissement judicieux sur le long terme. Commencez par le déployer sur des serveurs non critiques (serveurs de fichiers, contrôleurs de domaine secondaires), familiarisez-vous avec les nouvelles cmdlets PowerShell, puis étendez votre déploiement progressivement. Les nouvelles fonctionnalités justifient pleinement l'effort.