SMB может быть зашифрован в разных версиях и активирован, как описано на https://docs.microsoft.com/en-us/windows-server/storage/file-server/smb-security . На сервере шифрование может быть проверено с использованием PowerShell, как показано на https://www.rootusers.com/enable-smb-encryption-on-smb-shares/ .

Но как я могу проверить (или несколько) smb-соединений на компьютерах с Windows (и Linux) как подключенный клиент, если шифрование действительно используется?

1 ответ1

1

Для клиентов Windows 10 используйте Get-SmbConnection из PowerShell с правами администратора. У него есть дополнительные поля, которые не отображаются в формате таблицы по умолчанию, но могут быть запрошены по имени:

Get-SmbConnection | ft ServerName,ShareName,Encrypted

Для клиентов Linux, использующих модуль ядра cifs (монтирование файловой системы ядра), я думаю , что это должно быть доступно в файле /proc/fs/cifs/DebugData вместе с другой информацией, но либо это на самом деле не существует, либо, по крайней мере, не очевидно. См. Абзац smbclient ниже.

Для клиентов Linux, использующих библиотеку smbclient пользовательского пространства (включая пути smb:// GNOME), простого способа узнать нет. Я бы запустил захват пакетов, используя Wireshark, и посмотрел бы, что происходит, когда я читаю файл - разница между простыми и зашифрованными пакетами SMB легко заметна.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .