Mi máquina local ejecuta Windows 7, que admite la última versión lanzada del protocolo SMB (SMB 2.1). También tengo un host remoto y no sé qué sistema operativo o software de soporte SMB está instalado en ese host remoto; Solo sé que el host remoto admite alguna versión del protocolo SMB.
¿Cómo puedo averiguar, desde el símbolo del sistema (o PowerShell) de mi máquina con Windows 7, qué versión de SMB es compatible con ese host remoto?
Editar: aunque menciono Windows 7 anteriormente, estoy seguro de que esta pregunta es relevante para muchos administradores de sistemas / redes o personal de soporte de escritorio, por lo tanto, estoy publicando la pregunta aquí en lugar de en superuser.com.
Respuestas:
La forma más fácil es instalar WireShark y capturar los paquetes, los decodificará y debería mostrarle una versión de protocolo. Tienen una entrada SMBv2 en su wiki , por lo que la última versión de WireShark debería decodificarla en la captura de paquetes.
fuente
En Windows 8 y versiones posteriores, puede usar el comando powerhsell
Get-SmbConnection
para verificar qué versión de SMB se usa por conexión.fuente
Solo hay dos formas posibles de determinar la versión SMB de un host remoto.
El primero es tomar el banner usando telnet. Incluso entonces, no tienes la garantía de que algo de uso volverá. Puedo conectarme con éxito a uno de mis servidores SMB, pero no obtengo ninguna información de banner útil.
El segundo es tomar huellas digitales del sistema a través de la red utilizando un escáner de seguridad de red. Tendrá que buscar una buena herramienta pensada, porque todavía no se le garantiza ningún éxito al determinar qué versión de SMB se está ejecutando. Por ejemplo, acabo de usar un escaneo rápido con nmap en mi red (que sé que está ejecutando microsoft SMB en varios puntos finales) y no obtengo información pertinente sobre qué versión de SMB está ejecutando.
fuente
Esto es lo que debe hacer para obtener la versión SMB:
Ahora, ejecutará 2 comandos dentro de los 10 segundos entre sí o Windows cerrará los puertos como no utilizados.
3a. Ejecute "dir \ SERVERNAME \ C $"
3b. Ejecute "Get-SmbConnection" y su columna "Dialecto" es la versión de su SMB.
https://blogs.technet.microsoft.com/josebda/2013/10/02/windows-server-2012-r2-which-version-of-the-smb-protocol-smb-1-0-smb-2- 0-smb-2-1-smb-3-0-or-smb-3-02-are-you-using /
SMB Stack Matrix
fuente