写在前面的话
由于使用过程中,发现如果 Samba 只用于内网访问,同事在外面甚至其它不是一个网段的同事就无法访问了。这显然不符合我们最终的需求,最后没法,只能把访问部署到云服务器上面去,此时问题来了,不知道你还是否记得某个表情包:
没错,之前的勒索病毒攻击,就是利用 445 端口,所以公网目前是封了这个端口的,哦豁~
所以我们得想办法绕开这个 445,换成其它端口,但是问题同样出来了,windows 使用 smb 默认就是 445 端口!
那还能怎么办,本地端口转发呗~
不知道 Samba 怎么搭建得查看我上一篇文档:
https://www.cnblogs.com/Dy1an/p/11265676.html
配置 Samba
既然要使用其它端口,意味着我们服务的端口就不能再是 445,所以我们修改 Samba 主配置文件:/etc/samba/smb.conf
############################################################################## # 全局配置 ############################################################################## [global] workgroup = WORKGROUP server string = Samba Server Version %v netbios name = Samba log file = /var/log/samba/samba_log.%m max log size = 50 security = user passdb backend = tdbsam smb ports = 6727 include = /etc/samba/user/%U.smb.conf
通过 smb ports 将 Samba 的端口更改为:6727,然后重启服务即可!
配置 Windows
Windows 比较麻烦,因为 smb 服务本身就是主要针对 Windows 的,所以 445 端口被安排的明明白白。
1. 以管理员身份运行 cmd 控制台:这里以 Windows 10 为例,Windows 7 一个意思
2. 执行如下命令:
sc config LanmanServer start= disabled net stop LanmanServer sc config iphlpsvc start= auto netsh interface portproxy add v4tov4 listenport=445 connectaddress=公网IP connectport=6727
我们先停止 445 端口的访问,启动本机的端口转发,配置转发规则。注意命令 = 后面需要空格。
3. 重启电脑,据说不重启不生效,我反正重启了。
4. 访问测试:
\\127.0.0.1
现在地址变成了这个:
输入用户名密码访问即可!
配置 Mac book
Mac 就更简单了,因为它方式本身就和 Windows 不一样,也不存在默认一定使用 445 的情况,所以可以直接访问:
1. 打开 Finder:
2. 输入访问地址:
smb://用户名:密码@公网IP:6727
这样直接就行,我这里把账户密码写到这里是为了方便切换用户,如果你用户是固定的,可以直接去掉:用户名:密码@
小结
至于 Linux 版本这里就不做描述了,说实话,那个没啥需求,网上也很多。