¿Cómo funciona realmente el intercambio de archivos de Windows?

¿Cómo funciona realmente el intercambio de archivos de Windows?

Sé que cuando se comunica a través de HTTP, primero se debe descargar la fuente para poder verla en el navegador. Pero, ¿qué mecanismo está realmente en juego cuando se comparten archivos de Windows (tanto cuando se comparten a través de un enrutador de red como cuando se comparten directamente, por ejemplo, un cable LAN de PC-1 a PC-2)?

  1. ¿Se envía una solicitud al servidor, que comienza a transmitir datos en un determinado puerto para ser recibidos por el cliente?
  2. ¿El cliente accede a la unidad del servidor como una unidad convencional, lee datos y los copia en su propia unidad?
    1. ¿El servidor copia el archivo al disco duro del cliente?

Respuesta1

¿Cómo funciona realmente el intercambio de archivos de Windows?

Autenticación del protocolo Microsoft SMB

El modelo de seguridad utilizado en el protocolo SMB de Microsoft es idéntico al utilizado por otras variantes de SMB y consta de dos niveles de seguridad: usuario y recurso compartido. Un recurso compartido es un archivo, directorio o impresora al que pueden acceder los clientes del protocolo Microsoft SMB.

La autenticación a nivel de usuario indica que el cliente que intenta acceder a un recurso compartido en un servidor debe proporcionar un nombre de usuario y una contraseña. Cuando se autentica, el usuario puede acceder a todos los recursos compartidos en un servidor que no esté protegido por seguridad a nivel de recursos compartidos. Este nivel de seguridad permite a los administradores del sistema determinar específicamente qué usuarios y grupos pueden acceder a un recurso compartido.

La autenticación a nivel de recurso compartido indica que el acceso a un recurso compartido está controlado mediante una contraseña asignada únicamente a ese recurso compartido. A diferencia de la seguridad a nivel de usuario, este nivel de seguridad no requiere un nombre de usuario para la autenticación y no se establece ninguna identidad de usuario.

En ambos niveles de seguridad, la contraseña se cifra antes de enviarla al servidor. NTLM y el antiguo cifrado LAN Manager (LM) son compatibles con el protocolo SMB de Microsoft. Ambos métodos de cifrado utilizan autenticación de desafío-respuesta, donde el servidor envía al cliente una cadena aleatoria y el cliente devuelve una cadena de respuesta calculada que demuestra que el cliente tiene suficientes credenciales para acceder.

fuente


Descripción general del protocolo Microsoft SMB y del protocolo CIFS

El protocolo de bloque de mensajes del servidor (SMB) es un protocolo para compartir archivos de red y, tal como se implementa en Microsoft Windows, se conoce como protocolo Microsoft SMB. El conjunto de paquetes de mensajes que define una versión particular del protocolo se llama dialecto. El protocolo del sistema común de archivos de Internet (CIFS) es un dialecto de SMB. Tanto SMB como CIFS también están disponibles en VMS, varias versiones de Unix y otros sistemas operativos.

La referencia técnica de CIFS está disponible en Microsoft Corporation enProtocolo de acceso a archivos del sistema de archivos de Internet común (CIFS).

Aunque su objetivo principal es compartir archivos, la funcionalidad adicional del Protocolo SMB de Microsoft incluye lo siguiente:

En el modelo de red OSI, el protocolo SMB de Microsoft se utiliza con mayor frecuencia como protocolo de capa de aplicación o de capa de presentación, y depende de protocolos de nivel inferior para el transporte. El protocolo de capa de transporte con el que se utiliza con mayor frecuencia el protocolo Microsoft SMB es NetBIOS sobre TCP/IP (NBT). Sin embargo, el protocolo Microsoft SMB también se puede utilizar sin un protocolo de transporte independiente; la combinación Microsoft SMB Protocol/NBT se utiliza generalmente para compatibilidad con versiones anteriores.

El protocolo Microsoft SMB es una implementación cliente-servidor y consta de un conjunto de paquetes de datos, cada uno de los cuales contiene una solicitud enviada por el cliente o una respuesta enviada por el servidor. Estos paquetes se pueden clasificar en términos generales de la siguiente manera:

  • Paquetes de control de sesión: establece e interrumpe una conexión a recursos de servidor compartidos.
  • Paquetes de acceso a archivos: accede y manipula archivos y directorios en el servidor remoto.
  • Paquetes de mensajes generales: envía datos a colas de impresión, ranuras de correo y canalizaciones con nombre, y proporciona datos sobre el estado de las colas de impresión.

Algunos paquetes de mensajes pueden agruparse y enviarse en una sola transmisión para reducir la latencia de respuesta y aumentar el ancho de banda de la red. Esto se llama "procesamiento por lotes". ElEscenario de intercambio de paquetes del protocolo SMB de Microsoft La sección describe un ejemplo de una sesión del protocolo SMB de Microsoft que utiliza procesamiento por lotes de paquetes.


Tema: Dialectos del protocolo Microsoft SMB

  • Descripción:Para establecer una conexión entre un cliente y un servidor mediante el protocolo SMB de Microsoft, primero debe determinar el dialecto con el nivel más alto de funcionalidad que admiten tanto el cliente como el servidor.

Tema: Autenticación del protocolo Microsoft SMB

  • Descripción:El modelo de seguridad utilizado en el protocolo SMB de Microsoft es idéntico al utilizado por otras variantes de SMB y consta de dos niveles de seguridad: usuario y recurso compartido. Un recurso compartido es un archivo, directorio o impresora al que pueden acceder los clientes del protocolo Microsoft SMB.

Tema: Escenario de intercambio de paquetes del protocolo SMB de Microsoft

  • Descripción:Ejemplo de intercambio de paquetes del protocolo Microsoft SMB entre un cliente y un servidor.

fuente


Aclaración de comentarios

Paquetes de acceso a archivos: accede y manipula archivos y directorios en el servidor remoto. ¿Como sucedió esto? ¿Dónde está el paquete de respuesta para dar los datos solicitados al cliente? Kraken

Cada paquete suele ser una solicitud básica de algún tipo, como abrir un archivo, cerrar un archivo o leer un archivo. Luego, el servidor recibe el paquete, verifica si la solicitud es legal, verifica que el cliente tenga los permisos de archivo adecuados y finalmente ejecuta la solicitud y devuelve un paquete de respuesta al cliente. Luego, el cliente analiza el paquete de respuesta y puede determinar si la solicitud inicial fue exitosa o no.

fuente


Recursos adicionales

Un diagrama y una explicación de los aspectos de autenticación involucrados en el establecimiento de una sesión cliente-servidor con el protocolo.

Lea para obtener más detalles sobre SMB.

información relacionada