Win10上通过nginx代理配置远程非445端口SMB

引言

家里架了一个SMB文件服务器,想要远程访问,开了445端口,但仅限某些特殊网络可以远程访问,其他网络全部拒绝445端口,因此网上找了很多将Win10的SMB指向别的端口的教程,但所有教程均使用环回网卡解决,非常不优雅,因此我决定使用nginx将本机445端口代理为远程端口。

注意:本教程需要关闭本机445端口监听,也就是说本机无法再作为SMB服务器来共享文件了!!!!!!!

解除Win10的445端口占用

445端口默认会被Win10的文件共享服务给占用,nginx无法启动代理,因此需要将该文件共享服务关闭。

这里我参考了这篇文章,可以直接照做,但是我的电脑(系统LTSC2021,版本号21H1)只有LanmanServer这个服务,没有Browser这个服务,忽略即可。

禁用完成服务后需要重启电脑,然后使用

netstat -an | findstr :445

查看445端口占用,如果出来没有任何信息,则表示已解除占用。

配置nginx转发端口

打开nginx官方网站,点击 “nginx-版本号”,下载zip后将程序解压到某个路径中没有中文的文件夹下。

打开conf\nginx.conf,在最下面一行添加以下内容:

stream {
	upstream remote_smb_server{
		server baidu.com:12345;   # 这里baidu.com换成你的ip或域名,12345换成你的SMB端口
	}
	server {
		listen 445;   # 这里必须是445,表示监听本地445端口
		proxy_connect_timeout 10;
		proxy_timeout 600;
		proxy_pass remote_smb_server;
	}

尝试

返回根目录,运行nginx.exe,使用任务管理器查看是否有nginx进程,如果有,表明代理成功。

开机启动

为了更加优雅的开机即用,可以将nginx设置为开机启动。

使用运行窗口(快捷键:Win+R)输入shell:startup,将指向你的nginx.exe的快捷方式放入该文件夹。

完整测试

你可以尝试使用\\localhost来映射你刚刚定义的远程SMB服务器了,如果一切正常,建议再重启试一下。

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小涛29

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值