OPENWRT的samba配置
废话不多说,直接来,OPENWRT自带的网络共享,但是有时候我用Windows连接无法连接,于是就做个教程。
打开Windows的相关功能
在应用设置中,选择打开系程序和功能,选择启用货关闭Windows功能
打开SMB的功能。
配置OPENWRT
在共享目录中选择对应的目录,然后将权限设置为0777,允许匿名用户访问。截至在模板中配置:server min protocol = NT1
这条命令是允许SMB 1.0协议访问,或者你的界面上有允许低版本协议访问的勾选,勾选上即可。
终极解决方法
正常这样子,你在网络下面就可以看到对应的机器名称,而且也可以访问。如果还是不行,使用管理者打开CMD,输入以下命令后重启系统:
1 | sc.exe config lanmanworkstation depend= bowser/mrxsmb10/nsi |
这些命令用于修改 Windows 中 SMB 相关服务的配置,具体含义如下:
-
sc.exe config lanmanworkstation depend= bowser/mrxsmb10/nsi
修改 “LanmanWorkstation” 服务(工作站服务)的依赖关系
将其依赖项设置为:bowser(浏览器服务)、mrxsmb10(SMB 1.0 协议驱动)和 nsi(网络存储接口服务)
这会移除对 mrxsmb20(SMB 2.0 协议驱动)的依赖 -
sc.exe config mrxsmb20 start= disabled
将 “mrxsmb20” 服务(SMB 2.0 协议驱动)的启动类型设置为"禁用"
这意味着系统启动时不会加载 SMB 2.0 协议支持
这些命令的总体效果是:禁用 SMB 2.0/3.0 协议支持,强制系统只使用 SMB 1.0 协议进行文件共享
PS:
SMB 1.0 是过时且不安全的协议,微软已不建议使用
执行这些命令可能会影响文件共享功能和网络安全
通常只有在需要兼容非常旧的系统时才这样做
命令中的等号(=)后需要有一个空格
需要管理员权限才能执行这些命令
除非有特殊兼容性需求,否则不建议禁用 SMB 2.0/3.0,因为这会降低系统安全性和性能。
总结
正常Windows是支持SMB 2/3的但是个人情况不一样,如果你的openwrt系统版本较低或者别的情况,有可能是配置中没有配置好,导致迟迟无法连接则可以用这个方案。Windows是自带SMB V2的,但是不知道为啥我的无法连接上去,有可能是路由器那边版本太低或者配置错误,所以只能强制使用SMB V1了。如果你想要测试SMB v2,可以试试这个。