SMB через QUIC в Windows Server 2025: настройка безопасного доступа к файлам без VPN
SMB через QUIC — новая функция Windows Server 2025, которая позволяет организовать безопасный доступ к файловому ресурсу Windows через Интернет без использования VPN (ранее она была доступна только в Azure Edition Windows Server 2022). Раньше для удаленного доступа к SMB-файловым серверам требовалась дополнительная инфраструктура, например VPN или решения RDS. Теперь с помощью SMB через QUIC можно безопасно подключаться к файловому серверу напрямую из небезопасных и публичных сетей.
Основные особенности протокола SMB через QUIC:
- Соединение между SMB-сервером и пользователем защищено шифрованием TLS 1.3 с использованием сертификатов. Аутентификация пользователя происходит внутри защищённого TLS-туннеля.
- Используется порт UDP/443 вместо традиционного TCP/445 для SMB.
- QUIC — современный транспортный протокол с улучшенной производительностью и повышенной устойчивостью к нестабильным сетям, а также поддержкой нового алгоритма сжатия.
- С помощью Client Access Control в QUIC можно ограничить доступ к файловому серверу только для клиентов с сертификатами.
- Внутри TLS-туннеля используется SMB версии 3.1.1.
SMB через QUIC часто называют SMB VPN, поскольку он позволяет удалённым пользователям безопасно подключаться к корпоративному файловому серверу через Интернет без необходимости дополнительного VPN.
Настройка общего доступа к папке по SMB через QUIC на Windows Server 2025
Рассмотрим, как расшарить папку на файловом сервере Windows Server 2025 через SMB over QUIC и обеспечить безопасный доступ к ней клиентам с аутентификацией по сертификатам. Для настройки доступны Windows Admin Center (WAC) и PowerShell.
Сначала настроим файловый сервер с поддержкой SMB через QUIC. Хотя предпочтительнее использовать домен Active Directory, SMB через QUIC можно настроить и в рабочей группе с локальными учетными записями.
Требуется SSL-сертификат с полным доменным именем (FQDN) сервера в поле Subject Alternative Name (SAN). Вы можете использовать сертификат внешнего центра сертификации (включая Let’s Encrypt), внутреннего CA или самоподписанный сертификат (он допустим, но не рекомендуется). В поле Enhanced Key Usage (EKU) сертификата должна быть назначена роль Server Authentication.
В данном примере используем самоподписанный сертификат. Создадим самоподписанный сертификат с FQDN файлового сервера:
$todaydate = Get-Date
$add3year = $todaydate.AddYears(3)
New-SelfSignedCertificate -dnsname mfs01.woshub.com -notafter $add3year -CertStoreLocation cert:\LocalMachine\My
Выберем сертификат по отпечатку:
$cert=Get-ChildItem -Path "Cert:\LocalMachine\My" | Where-Object Thumbprint -eq D4CB32344D21EB9E38168EA04540DBE509BBD650
Назначим сертификат QUIC SMB-серверу:
New-SmbServerCertificateMapping -Name mfs01.woshub.com -Thumbprint $cert.Thumbprint -StoreName My

Включим поддержку SMB через QUIC для файлового сервера:
Set-SmbServerConfiguration -EnableSMBQUIC $true
Проверим, что сервер слушает UDP-порт 443:
netstat -a | Select-String 443

Чтобы разрешить доступ к файловому ресурсу по SMB QUIC, необходимо активировать соответствующие правила в брандмауэре Windows Defender:
Get-NetFirewallRule -DisplayName "File and Printer Sharing (SMB-QUIC-In)"|select name,enabled,profile
По умолчанию доступ SMB QUIC разрешён для профиля Domain, но запрещён для Private и Public (включите нужные правила в зависимости от вашей сети).

Обратите внимание: при подключении к расшаренной папке SMB-клиент сначала пробует использовать стандартный TCP-порт 445. Если порт недоступен, переключается на QUIC. Поэтому рекомендуется настроить брандмауэр сервера так, чтобы ограничить внешний доступ к SMB на порту 445.
Подключение к SMB-папке через QUIC на клиенте
Далее настроим подключение к SMB-ресурсу через QUIC на клиентском устройстве. Поддержка клиентов имеется в Windows 11, Windows Server 2025 и Linux с Samba 4.23 или выше. Windows 10 не поддерживает протокол QUIC.
Проверим, включена ли поддержка SMB через QUIC на клиенте Windows 11:
Get-SmbClientConfiguration | select EnableSMBQUIC

Клиенты должны доверять сертификату, установленному на файловом сервере. При использовании корпоративного CA можно распространить корневые и промежуточные сертификаты центра в доверенные хранилища клиентов (например, через GPO). В случае самоподписанного сертификата его нужно импортировать вручную в доверенное хранилище клиента.
Теперь можно смонтировать общую папку с сервера командой PowerShell New-SmbMapping:
New-SmbMapping -LocalPath W: -RemotePath \\mfs01.woshub.com\Docs -TransportType QUIC
Или через команду net use:
net use W: \\mfs01.woshub.com\Docs /TRANSPORT:QUIC

Для проверки, что при подключении использовался транспорт QUIC, просмотрите логи Event Viewer на клиенте с Event ID 30832 (Журналы приложений и служб → Microsoft → Windows → SMBClient → Connectivity):
The initial connection to the share was established. Share name: \xxxxx Server address: xxxxxxx:443 Session ID: 0x1900014000079 Tree ID: 0xD Transport type: Quic Signing used: true

Если в журнале вы видите Event ID 30803, это скорее всего означает, что клиент не доверяет сертификату сервера или он не установлен:
Failed to establish a network connection. Error: The QUIC connection encountered a bad certificate during TLS.

Настройка контроля доступа клиентов (Client Access Control) по сертификатам
Вы можете ограничить доступ к SMB-серверу через QUIC-транспорт только для клиентов с нужными сертификатами. Для этого включите обязательную аутентификацию SMB-клиентов сертификатами:
Set-SmbServerCertificateMapping -Name mfs01.woshub.com -RequireClientAuthentication $true
Создадим самоподписанный сертификат клиента, действующий 3 месяца:
$clientCert = New-SelfSignedCertificate -DnsName mfs01.woshub.com -CertStoreLocation "Cert:\LocalMachine\My" -NotAfter (Get-Date).AddMonths(3) -KeyAlgorithm "RSA" -KeyLength "2048"
Привяжем этот сертификат к клиенту для подключения к корпоративному файловому серверу:
New-SmbClientCertificateMapping -Namespace mfs01.woshub.com -Thumbprint $clientCert.Thumbprint -Store My
Получим SHA-256 хеш сертификата клиента:
$clientCert.GetCertHashString("SHA256")

Разрешим подключение клиентов с этим сертификатом по SHA-256 хешу на файлохранилище с QUIC:
Grant-SmbClientAccessToServer -Name mfs01.woshub.com -IdentifierType SHA256 -Identifier "B05E517D9FCA15BE3A38D95AA97A87003F55D524FE67DB7D7E81BB99B5C1D50B"

Чтобы просмотреть все правила Client Access Control на файловом сервере:
Get-SmbClientAccessToServer -Name mfs01.woshub.com
Альтернативно можно разрешить подключение для всех клиентов с сертификатами определённого издателя (в формате X.500). При этом корневые и промежуточные сертификаты этого центра должны быть доверенными для SMB-сервера:
Grant-SmbClientAccessToServer -Name mfs01.woshub.com -IdentifierType ISSUER -Identifier "<subject name>"
Включим аудит событий аутентификации по сертификатам (Журналы приложений и служб\Microsoft\Windows\SMBServer\Audit):
Set-SmbServerConfiguration -AuditClientCertificateAccess $true
Таким образом, подключаться к вашему SMB файловому серверу смогут только клиенты с одобренными сертификатами.
Особенности безопасности и совместимость
SMB через QUIC обеспечивает полное шифрование всего SMB-трафика, включая аутентификацию. Если контроллер домена недоступен для аутентификации клиента, вместо Kerberos используется NTLMv2. Благодаря шифрованию это защищает NTLM-креденшелы от перехвата и атак, что гарантирует сохранение безопасности аутентификации даже при использовании NTLM внутри защищённого канала QUIC.
Чтобы клиенты могли аутентифицироваться по Kerberos, настройте на файловом сервере прокси KDC, который будет пересылать Kerberos-запросы от внешних клиентов к контроллеру домена через HTTPS (подробнее в статье SMB over QUIC: Configure the KDC Proxy).
Недостаток протокола SMB через QUIC — отсутствие поддержки устаревших SMB-клиентов, включая Windows 10 и более ранние версии, а также Samba до версии 4.23.