Как узнать у клиента, зашифровано ли соединение smb / cifs?

332
tardis

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) как подключенного клиента, если шифрование действительно используется?

0

1 ответ на вопрос

1
grawity

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

Get-SmbConnection | ft ServerName,ShareName,Encrypted 

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

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

Похожие вопросы