Ports TCP / IP nécessaires au fonctionnement de CIFS / SMB

44

Si je veux autoriser les lecteurs réseau Windows entre deux ordinateurs protégés par un pare-feu, dois-je ouvrir les ports 137-139 ou le port 445 est-il suffisant? Je dois soumettre un formulaire et obtenir l'autorisation d'ouvrir des ports de pare-feu, et je ne veux pas demander plus de ports ouverts que nécessaire. Toutes les machines ici sont Windows XP ou ultérieur.

Remarque: lorsque je parle de "disques en réseau Windows", je ne suis pas tout à fait sûr de parler de SMB ou de CIFS, et je ne suis pas tout à fait clair sur la différence entre les deux protocoles.

Jonathan
la source

Réponses:

58

Les ports 137-139 sont destinés à la résolution NetBios / Nom. Sans cela, vous devrez accéder aux machines par adresse IP opposée au nom NetBIOS. Exemple \\192.168.1.100\share_nameopposé à\\my_file_server\share_name

Le port 445 est donc suffisant si vous ne pouvez utiliser que des adresses IP.

Tim
la source
Sur mon site, les noms NetBIOS sont toujours les mêmes que les noms DNS. Donc, si je me réfère aux machines par nom d'hôte, Windows pourra-t-il trouver la machine via DNS sans utiliser NetBIOS?
Jonathan
5
Tant que le DNS fonctionnant est disponible pour le client, cela devrait suffire.
Tim
1
Cela fonctionne-t-il également avec les adresses IP publiques? Est-il suffisant d'ouvrir le port 445 dans le pare-feu du modem / routeur ADSL?
Hrqls
11
@Hrqls En théorie, oui, mais d' après ce que je sais, ouvrir votre PME au monde entier est une très mauvaise idée.
Samuel Harmer
@ Styne666, totalement d'accord. Encore plus: ouvrir à Internet tout ce qui ne dispose pas d’un support de sécurité adéquat est généralement une mauvaise idée. Je recommanderais d'utiliser le mode de transport IPsec pour le protéger au moins.
dess
7

Cette configuration a fonctionné pour moi: 137 / UDP, 138 / UDP, 139 / TCP et 445 / TCP. Source et informations complémentaires sur: http://www.icir.org/gregor/tools/ms-smb-protocols.html .

Voici donc les règles iptables pour mon serveur Samba:

# The router doesn't need SMB access.
-A INPUT -s 192.168.1.1 -p udp --dport 137 -j REJECT
-A INPUT -s 192.168.1.1 -p udp --dport 138 -j REJECT
-A INPUT -s 192.168.1.1 -p tcp --dport 139 -j REJECT
-A INPUT -s 192.168.1.1 -p tcp --dport 445 -j REJECT

# Actual Samba ports
-A INPUT -s 192.168.1.0/24 -m state --state NEW -p udp --dport 137 -j ACCEPT
-A INPUT -s 192.168.1.0/24 -m state --state NEW -p udp --dport 138 -j ACCEPT
-A INPUT -s 192.168.1.0/24 -m state --state NEW -p tcp --dport 139 -j ACCEPT
-A INPUT -s 192.168.1.0/24 -m state --state NEW -p tcp --dport 445 -j ACCEPT
Juan
la source
4
Etant donné que l'OP a posé des questions sur les ordinateurs Windows et que leur niveau de compréhension d'iptables est complètement inconnu, il serait préférable de l'écrire comme fichier de configuration d'un système complètement différent.
DarkMoon
1
En clair, UDP 137 et 138, TCP 139 et 445
Arlen Beiler