Comment fonctionne réellement le partage de fichiers Windows?

2

Je sais que lors de la communication via HTTP, la source doit d'abord être téléchargée pour pouvoir être visualisée sur le navigateur. Mais quel mécanisme est réellement utilisé lors du partage de fichiers Windows (les deux lors du partage via un routeur réseau et du partage direct, par exemple, d'un câble LAN de PC-1 à PC-2)?

  1. Une requête est-elle envoyée au serveur, qui commence à transmettre des données sur un certain port à recevoir par le client?
  2. Le client accède-t-il au lecteur du serveur comme un lecteur conventionnel, lit-il les données et les copie-t-il sur son propre lecteur?
    1. Le serveur copie-t-il le fichier sur le disque dur du client?
Kraken
la source
1
Je viens d’ajouter des réponses citées de ressources Microsoft sur le protocole d’authentification et le mode d’authentification du partage de fichiers Windows. Cela devrait vous dire ce dont vous avez besoin pour toutes vos questions.
Pimp Juice IT

Réponses:

3

Comment fonctionne réellement le partage de fichiers Windows?

Authentification du protocole Microsoft SMB

Le modèle de sécurité utilisé dans le protocole Microsoft SMB est identique à celui utilisé par d'autres variantes de SMB et comprend deux niveaux de sécurité: utilisateur et partage. Un partage est un fichier, un répertoire ou une imprimante accessible par les clients du protocole Microsoft SMB.

L'authentification au niveau de l'utilisateur indique que le client qui tente d'accéder à un partage sur un serveur doit fournir un nom d'utilisateur et un mot de passe. Une fois authentifié, l'utilisateur peut alors accéder à tous les partages sur un serveur non également protégé par une sécurité au niveau du partage. Ce niveau de sécurité permet aux administrateurs système de déterminer spécifiquement les utilisateurs et les groupes pouvant accéder à un partage.

L'authentification au niveau du partage indique que l'accès à un partage est contrôlé par un mot de passe attribué à ce partage uniquement. Contrairement à la sécurité au niveau utilisateur, ce niveau de sécurité ne nécessite pas de nom d'utilisateur pour l'authentification et aucune identité d'utilisateur n'est établie.

Sous ces deux niveaux de sécurité, le mot de passe est crypté avant d'être envoyé au serveur. Le cryptage NTLM et l'ancien cryptage LAN Manager (LM) sont pris en charge par le protocole Microsoft SMB. Les deux méthodes de cryptage utilisent une authentification défi-réponse, dans laquelle le serveur envoie au client une chaîne aléatoire et le client renvoie une chaîne de réponse calculée prouvant que le client dispose d'informations d'identification suffisantes pour accéder.

la source


Présentation du protocole Microsoft SMB et du protocole CIFS

Le protocole SMB (Server Message Block) est un protocole de partage de fichiers réseau. Tel qu'implémenté dans Microsoft Windows, il est appelé protocole Microsoft SMB. L'ensemble de paquets de messages qui définit une version particulière du protocole s'appelle un dialecte. Le protocole CIFS (Common Internet File System) est un dialecte de SMB. SMB et CIFS sont également disponibles sur VMS, plusieurs versions de Unix et d'autres systèmes d'exploitation.

La référence technique à CIFS est disponible auprès de Microsoft Corporation à l’ adresse CIFS (Common Internet File System) .

Bien que son objectif principal soit le partage de fichiers, les fonctionnalités supplémentaires du protocole Microsoft SMB incluent les éléments suivants:

Dans le modèle de réseau OSI, le protocole Microsoft SMB est le plus souvent utilisé en tant que couche application ou protocole de couche présentation, et il s'appuie sur des protocoles de niveau inférieur pour le transport. Le protocole de couche de transport avec lequel le protocole Microsoft SMB est le plus souvent utilisé est NetBIOS sur TCP / IP ( NBT ). Toutefois, le protocole Microsoft SMB peut également être utilisé sans protocole de transport distinct. La combinaison Protocole Microsoft SMB / NBT est généralement utilisée pour assurer la compatibilité ascendante.

Le protocole Microsoft SMB est une implémentation client-serveur et consiste en un ensemble de paquets de données, chacun contenant une demande envoyée par le client ou une réponse envoyée par le serveur. Ces paquets peuvent être classés comme suit:

  • Paquets de contrôle de session - Établit et interrompt une connexion aux ressources de serveur partagées.
  • Paquets d'accès aux fichiers: permet d'accéder aux fichiers et aux répertoires du serveur distant et de les manipuler.
  • Paquets de messages généraux: envoie des données aux files d'impression, aux emplacements de courrier et aux canaux nommés, et fournit des données sur l'état des files d'attente d'impression.

Certains paquets de messages peuvent être groupés et envoyés en une seule transmission afin de réduire le temps de latence des réponses et d'augmenter la bande passante du réseau. Ceci s'appelle "le traitement en lots". La section Scénario d'échange de paquets d'échange de protocoles Microsoft SMB décrit un exemple de session de protocole Microsoft SMB utilisant le traitement par lots.


Sujet: Dialectes du protocole Microsoft SMB

  • Description: pour établir une connexion entre un client et un serveur utilisant le protocole Microsoft SMB, vous devez d’abord déterminer le dialecte avec le niveau de fonctionnalité le plus élevé pris en charge par le client et le serveur.

Sujet: Authentification du protocole Microsoft SMB

  • Description: le modèle de sécurité utilisé dans le protocole Microsoft SMB est identique à celui utilisé par d’autres variantes de SMB et comprend deux niveaux de sécurité: utilisateur et partage. Un partage est un fichier, un répertoire ou une imprimante accessible par les clients du protocole Microsoft SMB.

Rubrique: Scénario d'échange de paquets de protocole Microsoft SMB

  • Description: exemple d’échange de paquets de protocole Microsoft SMB entre un client et un serveur.

la source


Commentaire Clarification

Paquets d'accès aux fichiers: permet d'accéder aux fichiers et aux répertoires du serveur distant et de les manipuler. ' Comment cela peut-il arriver? Où se trouve le paquet de réponse pour donner les données demandées au client? Kraken

Chaque paquet est généralement une requête de base, telle qu'un fichier ouvert, un fichier fermé ou un fichier lu. Le serveur reçoit ensuite le paquet, vérifie si la demande est légale, vérifie que le client dispose des autorisations de fichier appropriées, puis exécute la demande et renvoie un paquet de réponse au client. Le client analyse ensuite le paquet de réponse et peut déterminer si la demande initiale a abouti ou non.

la source


Ressources supplémentaires

Un diagramme et une explication des aspects de l'authentification impliqués dans l'établissement d'une session client-serveur avec le protocole.

Lit pour plus de détails sur SMB.

Pimp Juice IT
la source
'Paquets d'accès aux fichiers: permet d'accéder aux fichiers et aux répertoires du serveur distant et de les manipuler.' Exactement ma question. Comment cela peut-il arriver? Où se trouve le paquet de réponse pour donner les données demandées au client?
Kraken
1
@Kraken Voir le bas de ma réponse avec la clarification des commentaires puis le détail des ressources supplémentaires .
Pimp Juice IT
Je vous remercie. C'est certainement ce que j'avais besoin de savoir. +1 pour clarification.
Kraken
Donc, fondamentalement, il n’est pas si différent de HTTP.
Kraken