1. 使用环境
路由器:联想新路由 NEWIFI D1
固件:
Padavan-20170910
2. 缘由
写这篇博客的原因主要是给我所在的大学实验室路由器写一个配置参考文档。
因为是作为实验室公共使用,有不少不太懂配置的学弟学妹恐怕操作起来有些困难。而我马上就要走出学校开始工作了,这些设备以后的主要还是他们使用。
其实我所在的实验室在去年已经进购了一台 DELL 的服务器,但是只能放在学校内网中,没有办法托管服务,所以就之前给装了一个 Windows Sever 2012,然后在实验室中闲置,偶尔当作一台普通电脑主机在进行使用。对于这种暴殄天物的行为感到很痛心。
另外实验室还有很多资源需要存储的,比如说一些视频教程、专业软件、操作系统镜像、电路图、原理图、代码等数据。为了更好的共享资源,很有必要搭建一个 FTP 服务器。刚才说到暴殄天物,然而要是用上面说的那个 DELL 服务器用来搭建一个简单的 FTP 服务器,那又岂不是大材小用呢?
所以不如选用低成本的智能路由器搭建一个简单的 FTP 服务器吧。
3. 预期功能
根据现有的需求,预期需要实现三个功能:
- FTP 文件服务器,实现文件共享;
- 打印机服务,实现打印机共享;
- 路由直接接入校园网,方便实验室人员直接访问校园内网。
3.1 FTP 服务器
3.1.1 关于 FTP
维基百科的解释是:文件传输协议(英文:File Transfer Protocol
,缩写:FTP
)是用于在网络上进行文件传输的一套标准协议,使用客户/服务器模式。它属于网络传输协议的应用层。
百度百科的解释是:FTP
是File Transfer Protocol
(文件传输协议)。用于 Internet 上的控制文件的双向传输。同时,它也是一个应用程序(Application)。基于不同的操作系统有不同的 FTP 应用程序,而所有这些应用程序都遵守同一种协议以传输文件。在 FTP 的使用当中,用户经常遇到两个概念:“下载”(Download)和"上传"(Upload)。“下载"文件就是从远程主机拷贝文件至自己的计算机上;“上传"文件就是将文件从自己的计算机中拷贝至远程主机上。用 Internet 语言来说,用户可通过客户机程序向(从)远程主机上传(下载)文件。
3.1.2 实验室服务器需要实现的具体功能
文件资源共享
- 在该路由器提供的局域网内(访问内网 IP-
192.168.*.*/24
),即在实验室内可以访问存储资源; - 在路由器所在的校园局域网内(访问
172.*.*.*/16
),即在整个校园内,只要访问设备接入校园网均可实现访问; - 对于一些资源,如视频文件实现网络串流,直接在线播放视频教程,无需下载存储的视频资源;
- 允许匿名登录服务器,并查看资源,但不能更改或删除相关数据。仅有 admin 用户或 root 用户可以进行管理;
- 利用 samba 进行用户管理,允许存在的用户访问自己的私有的文件或目录。
打印机服务共享
- 将打印机接入路由器实现打印机共享;
- 允许所在路由器所提供的局域网内共享,而不允许校园网所在局域网内的用户访问。
接入校园网
- 路由器作为客户端接入校园网,认证后可供该路由器所提供局域网内所有设备免认证上网。
4. 准备工作
4.1 硬盘
4.1.1 硬盘分区
新购买的硬盘是未进行分区的,我们可以按照自己的需求来进行分区,除了分区容量以外,另外一些分区参数也应该值得注意,如分区表类型、文件系统、对齐方式等等。
开始分区
操作环境:Windows10 RS2、DiskGenius(分区精灵)
将硬盘放入硬盘盒上电后,接入到电脑 USB 口。打开刚才的下载的 DiskGenius 软件进行分区工作。如果正常的话,硬盘列表中会显示除你硬盘以外另外一块增加的硬盘,具体的分区步骤以及分区参数可以参照下图。
等待格式化完成后,应该是如下的状态:
4.1.2 硬盘分区注意事项
为什么分区类型选用 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 分区的文件系统。
4.2 路由器
4.2.1 路由器的选购
智能路由器的个人理解
之前对智能路由器的关注度不高,在路由选购方面也主要是看够用、稳定这两个条件即可。
我首先接触到的是,自从极路由发布第一代第二代智能路由,并成一代路由刷机神器之后,我开始对智能路由产生兴趣。
智能路由的理解,我觉得可以类比以前普通手机和智能手机吧。现在的智能手机除了满足普通手机的通话、短信功能以外,还统一了操作平台(Android、iOS、WindowsPhone),应用软件的通用性大大的拓展了智能手机的实用性、可玩性。所以智能路由器亦是如此,所统一的平台是嵌入式的 Linux 操作系统。虽然几乎所有智能路由器都是基于 Linux 定制,但是不同的系统也会存在较大的差异,除了官方自己定制的系统以外,第三方也有很多固件可供选择,如OpenWRT
、DD-WRT
、Tomato
等等第三方开源固件。所以我们可以根据自己的功能需求,刷入第三方固件来实现。从而可以实现例如 ADBLOCK 广告屏蔽、远程下载、私人云、aria2 下载等功能。
所以为满足我们功能的拓展,通过第三方固件的刷入,所以应该选择主流的路由器(主流包括主流的路由型号、芯片型号如MT7620\MT7621
这些,因为固件对芯片和 ROM 这些硬件还是挺挑的)。
路由参数
最终选购的路由器是 NEWIFI-D1,这是百度与联想合作的第二代路由。下面是关于 NEWIFI-D1 的一些参数(芯片为 MT7621)
选购原因
- 预算:这款路由刚推出时售价 299,现在 220 左右可以买到;
- 性能:芯片相比于上一代的 MT7620 升级到 MT7621,性能直逼千元级的华硕、网件等路由;
- 接口:实验室位置固定的原因,访问该路由多是使用无线网络,所以网线接口显得不太重要,一共三个接口都是千兆 1Gbps 的。USB 口有两个,因为需要接入硬盘 USB、还有一个打印机,一共需要两个 USB 接口(其中 USB3.0 口默认被禁用)。所以无需使用 USB HUB 进行拓展接口,相比于多数单 USB 口的路由更具有优势。
- 资源:第三方固件适配多、迅速。
4.2.2 刷入第三方固件
购买的 NEWIFI-D1 路由器已经内置了官方定制的 xCloudOS(小云系统),是基于 OpenWRT 深度定制的。但是自从小云 OS3.0 之后便锁住了 OpenWRT 所推崇的极客模式,使得该系统更加面向普通用户,而少了很多复杂的操作,也少了很多私人定制。所以为了满足更多的功能,可以选择刷入第三方固件。
固件的选择
针对这个路由器,个人推荐第三方开源固件有两个,分别是基于 OpenWRT 的PandoraBox
(潘多拉)和Padavan
(老毛子)固件。
关于 OpenWRT
部署复杂、灵活性高。
OpenWRT 路由器固件版本较为成熟,用户可以针对各自的硬件配置下载相对应的程序包,并使用相关工具对硬件进行修改。这样虽然加大了部署过程的复杂性,也为用户提供了极大的灵活性。另外,你也可以使用针对常见硬件类型和路由器平台的 OpenWRT 的各种预制版本,包括使用博通和 Atheros 芯片组的各种硬件。OpenWRT 的开发者建议用户从现成版本入手,等掌握了一定的基础后,再学习如何推出个性化版本。
OpenWRT 最大的优点也恰恰是其最大的缺点,灵活性强但是导致新手入门困难。考虑到该路由是实验室的小伙伴在使用,大多可能不会有兴趣去折腾这个,所以抛弃了这个 PandoraBox 固件的使用。
关于 Padavan
是在华硕官方固件的基础上修改而来的,但仅支持联发科 MTK 762x 系列 CPU。在使用上,尽量使用图形界面进行交互,该有的功能也应有尽有。
所以在这次刷入第三方固件中我们选择的是基于华硕官方固件的修改而来的 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 的软件进行登录了,常用的软件有 PuTTY、Xshell 等。这里我用的是个人版的 Xshell5,个人版免费而商业版是收费的。
这里路由器连接名称可以按照自己的意愿命名,协议选用 SSH,主机 192.168.99.1,端口号 22。
Tips:
- SSH 为
Secure Shell
的缩写,为建立在应用层基础上的安全协议(默认端口是 22)。SSH 是目前较可靠,专为远程登录会话和其他网络服务提供安全性的协议。利用 SSH 协议可以有效防止远程管理过程中的信息泄露问题。- 主机为网关 IP,也就是我们登录路由器进行后台管理的 IP 地址。我们一般所能接触到的路由器网关几乎都是
192.168.*.*/24
,尤其是以 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 # 查看当前分区挂载情况,以及个分区容量
其中/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键补全)
敲击回车开始执行后,会有w
光标来回闪烁,说明正在执行刷入固件操作,然后等待刷入结束,耗时大约 2-3min。
光标停止w
闪烁,并可以重新键入命令时,则说明刷机已完成。然后执行重启命令。
root@newifi:~# reboot
上面的重启命令执行之后,当前所连接的 SSH 登录会断开,路由器会重启。第一次启动路由会比较慢,重启时间大概 2-3 分钟,我们可以根据路由器指示灯判断现在路由器的工作状态。
NEWIFI-D1 状态灯:
- 红灯常亮:路由器故障或无法启动
- 红灯闪烁:无法上网
- 蓝灯常亮:路由器正常工作
- 蓝灯闪烁:路由重启中
- 黄灯常亮:进入 uboot 或 breed 模式
- 黄灯闪烁:恢复出厂设置
5. 路由器配置与使用
5.1 第一次登录路由器
刷入固件完成之后,我们需要对路由器进行一些配置。
因为是刚刷机完成的路由,所以是全新的数据、默认的配置。首先需要与路由器保持正常连接,有线和无线均可。
- 有线:使用网线一端接电脑网卡口,一端接路由器 LAN 口(两个 LAN 均可)
- 无线:使用 WiFi 进行链接,在无线网络列表中默认情况下通常是以 NEWIFI 开头或者 Pavadan 开头。
初始 WIFI 密码:1234567890
连接路由器成功之后,进入路由器配置管理界面。我们需要在浏览器网址栏输入管理地址(管理地址通常是 IP 地址或者特定的域名)。针对 Padavan 的固件进入路由管理界面的方法也有两种:
在浏览器网址栏输入 my.router 即可进入;
在网址栏输入路由管理 IP 地址,如果初次上手不知道管理 IP 的话。可以参照以下方法
Windows 系统中 win+R 弹出运行窗口,输入 cmd 启动命令提示符,然后输入 ipconfig 回车,来查看当前的 IP 配置情况,其中默认网关便是我们的路由器管理 IP 地址。例如我当前用 WiFi 连接的路由器:
Padavan 的管理用户名默认是 admin,默认密码是 admin,登录成功后便是路由器后台管理界面。
5.2 配置网络
如果显示界面是英文界面,我们可以切换到中文方便我们使用:
Advance Settings > Administration > Select WebUI Language > 简体中文
5.2.1 外部网络 WAN
高级设置 > 外部网络(WAN) > 链接类型 > 动态 IP > 应用本页面设置
**原因:**我们的要求是在学校所提供的校园网内使用,所以首先我们需要获取到校园网内部的路由器所分配的 IP 地址,只有在内部网络中我们才可以在整个校园内实现 FTP 服务器资源共享。动态 IP(DHCP)可以接受校园网所下发的 IP。
在动态 IP 的设置下成功获取到学校路由器所下发的的 IP 地址之后(172.19.*.*/16
),记录下刚才我们获取到的 IP 地址,然后获取到的 IP 地址设置到为静态 IP
高级设置 > 外部网络(WAN)> 链接类型 > 静态 IP > 填入上图的参数 > 应用本界面设置
**原因:**为了方便我们实验室的成员访问,所以将 IP 地址固定下来,我们之后可以直接通过对外的 IP 地址访问这台服务器。如果依旧设置为动态 IP,可能会在下一次重启之后获取到学校路由器下发的新的 IP 地址,这时我们就不能用原来的 IP 地址进行访问了。
5.2.2 无线网络 WLAN
网络地图 > 无线设置 > 设置 2.4G 和 5G 频段 SSID
个人建议无线网络 SSID 设置为英文、下划线等无特殊字符的名字,不建议设置为中文名字,因为在 Windows7 的系统中会对中文名字的无线网络显示为乱码。
5.3 FTP 服务器配置
关于 FTP 服务器的配置,主要有三要求:
- 设置访问 FTP 服务器硬盘挂载目录;
- 局域网用户访问权限;
- 开启外网用户访问设置
然后呢?下文呢?
因为在搭好的 FTP 服务器使用过程中发现,硬盘在第三方固件下可能会出现未能识别的错误,折腾一天也无法解决。
所以重新刷回了 NEWIFI 官方的老的路由系统,也是基本能实现功能。
会在后续的文章中说及。
Love & Peace