CIFS / SMB操作所需的TCP / IP端口

如果我想允许两台防火墙计算机之间的Windowsnetworking驱动器,我需要打开端口137-139,还是端口445足够? 我必须提交表单并获得批准才能打开防火墙端口,而且我不想要求比我需要更多的开放端口。 这里的所有机器都是Windows XP或更高版本。

注意:当我说“Windowsnetworking驱动器”时,我并不完全确定是指SMB还是CIFS,而我并不完全清楚这两种协议的区别。

    端口137-139用于NetBios /名称parsing。 没有它,你将不得不通过与NetBIOS名字相反的IP地址访问机器。 示例\\192.168.1.100\share_name\\my_file_server\share_name相对

    因此,如果您只能使用IP地址,那么端口445就足够了。

    这个configuration适用于我:137 / UDP,138 / UDP,139 / TCP和445 / TCP。 来源和更多信息: http : //www.icir.org/gregor/tools/ms-smb-protocols.html 。

    所以这些是我的Samba服务器的iptables规则:

     # 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