路由器搭建ftp服务器


前言

写这篇博客的原因主要是给我所在的实验室路由器写一个配置参考文档,因为是作为实验室公共使,有不少不太懂配置的学弟学妹恐怕操作起来困难,毕竟马上就要走出学校开始工作了,所以以后的主要还是他们使用。
其实我所在的实验室在去年已经进购了一台DELL的服务器,但是因为是只能放在学校内网中,没有办法托管服务,所以就之前给装了一个Windows Sever 2012,然后在实验室中闲置,偶尔当作一台普通电脑主机在进行使用。对于这种暴殄天物的行为,个人是感到很痛心的。
另外因为实验室还有很多资源可以存储的,比如说收集的一些视频教程、专业软件、操作系统镜像、电路图、原理图、代码什么的。为了更好的共享资源,个人觉得很有必要搭建一个FTP服务器。刚才说到暴殄天物,然而要是用上面说的那个DELL服务器用来搭建一个简单的FTP服务器,那又岂不是大材小用呢?
所以不如选用低成本的智能路由器搭建一个简单的FTP服务器吧。


预期实现功能

需要实现的三大功能

  • FTP文件共享
  • 实现打印服务,并共享打印机
  • 路由直接接入校园网,方便实验室人员直接访问校园内网

FTP服务器

关于FTP

维基百科的解释是:文件传输协议(英文:File Transfer Protocol,缩写:FTP)是用于在网络上进行文件传输的一套标准协议,使用客户/服务器模式。它属于网络传输协议的应用层。
百度百科的解释是:FTP 是File Transfer Protocol(文件传输协议)。用于Internet上的控制文件的双向传输。同时,它也是一个应用程序(Application)。基于不同的操作系统有不同的FTP应用程序,而所有这些应用程序都遵守同一种协议以传输文件。在FTP的使用当中,用户经常遇到两个概念:”下载”(Download)和”上传”(Upload)。”下载”文件就是从远程主机拷贝文件至自己的计算机上;”上传”文件就是将文件从自己的计算机中拷贝至远程主机上。用Internet语言来说,用户可通过客户机程序向(从)远程主机上传(下载)文件。

实验室的FTP需要实现的具体功能

  • 实验室文件资源共享
    • 在该路由器提供的局域网内(访问内网IP-192.168. * . * /24),即在实验室内可以访问存储资源。
    • 在路由器所在的校园局域网内(访问172. * . * . * /16),即在整个校园内,只要访问设备接入校园网均可实现访问
    • 对于一些资源,如视频文件实现网络串流,直接在线播放视频教程,无需下载存储的视频资源。
    • 允许匿名登录服务器,并查看资源,但不能更改或删除相关数据。仅有admin用户或root用户可以进行管理
    • 利用samba进行用户管理,允许存在的用户访问自己的私有的文件或目录。
    • 。。。。。。

打印机服务共享

  • 将打印机接入路由器实现打印机共享
  • 允许所在路由器所提供的局域网内共享,而不允许校园网所在局域网内的用户访问。

前期准备工作


硬盘准备工作

硬盘分区

新购买的硬盘是未进行分区的,我们可以按照自己的需求来进行分区,除了分区容量以外,另外一些分区参数也应该值得注意,如分区表类型、文件系统、对齐方式等等。

开始分区

操作环境:Windows10 RS2、DiskGenius(分区精灵)

将硬盘放入硬盘盒上电后,接入到电脑USB口。打开刚才的下载的DiskGenius软件进行分区工作。如果正常的话,硬盘列表中会显示除你硬盘以外另外一块增加的硬盘,具体的分区步骤以及分区参数可以参照下图。
分区顺序

等待格式化完成后,应该是如下的状态:
分区结束

注意事项

① 为什么分区类型选用MBR?
对比MBR和GUID两种分区类型,简单来说就是MBR是陈旧的分区类型,但是意味着通用性更加强。比如说现在操作份额占用最大的Windows 7 对GUID分区类型也不算完全兼容。所以我们这儿这样分只是为了保证最大的兼容性。不过值得注意的是MBR的分区类型最大只支持2TB硬盘,如果购买的应该容量是大于2TB的话,还是应该选用GUID分区类型,不过还好现在这块硬盘容量刚好2TB。
② 分区的盘符名称命名
我们用这块硬盘作为资源存储盘,所接入的服务器是Linux操作系统,说详细一点就是路由器所运行的嵌入式Linux系统(下面会说到),该系统只保留了一些十分精简的功能,以至于对于一些字符的支持不太友好,这里面就包括中文字符。所以如果我们使用中文字符命名分区的话,可能会显示出乱码。这种情况在Windows以及非精简的Linux中更少见一些。
③ 文件系统格式
关于这次分区选用的是NTFS格式的文件系统。说句大实话,NTFS的文件系统对于早期的Linux操作系统和苹果家的MacOS并不算太友好。Windows上我们可见的盘符通常是使用FAT32和NTFS,Linux上使用的除了FAT以外,还有EXT2、EXT3、EXT4等,要说为了保证通用性,还是选用FAT32最强,但是FAT32的文件系统不支持超过4GB的单个文件存储,实验室一个常用的大型软件如MATLAB就已经是6、7GB以上了,所以自然还是抛弃了FAT32。亲测该路由作为服务器支持NTFS的硬盘挂载,所以选用了NTFS分区的文件系统。


路由准备工作

关于路由的选购

路由选购中自己的看法

其实之前对智能路由器的关注度不高,在路由选购方面也主要是看够用、稳定这两个条件即可。在国内路由可玩性对我来说自从极路由发布第一代第二代智能路由,并成一代路由刷机神器之后,我开始对智能路由产生兴趣。
智能路由的理解,我觉得差别就和以前普通手机和智能手机的区别吧,现在的智能手机除了满足普通手机的通话、短信功能以外,还统一了操作平台(Android、iOS、WindwosPhone),应用软件的通用性大大的拓展了智能手机的实用性、可玩性。所以智能路由器亦是如此,所统一的平台是嵌入式的Linux操作系统。虽然几乎所有智能路由器都是基于Linux定制,但是不同的系统也会存在较大的差异,除了官方自己定制的系统以外,第三方也有很多固件可供选择,如OpenWRT、DD-WRT、Tomato等等第三方开源固件。所以我们可以根据自己的功能需求,刷入第三方固件来实现。从而可以实现例如ADBLOCK广告屏蔽、远程下载、私人云、aria2下载等功能。
所以为满足我们功能的拓展,第三方固件的刷入,所以应该选择主流的路由器(主流包括主流的路由型号、芯片型号如MT7620\MT7621这些,因为固件对芯片和ROM这些硬件参数挺挑的)

路由参数

最终选购的路由器是NEWIFI-D1,这是百度与联想合作的第二代路由。下面是关于NEWIFI-D1的一些参数(芯片为MT7621):
路由参数

选购原因:
- 预算:这款路由刚推出售价299,现在220左右可以买到。
- 性能:芯片相比于上一代的MT7621升级到MT7621,性能直逼千元级的华硕、网件等路由。
- 接口:实验室位置固定的原因,访问该路由多是使用无线网络,所以网线接口显得不太重要,一共三个接口都是1Gbps的。USB口有两个,因为需要接入硬盘USB、还有一个打印机,一共需要两个USB接口(其中USB3.0口默认被禁用)。所以无需使用USB HUB进行拓展接口,相比于多数单USB口的路由更具有优势。
- 资源:第三方固件适配多、迅速。

刷入路由的第三方固件

购买的NEWIFI-D1已经内置了官方定制的xCloudOS(小云系统),是基于OpenWRT深度定制的,但是自从小云OS3.0之后便锁住了OpenWRT所推崇的极客模式,使得该系统更加面向普通用户,而少了很多复杂的操作,也少了很多私人定制。所以为了满足更多的功能,可以选择刷入第三方固件。

固件的选择

个人所推崇的第三方开源固件有两个,分别是基于OpenWRT的PandoraBox(潘多拉)和Padavan固件。
关于OpenWRT:部署复杂、灵活性高
OpenWRT路由器固件版本较为成熟,用户可以针对各自的硬件配置下载相对应的程序包,并使用相关工具对硬件进行修改。这样虽然加大了部署过程的复杂性,也为用户提供了极大的灵活性。另外,你也可以使用针对常见硬件类型和路由器平台的OpenWRT的各种预制版本,包括使用博通和Atheros芯片组的各种硬件。OpenWRT的开发者建议用户从现成版本入手,等掌握了一定的基础后,再学习如何推出个性化版本。
OpenWRT最大的优点也恰恰是其最大的缺点,灵活性强但是导致新手入门困难。考虑到该路由是实验室的小伙伴在使用,大多可能不会去折腾这个,所以抛弃了这个PandoraBox固件的使用。
关于Padavan:
也是一个开源的固件,值得一提的是。在家用路由中首屈一指的华硕路由器选用的就是该固件。在使用上,尽量使用图形界面进行交互,该有的功能也应有尽有。所以在这次刷入第三方固件中我们选择的是基于Padavan定制的华硕固件。

刷入固件
刷入方法

在智能路由的固件刷入方面一般有两种方法:uboot或breed刷入、指令刷入。
uboot和breed刷入:其中两者都是用于恢复、备份的一种工具,如果玩过安卓刷机的,他们就像是安卓手机中的Recovery模式一样。breed是uboot的一种升级版,因为刷机都是有风险的,breed相比与uboot将刷机风险进一步降低,成为刷不死神器breed。
指令刷入:则是需要开启SSH,登录到路由器所运行的Linux系统之中进行刷机操作,步骤相对来说复杂一些。
官方出厂是自带uboot的,不幸的是在最新生产的NEWIFI-D1中,已经被官方上锁,也就是说官方限制了第三方固件通过uboot安装。
所以在当前情况下需要刷入第三方固件就有两种办法:一是重新刷入不带锁的uboot或breed,再进行第三方固件刷入;二是直接使用指令刷入第三方固件。
因为官方上锁的原因,导致要想刷入非上锁的uboot或者breed,同样需要通过指令刷入非上锁uboot和breed。所以不如直接通过指令刷入第三方固件。

刷机过程

开启SSH
既然是选用指令进行刷入,因为路由是Linux的操作系统,我们可以用SSH进行连接,所以首先就应该进入路由后台开启SSH(出厂默认设置关闭),下载SSH应用并开启服务即可。
SSH
开启之后我们就可以使用支持SSH的软件进行登录了,常用的软件有PuTTY、Xshell等。这里我用的是个人版的Xshell5,个人版免费而商业版是收费的。
Xshell
这里路由器名称可以按照自己的意愿命名,协议选用SSH,主机192.168.99.1,端口号22。

  • 补充点
    • SSH为Secure Shell的缩写,为建立在应用层基础上的安全协议(默认端口是22)。SSH是目前较可靠,专为远程登录会话和其他网络服务提供安全性的协议。利用SSH协议可以有效防止远程管理过程中的信息泄露问题。
    • 主机为网关IP,也就是我们登录路由器进行后台管理的IP地址。我们一般所能接触到的路由器网关几乎都是192.168.*.*,尤其是以192.168.1.1和192.168.0.1居多,这个网段属于私网IP的。对于NEWIFI-D1路由器官方默认的管理IP地址是192.168.99.1。

第一次通过SSH连接路由器会提示是否保存主机密钥,点击接受并保存之后。需要输入用户名和密码,在官方的固件中

官方固件中,用户名为root,密码为后台管理密码。

登录成功之后如下:
登陆成功

下载Padavan固件
针对Padavan固件网上有很多原版,修改版可供下载。这里用的是一个大神修改的华硕固件。注意路由器型号对应正确。(下载链接

开始刷机
将下载好的第三方固件放入U盘,安全退出后。将U盘插入路由器USB2.0口(黑色),因为为了保证最好的无线WIFI效果,USB3.0会对5GHz频段造成干扰,所以USB3.0在出厂默认设置中被禁用了。
将U盘插入路由器之后,按照以下步骤进行操作:

root@newifi:~# df -h       # 查看当前分区挂载情况,以及个分区容量
  
  
  • 1

挂载路径
其中/mnt/sda4就是我们的挂载分区,在不同的主机上可能显示的会有所差异,我们可以根绝显示的容量来判断挂载分区,例如我的U盘是16GB。
知道了挂载分区之后,分别执行下列命令。

root@newifi:~# cd /mnt/sda4/    # 切换到挂载分区目录
root@newifi:/mnt/sda4# ls       # 列出当前挂载目录下的文件
root@newifi:/mnt/sda4#  mtd write NEWIFI-D1_3.4.3.9-099_20170910-2347.trx firmware        # 使用mtd命令将刚才存在U盘的Padavan固件刷入(建议使用Tab键补全)
  
  
  • 1
  • 2
  • 3

刷入
敲击回车开始执行后,会有[w][e]光标来回闪烁,说明正在执行刷入固件操作,然后等待刷入结束,耗时大约2-3min。
光标停止[w][e]闪烁,并可以重新键入命令时,则说明刷机已完成。然后执行重启命令。

root@newifi:~# reboot
  
  
  • 1

上面的重启命令执行之后,当前所连接的SSH登录会断开,路由器会重启。第一次启动路由会比较慢,重启时间大概2-3分钟,我们可以根据路由器指示灯判断现在路由器的工作状态。

NEWIFI-D1:
- 红灯常亮:路由器故障或无法启动
- 红灯闪烁:无法上网
- 蓝灯常亮:路由器正常工作
- 蓝灯闪烁:路由重启中
- 黄灯常亮:进入uboot或breed模式
- 黄灯闪烁:恢复出厂设置


路由器的配置与使用

第一次登录路由器

刷入固件完成之后,我们需要对路由器进行一些配置。
因为是刚刷机完成的路由,所以是全新的数据、默认的配置。首先需要与路由器保持正常连接,有线和无线均可。

  • 有线:使用网线一端接电脑网卡口,一端接路由器LAN口(两个LAN均可)
  • 无线:使用WiFi进行链接,在无线网络列表中默认情况下通常是以NEWIFI开头或者Pavadan开头。
    • 初始WIFI密码:1234567890

连接路由器成功之后,进入路由器配置管理界面。我们需要在浏览器网址栏输入管理地址(管理地址通常是IP地址或者特定的域名)。针对Padavan的固件进入路由管理界面的方法也有两种:

  • 在网址栏输入my.router即可进入
  • 在网址栏输入路由管理IP地址,如果初次上手不知道管理IP的话。可以参照以下方法:
    • Windows系统中win+R弹出运行窗口,输入cmd启动命令提示符,然后输入ipconfig回车,来查看当前的IP配置情况,其中默认网关便是我们的路由器管理IP地址。例如我当前用WiFi连接的路由器:
      IPconfig图片

Padavan的管理用户名默认是admin,默认密码是admin,登录成功后便是路由器后台管理界面。
后台界面图片

开始配置网络

如果显示界面是英文界面,我们可以切换到中文方便我们使用:

Advance Settings –> Administration –> Select WebUI Language –> 简体中文

外部网络

  • 高级设置 –> 外部网络(WAN) –> 链接类型 –> 动态IP –> 应用本页面设置
    原因:我们的要求是在学校所提供的校园网内使用,所以首先我们需要获取到校园网内部的路由器所分配的IP地址,只有在内部网络中我们才可以在整个校园内实现FTP服务器资源共享。动态IP可以接受校园网所下发的IP。

在动态IP的设置下成功获取到学校路由器所下发的的IP地址之后(172. * . * . * /16),记录下刚才我们获取到的IP地址,然后获取到的IP地址设置到为静态IP
静态IP参数

  • 高级设置 –> 外部网络(WAN) –> 链接类型 –> 静态IP –> 填入上图的参数 –> 应用本界面设置
    原因:为了方便我们实验室的成员访问,所以将IP地址固定下来,我们之后可以直接通过对外的IP地址访问这台服务器。如果依旧设置为动态IP,可能会在下一次重启之后获取到学校路由器下发的新的IP地址,这时我们就不能用原来的IP地址进行访问了。

无线网络

  • 网络地图 –> 无线设置 –> 分别给2.4GHz频段和5GHz频段的无线网络设置好SSID(无线网络名字)和密码就好了。个人建议无线网络设置为英文、下划线等无特殊字符的名字,不建议设置为中文名字,因为在Windows7的系统中会对中文名字的无线网络显示为乱码。
    无线网络

FTP服务器配置

关于FTP服务器的配置,主要有三要求:

  • 设置访问FTP服务器硬盘挂载目录,
  • 局域网用户访问权限,
  • 开启外网用户访问设置

*******************************************************************************************

篇幅太长,整理一下再更新

*******************************************************************************************


发布了31 篇原创文章 · 获赞 43 · 访问量 5256

猜你喜欢

转载自blog.csdn.net/qq_41582910/article/details/86831832