赞
踩
个人内外网存储服务器(主要是外网ftp)完整解决方案
目录
随着互联网技术的发展,大家对于网络的需求量也越来越大,对数据的需求量也与日俱增。面对不是很方便的互联网数据交换,尤其是大文件、远程备份,本方案应运而生。其实文中所述网上都有,但是都不能应对各种复杂情况。本文优选各种方案,确保大多数读者都适用,不必费尽心思四处寻找资料。
本文服务器主机配置:CPU:i3-4130,主板某嘉B85m-d3v,内存金士顿ddr3 4g*2 1600mhz双通道,显卡某嘉gt630,硬盘:金士顿a400 240g,西数蓝盘1t。
服务器主机系统Windows Server 2019 Datacenter桌面体验版,客户机系统Windows 11 build22000.71专业工作站版。 FileZilla版本0.9.60。
鉴于大多数用户使用windows操作系统,服务器使用Windows Server系统。内网传输采用SMB协议,简单说来就是windows中右键共享,但这类共享只在局域网中有效(广域网不是不行,而是windows固定了445端口,使用此协议有永恒之蓝风险,非常不建议使用),其优点是可以实时访问、读取、调用共享的文件,传输速度高(瓶颈是内网传输速率,一般WIFI6路由器可以做到100mb/s以上)。访问方式简单,可以通过桌面上的网络文件夹进行访问(当然,运行-输入“//+ip”也可以)。
外网访问采用ftp协议。Windows自带的ftp服务器模块体验极差,这里采用FileZilla Server。ftp传输需要两个端口(端口好比你与外界通信的小门,每个应用或进程占用一定数量的“门”,所以大家互不干扰),这两个端口默认为21、20。我们使用被动模式,即固定一个命令端口(默认21,可以改),设置一些通信端口,我们访问命令端口,命令端口告诉我们访问什么数据端口,然后通信(当然这些电脑会帮你办)。但是这些端口只是在内网开放,如果我们想要在外网访问的话,必须在网关上做端口映射。而我们家庭的公网IP大多数是动态的,如果想要使用静态的话,必须将路由器或者光猫与一个域名绑定,这就是动态域名解析DDNS。
硬件准备:电脑一台。建议使用旧电脑,当然装一台也可以,配置建议赛扬+4gddr3。重点:一定要有两块及以上硬盘!!!固态硬盘装系统,另一块硬盘(机械固态都可以)储存文件,大小自己看多少比较合适。
软件准备:Windows Server镜像,FileZilla Server以及一些必要的装机软件。
安装操作系统(本文以Windows Server 2019 Datacenter桌面体验版演示)安装激活过程不再赘述,注意:安装时不要给存储盘分区,安装完成后在磁盘管理中右击磁盘将存储盘装换为动态磁盘随后再分区,这样以后才能扩展硬盘。
安装FileZilla Server。注意:演示版本为0.9.60,但是为了防止乱吗,建议使用0.9.14版本或更早,操作界面与演示大致相同。如果这些服务器版本较早无法下载,可以使用filezilla等客户端访问并且强制GB编码。
关闭专用网络防火墙,或者允许FileZilla Server通过防火墙
微信上极客湾老张已经做好了远比我详细的介绍,在这里就直接给链接了。
这个是硬件选择。
这个是硬件安装和系统安装(系统建议直接windows server,里面有详细介绍)
这个是基本系统设置。
这个是SMB和同步设置。这里提一句,个人推荐freefilesync,免费而且定时功能强大(依赖于系统的任务计划程序),可以百度教程。
如果只需要内网传输的话,到此为止就可以了(可能需要看一下第六部分)。接下来所有内容都是有关外网访问的。
先输入管理端口号,默认14147,但是建议改掉。密码自行设定。
接下来是编辑-设置,第一页输入命令端口,默认是21,建议改掉。线程数默认为2,可以改大一点,建议48,传输速度会快一点。
然后设置被动模式,数据端口范围建议一个就行(如10000-10000),不然映射太麻烦,下面ip选第三个自动获取,网址填下面的默认。
接下来编辑-用户,右面添加用户,输入帐户密码,勾选启用,以后访问ftp就用这些帐户密码了。
下面一栏选择要共享的文件夹(可以是好几个),并为每一位用户选择文件夹权限。
至此服务器配置已完成。可以在文件资源管理器地址栏中输入ftp://(内网IP):(命令端口号)如:ftp://192.168.1.2:21回车,输入刚才的帐户密码,检验一下ftp服务器是否已经搭建完成。
这里建议同时开启ftps,使用安全的ftp访问。这个协议只需要一个端口,默认为990,你一样可以修改。首次使用需要点击生成证书。
这里不建议使用禁止非tls,这会使得你只能通过ftps协议访问。而ftps是必须使用客户端访问的,文件资源管理器并不支持。访问时,注意ftps为隐式。
这一块是重中之重!
首先检查家里的网络部署是什么样的。
首先百度查询IP地址,如果是100,192,10开头的是内网IP,也就是没有公网IP地址,这种情况只能做内网穿透了,这个除了向日葵价格太离谱其他都还行。
如果有公网IP,那么再检查一下你的IP是不是固定的,这个如果是一般家庭的话都是动态的,除非你买了专线,具体可以咨询宽带运营商。
紧接着检查上网方式。一般有两种。①路由器PPPOE直接拨号;②光猫拨号,路由器通过桥接或者DHCP连接光猫。
如果是①的话,服务器主机就必须要与光猫直接连接(一般是通过交换机),使用光猫直接分配的内网IP,在光猫管理界面(一般是192.168.1.1,如果不是那就是192.168.x.1,x可以是0,1,2,3,4,5,再往上基本没了)添加端口映射(有些是禁用的,如果没有禁用详见②)。但是在这种情况下,如果你想要通过DDNS将光猫与域名绑定,就需要宽带提供商工作人员操作了,非常麻烦(有些运营商不支持DDNS)。所以这里建议①情况用户改成②。
更改方法:将路由器与光猫直接连接(不能过交换机),随后与宽带运营商联系,让他们后台把光猫改为桥接。紧接着登录路由器管理界面(这里以华为AX3 pro为例,管理界面地址在路由器下面贴着),输入管理密码,进入。上网设置中将上网方式改为宽带账号上网,输入宽带账号密码,保存即可。这样你的服务器主机随便是有线还是无线连接在路由器上即可。如果有什么问题可以与运营商工程师联系。
紧接着在更多功能-安全设置-NAT服务中添加端口映射(其他路由器位置不一样) 。
第一个映射映射ftp命令端口,输入映射名称(随便起),服务器主机IP,内部端口为之前在FileZilla中定义的命令端口,外部端口随便,建议和内部保持一致。
这里解释一下内部和外部。内部端口指的是程序在主机上监听的端口,比如前面的命令端口21,如果我把内部端口21映射到外部121,这就意味着你访问时需要使用外网ip:121,而内网访问仍然是内网ip:21,相当于是为了一些无法修改端口的程序变相地修改了端口。这里要提到前文所讲的smb,之所以不推荐smb映射是因为smb无论是访问和被访问都是默认445端口,你无法通过ip:端口的形式访问,并且漏洞本身并不在于445这个端口而是smb协议本身,所以不推荐外网smb。
第二个映射映射ftp数据端口,输入映射名称(随便起,和第一个不一样就行),服务器主机IP,内部端口为之前在FileZilla中定义的数据端口,外部端口随便,建议和内部保持一致。
同理如果你设置了ftps,那么映射你的ftps端口。
管理端口你只要不需要在外网管理内网的服务器就不需要映射。
注意:如果不做端口映射也可以,但是要开启dmz主机,意思是把这台主机暴露在外网,说人话就是帮你把它所有端口都做了映射,这对于家庭网络是安全的,但对于这台主机非常危险,如果不需要使用大量端口一般不建这么做。
如果你觉得动态的IP没什么问题,那么设置到此为止就可以了。但是如果你觉得一天到晚要查询IP比较麻烦,那么建议使用DDNS(有些路由器不支持)。这里还是以华为AX3 pro为例。因为是华为路由器只支持贝锐,那么这里以贝锐举例(主要是主流路由器大部分仅支持贝锐,阿里域名解析需要使用脚本,阿里云ddns,动态域名更新Python脚本,基于Python3,适用于linux_迷途归一的博客-CSDN博客_阿里云ddns脚本,设置任务计划程序),到官网搜索壳域名并注册,有问题找客服。注册完成后输入服务器、域名、注册账户和密码,保存连接,至此网络配置完成。
只需要在文件资源管理器中输入ftp://(外网IP或域名):(命令端口号)如:ftp://home.net:21或ftp://111.111.111.111:21回车访问输入帐户密码即可。
如果有同步需求的可参考极客湾教程:
如果有需要ftp快捷方式的,可以在文件资源管理器中添加网络位置,输入上面的ftp访问链接,登陆方式不要匿名,输入帐户、密码。ftp快捷方式便出现在此电脑中了(可以拖到桌面)。
至于乱码问题,建议使用FileZilla版本0.9.14或更早,原因是windows使用GB编码,而FileZilla使用UTF-8编码,只有0.9.14及之前的早期版本使用GB编码。当然,使用FileZilla客户端并强制UTF-8编码也可以。
如果220,227报错是因为路由器公网IP发生了更改而FileZilla还没有发现更改,导致的DNS解析问题,需要重启FileZilla或者将IP获取方式改成使用以下IP保存,然后换回从网址获取IP,这样filezilla才会自动重新获取IP。当然等待filezilla隔一段时间重新自动获取IP也是可以的。
以上就是我自己亲身实践并总结得到的个人存储服务器完整解决方案,可以说是把我自己遇到的问题以及网络上各种片面的教程、问答都包含在内了。这个教程主要写给有需要的技术型用户,一般人看不懂我就真的无能为力了。不过还是希望大家能支持一下。整个服务器配置我自己研究了半个月,希望这篇教程能帮有需要的人节省时间。
各种问题欢迎各位指正,我也会在使用过程中不断更新已知问题。
制作不易,请大家支持!
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。