NIC is a critical point

一个网络设备好不好,就拿大文件去测试它。

LinkSys WRT54GL 路由器就有这样的问题:从 WAN 端口下载若干GB 大小的文件,中途就会断开,路由器也不工作了,它的 web 管理界面也访问不了,非得重启才能恢复。

今天发现我的网络硬盘 WD MyBookWorld 2TB 也有此类问题:在拷贝两个20多GB大小的文件过程中,中途也被断开,再也访问不了 MyBookWorld,重启后恢复。

以前我以为这些家用级的网络设备在大流量压力下会死机(CPU 超载),今天的结论是 CPU 或许还有余力,但网卡超载了。因为,在访问不了 MyBookWorld 时,我拔出了一个 USB 设备(我用 MyBookWorld 的USB 口在给手机充电),触发了 USB device unplug 的事件。通常我会收到一个邮件通知,但这次因为网卡停止响应,CPU 仍在工作,记录下了这个事件,延迟到重启后网卡恢复正常才发出邮件。

网卡很关键,以后得多关注这方面的指标。我现在热衷于选用商业级的设备,即使是为家用。

Play with WD MybookWorld

先说一下我所了解的此网络硬盘的习性:

  • 首先,它在创建用户时,并不创建同名组。
  • 其次,创建用户时,会问及是否创建 User Private Share。User Private Share 是 samba 用的一个名词,我觉得很难理解:既然是 Private,何来 Share?就叫 User Home Directory 更好一些。
  • 再次,删除用户时, User Private Share 并不随之删除,在 Folder Shares 界面里才能删除它。我试过以 root 身份执行 rm 都说“device busy”。

什么情况下需要共享?最初我想按人分,一类是平级共享,比如同一组织内两个人共事,他们可以相互访问对方的文件;另一类是分级共享,比如上级可以访问下级的文件,而反之不能。后来情况变复杂了:甲要访问乙的部分文件,乙也要访问甲的部分文件,同时甲又给丙共享另一部分文件……所以最后我按文件类别分,某类文件要给哪几个人权限,思路就很清楚了。

Mybookworld is not safe

我的 Mybookworld samba service 建有若干用户,各自的目录是凭各自的密码访问。昨天发现,Mybookworld 竟然不再问密码,任由我畅行在各个用户目录。Mybookworld 有一个 ip address 和一个自称的 device name,还有一个路由器指派它的 device name。凭前二者访问仍然正常,只是凭路由器指派的 device name 访问时密码失效。

我刚开始还以为我上次误点了“记住密码”,运行

net use * /d

Mybookworld 还是任由我畅通无阻。奇了怪了,难道 windows 有其他我不知道的地方记住了访问密码?转念一想,不是 windows 的原因,因为我不可能多次为多个用户误点“记住密码”。

于是重启 Mybookworld,问题依旧。正好有个 firmware 更新,更新后问题还是依旧。没辙了!

原本准备在 internet 上开放对 Mybookworld 的 ssh 访问,这下打消主意 —— Mybookworld 不够安全,samba 会出这等问题,保不准 ssh 也会出问题。

别说我是事后诸葛亮,刚拿到 Mybookworld 时,我看了一下它的配置,就觉得它很容易出现安全漏洞。举个例子:用 Mybookworld 自带的 web interface 创建的用户并不是 Linux 用户,这些用户属组全是 root:jewab,使用 root 就是一个非常不好的 bad practice,况且权限控制依赖于 Mybookworld 自带的程序,一点也没用到 Linux 强大的权限控制。开发 Mybookworld 的人水平再高,难道能高到抛弃一套完美的机制自搞一套?

再举个例子,启用 Mybookworld nfs 服务时可以指定 IP Allowed,但是 /etc/exports 却是这么写的

/nfs/myname *(rw,all_squash,sync,insecure,anonuid=65534,anongid=65534)

我非常不理解,nfs 服务明明可以限定 IP,然而 Mybookworld 又不用它,又在自搞一套。可它自搞的一套非常地不稳定,经常发生 allow list 上的用户不许访问。我不知道会不会有 deny list 上的用户反而被允许,那就更糟了。

Administrator name of Mybookworld to downloader area

如果要登录 Mybookworld downloader,在 Administrator name 那一栏里输入的竟然是 “downloader”。我试了好多次才试正确,每次输错后我气馁地认为 Mybookworld downloader 被 disable 了。我没读 WD 的说明书,这年头谁有耐心看说明书?再说像 network drive 这种东西本来就应该很直观地让人使用,而 Mybookworld 没有做到。

首先,用 admin 作用户名可以进入 network storage manager 和 copy manager,而进 downloader 非得用 downloader,没有统一规范,我不喜欢;

其次,downloader 的密码是用 admin 进入 network storage manager 进行修改的,修改完了还要退出 network storage manager 再进入 downloader,烦不烦?

最后,内置的 admin 和 downloader 用户名不能被修改或删除,给暴力破解提供了方便,安全堪忧。

Caveats of firmware upgrade of Mybookworld 1TB

买了 Mybookworld 2TB,按建议首先做了 firmware upgrade to newest version。

顺便把原来的 Mybookworld 1TB 也 upgrade firmware,没注意到 Mybookworld 1TB upgrade 以后有没有自启。接着我发现以下反常现象:

  • 原先破解后的 sshd 也失效了,但能按老办法重新破解一遍。
  • 原先注释了 moinet start script,被取消了注释,只好重新注释一遍。
  • 原先修改了 root 的密码被擦除了,幸好 root 没有密码是无法登录的,其他用户的密码还在,赶紧再次修改 root 密码。提示说密码只能 5-8位,其实可以超过8位,把密码弄长一些吧,保险起见。
  • 局域网内其他机子无法凭 netbios name 访问 Mybookworld 1TB,还是手动重启一下 Mybookworld 1TB,以期它能赢得主控浏览服务器选举。

My review of Mybookworld 2TB

尽管我很清楚数据备份的重要性,尽管我脑袋里有数据备份的方案,但数据灾难还是时有发生,因为这么多年来缺乏一个数据存放的终极地点,数据备份方案过于复杂,执行不便,落实不力。

我所有可以动用的存储介质容量加起来估计会超过2TB,足够把我所有的数据备份好几遍,但我还是狠了狠心,购入了 WD My Book World Edition 2TB。

打开包装,首先发现 WD My Book World Edition 2TB 不带 USB 接口,无法用 USB 以外置硬盘方式与主机相连。网络硬盘的存取速率太慢,我原想要一个与 Ethernet 连接同时使用的 USB 连接。我嫌麻烦,也不打算因为不带 USB 接口就去退货,期待它的网络存取速率能有改进。开机后一试,果然,相对我公司一年多购入的 WD My Book World Edition 1TB,现在的 2TB 网络存取速率快了近一倍,但也只有可怜的 5.8 MB/s。

远程共享根本用不着 Mionet 的服务,所以我一来就禁用了它,以免它占用 My Book World 本来就不强大的 CPU。然后我逛了逛 Web 管理界面,感觉不错,比 1TB 多了很多功能。我原本设计了一套基于命令行管理文件的方案,补足 1TB Web 管理界面不足之处,现在看来要调整一下,充分利用 2TB 自带的 Web 管理界面——直观的就是美的。

还没来得及仔细试用 WD My Book World Edition 2TB,不过第一印象还不错(比预期的好),我估计它的 CPU 要优于 1TB 的,内存也会更大一些(128M?)。

How slow is MyBookWorld

以前只是觉得 MyBookWorld 慢,但也没关心究竟有多慢,今天实测了一下,单个大文件读速率 4.9 MB/s,写速率 3.8 MB/s。这么糟糕的成绩,大概得归咎于 CPU 能力太差。我测的是 MyBookWorld I 版,不知带 Raid 双硬盘配置的 MyBookWorld II 是否使用了更好的芯片,如果同种芯片,II 版不会有比 I 版更好的成绩。

WD My Book World Network Hard Drive Is Not A Server

When I bought the WD My Book World Network Hard Drive, I was attracted by its giga network interface. I though it could act as a file server with fast data access rate. One of my office collabration program requires fast data access rate to improve the performance. However, as my test carried out, My Book World Ed.1 only achieved 45Mbps data transfer rate, which means giga network interface makes no difference to 100 mega network interface on this device.

To this point, I am very dissapointed at My Book World. However, if I just regard My Book World as an additional storage device or a backup disk, rather than giving it a tough data read/write job, it works fine. It is designed to be a storage, not a server. The only fault of the design is putting giga network interface on My Book World, or the designers should put a fast access disk into it to catch up with giga networking.

Hack WD My Book World Network Hard Drive

昨天,我在体验My Book World时建议不要安装WD Anywhere Access;今天,我更有理由相信这一点。

Martin Hinner是个强人,在他的网站上,我找到了WD官方永远也不会公布的资料,以及改装My Book World详细的过程。WD Anywhere Access的存取机理是:在你能Anywhere Access之前,MioNet早就能Access你的My Book World,因为MioNet的程序内嵌在My Book World并自启动,不管你愿不愿意。可怕不?MioNet为了卖Premium帐户,给自己留了这么大个后门。数据的安全性寄托在MioNet手上,而且寄托在MioNet的技术能否经受安全性考验,实在不是什么好事。

所以,不光WD Anywhere Access装不得,Martin建议从My Book World里屏蔽MioNet自启动,由此还能获得一个额外的好处:减轻了My Book World CPU的负担。MioNet内嵌的是Java程序,很大程度上拖慢了系统。

当然,为了屏蔽掉MioNet,你得相信Martin Hinner是个好人。我相信他是。

WD My Book World Network Hard Drive User Experience

昨天没买到WD My Book World Network Hard Drive,今天就买到了。赶紧试用了一下,我的体验是:

即插即用,根本无须安装。购买之前我读了一些评论,有人提到要先用USB把My Book World跟电脑连接,安装很方便(当然也有人说搞了半天才装上),如今看来纯属误导。其实只要用RJ45网线(已含,但不知是cat 5e还是cat 6,我万分希望是cat 6)把My Book World联入局域网,接通电源,开机,等待3分钟左右,就能在局域网内访问到My Book World。整个过程不会超过5分钟,含拆包装、等待时间。

My Book World Edition 1只适合于Home and Small Office,Edition 2估计也强大不到哪里去。My Book World提供的用户管理很简单,管理员无法批量创建用户,用户无法自助服务,权限无法分组。既然这样,干脆就只留两个用户:admin和everyone。

My Book World的随机光盘并不是必需的,连接成功后,可以访问 http://MyBookWorld/ 完成所有设置。MyBookWorld就是My Book World初始的Device Name,初始管理员为admin,密码为123456。My Book World的用户手册上说,用随机碟安装软件后再设置,仅建议高级用户使用网页界面进行设置。我认为在网页界面里设置反而简单,随机碟用起来更不方便。如果不介意everyone访问一个PUBLIC文件夹,就不需要设置。我为了全面了解My Book World,还是试装了随机碟上的两个软件:WD Anywhere Access和WD Anywhere Backup。

WD Anywhere Access:安装过程中直接修改My Book World的Device Name和管理员的用户名、密码,之后就无法通过WD Anywhere Access更改My Book World的Device Name和管理员、用户名。因此,还不如在My Book World网页界面里设置。WD Anywhere Access要求有MioNet帐户才能使用,买一个My Book World,送5张WD Anywhere Access licences,但MioNet帐号仅是Basic Type,可以试用30天Premium Type。其实,MioNet帐号用处不大:得安装WD Anywhere Access,这就够烦人的,根本谈不上随时随地使用远程文件的方便性;不安装WD Anywhere Access的话,也可以,不过通过网页访问MioNet,还是得在浏览器里安装Java插件。我试了一下,该Java插件在firefox下还死给你看。如果要远程访问文件,比MioNet更好的方案有的是,如FTP、VPN,而且不用支付月费、年费。总之,WD Anywhere Access不装也罢。

WD Anywhere Backup:这个软件倒有可取之处,设置简单和自动备份,恢复也挺方便。在备份软件领域,我还没有遇到一款好的开源软件,既然My Book World赠送WD Anywhere Backup,就用着吧。有人提到My Book World赠送的WD Anywhere Backup只是30天共享版,其实,他没有看到My Book™ World Edition™ Quick Install Guide的封底贴有WD Anywhere Backup Product Key。

My Book World让我最大的不爽之处是,不提供FTP服务,也没有WebFTP界面。估计是跟MioNet串通好了,就算一般用户不会用FTP,WebFTP肯定是会用的,有了WebFTP,还要MioNet干什么?但我想应该可以在My Book World里hack一个FTP服务,那又将是个课题。