我想实现一个小工具,让我在Windows上可以轻松地在任何其他操作系统上执行 - 通过IP地址和端口指定远程SMB服务器。在本地,Windows不会通过445或139以外的任何端口(它的选择)执行SMB,而且我厌倦了为whack-a-mole播放各种不良内容的解决方法,微软一直在向Windows添加隧道SMB通过SSH端口转发。
我想到的是一个小命令行应用程序,它可以让我做类似
的事情netsubst servername -i IP -p PORT
这会与司机携手合作吗? dll的?它作为SMB重定向器挂钩到Windows,但扫描由netsubst设置的服务器名称表,而不是在网络上查找它们以找出要连接的内容。所以我能够做到
net use X:// servername / sharename / user:username *
按照通常的方式,除了Windows在端口445或139上查找它可以找到的任何机器上的// servername,它将直接解决IP,端口PORT;如果IP恰好是127.0.0.1并且PORT恰好是通过ssh转发到其他地方的东西,那么All Just Work和我将不再需要处理愚蠢的墙壁,Windows放置访问localhost端口139和445。
我认为我需要的东西类似于虚拟盒用于进行主机文件共享的// vboxsvr来宾添加,但可能更简单,因为它不需要完整的后端 - 在我的理想世界中,仅我需要替换的Windows功能是建立与远程SMB服务器的初始连接的部分。但在我开始讨论VirtualBox源代码之前,有人可以提出一种更简单的方法来完成这项工作,或者可能会向我指出有关实施SMB重定向器的Microsoft文档吗?
答案 0 :(得分:3)
\\server@port\share
是WebDAV的有效语法。将@port
放入UNC路径表示法的那一刻,净使用从SMB变为WebDAV。您无法更改SMB正在使用的端口。
- 本
答案 1 :(得分:2)
写一个驱动程序并不容易;它需要很多领域特定的知识。以下是一些入门链接:
How to Write a Windows Driver
Develop a Windows Driver
WDK Documentation on MSDN
您可能还会发现this(PDF)有用。
答案 2 :(得分:0)
您可能需要自己实施网络重定向器。
查看TalAloni's SMBLibrary note
和PcapDotNet
,可以提供一些帮助。
答案 3 :(得分:-2)
net use * \\servername@XXXX\
其中XXXX是端口号。
我在Windows 7上检查过它。所以它完美无缺