我们已经准备好了,你呢?

我们与您携手共赢,为您的企业形象保驾护航!

前言

基于安全的考虑,服务器端的SMB(共享文件夹)应用通过FRP等工具将SMB应用的445端口映射到了公网IP的其他端口,或者直接修改了SMB的默认端口(可参考最后一节目录)

客户端无法像SSH一样通过\\IP:端口访问远程SMB,所以必须在客户端进行一系列配置进行访问

客户端(win10)操作步骤

重点:转发之后访问的应该是\\127.0.0.1\,而不是\SMB服务器IP\。几乎所有人都转发失败应该都是这个原因

我这里的公网IP为117.73.12.12,服务器端SMB映射到了30445端口
根据自己的情况修改

  • win10 右键开始菜单 - Windows PowerShell(管理员),以管理员模式打开PowerShell,输入以下命令配置一个端口转发:
netsh interface portproxy add v4tov4 listenport=445 listenaddress=127.0.0.1 connectport=30455 connectaddress= 117.73.12.12

效果就是本机访问127.0.0.1的445端口时,会转发到远程IP地址(117.73.12.12)的30445端口

  • 查看端口转发配置列表,可以看到已经成功转发
netsh interface portproxy show all
  • 打开系统服务管理器,找到server,右键属性–> 启动类型改为禁用,然后重启电脑,再次查看服务状态,没有正在运行就是成功了

单击开始菜单,依次点击所有应用→Windows系统→运行
快捷键:win+R键,打开运行,在输入框中输入:services.msc,确定打开。

  • 可以执行netstat -ano | findstr 445命令,查看端口放开情况

  • 打开电脑的文件资源管理(此电脑),在地址栏输入\\127.0.0.1\就可以访问了

注意:一定是输入\\127.0.0.1\

恢复步骤

用完以后,可以打开server的启动,并且删除转发

删除转发的命令:

netsh interface portproxy delete v4tov4 listenaddress=欲删除项目的**IP listenport=欲删除项目的**端口

netsh interface portproxy delete v4tov4 listenport=445 listenaddress=127.0.0.1

附:服务端修改SMB的端口

netsh interface portproxy add v4tov4 listenport=希望被修改成的端口 listenaddress=127.0.0.1 connectport=445 connectaddress=127.0.0.1

修改完记得检查服务端的防火墙是否放通了这个端口

附:动态域名配置方法

创建一个bat文件,粘贴以下内容

@ECHO OFF ipconfig /flushdns  netsh interface portproxy delete v4tov4 listenaddress=127.0.0.1 listenport=445 Set ip= For /f "skip=1 tokens=2 delims=[" %%a in ('ping 替换为域名 -n 1 -w 10') do ( For /f "tokens=1 delims=]" %%b in ("%%a") do ( Set ip=%%b ) )  netsh interface portproxy add v4tov4 listenport=445 listenaddress=127.0.0.1 connectport=替换为端口号 connectaddress=%ip%

把上面的“替换为域名”、“替换为端口号”,改为你的域名和端口号,保存为bat文件,并用windows的计划任务,用管理员权限每天定时运行。

免责声明:本站内容(文字信息+图片素材)来源于互联网公开数据整理或转载,仅用于学习参考,如有侵权问题,请及时联系本站删除,我们将在5个工作日内处理。联系邮箱:chuangshanghai#qq.com(把#换成@)

我们已经准备好了,你呢?

我们与您携手共赢,为您的企业形象保驾护航!

在线客服
联系方式

热线电话

132-7207-3477

上班时间

周一到周五

二维码
线