小记:搬家

从原住民到原住民。

如果你是从 RSS 来的,这里说的搬家不是肉身搬家,是服务器迁移啦。

之前在一篇文章的评论里青箬笠同学吐槽过访问我的 blog 的速度太慢,其实我也知道,但苦于找不到理想替代服务商所以一直没搬。网上讨论得热门的 DigitalOcean 和 Vultr 我都用过,感觉速度上比 Linode 还不如。仅就访问速度来看最理想的服务器当然还是阿里云,而且其实我也有一台阿里云主机是当时打折时入手的(事后证明来之易则弃之不惜),但是对备案什么的实在抵触,何况大多数文章已经会搬到豆瓣日记就没必要把鸡蛋都丢在国内了。

前两天在网上冲浪的时候突然逛到了这个帖子,才知道原来 AWS 也有做入门级市场,那还犹豫什么?于是马上开了一台。我选的是美国西海岸的主机,至于为什么不选更近的东京新加坡,只是感觉服务器这东西就应该搭在那里罢了。

AWS 直到现在还没有支持 Ubuntu 18.04,不过选了 16.04 的用户在连上主机的时候会有提示可以升级,五分钟左右就可以搞定。一开始还是遇到了一个比较麻烦的问题—AWS 默认的用户叫 ubuntu,对于一个强迫症兼不折腾会死星人必须要换成自己的名字。于是重新创建 sudo 用户,但是用 ssh-copy-id 的时候提示 Permission Denied,找了半天才发现原来 AWS 已经把密码登录关闭了。解决了这个问题后就是和 Linode 一样的设置方式啦。

搭建 WordPress 已经可以在网上找到无数的脚本了,但我还是更倾向于自己一步一步慢慢来。首先还是按照 Linode 上的这篇搭建好 LAMP 服务,之后再参照这篇设置好 WordPress。初学者在这个过程中碰到的最大的问题大概就是 Apache2 的配置问题,如果遇到问题可以参考我的配置。我是把根域名重定向到了 www 下,所以可以根据自己需要将第二个 block 删去,之后只要把目录、域名、email 改成自己的就行了。成功访问后建议先装上证书再开始配置,毕竟在配置过程中要输入数据库的密码。

之后要把自己在 WordPress 上的文章、评论、多媒体等搬过去,我用的是 UpdraftPlus 这个插件,备份的时候把所有的勾都点上,上传到 Google Drive,然后在新的服务器站点重新装上这个插件,授权访问 Google Drive 再恢复就可以了,你会发现所有的数据都原封不动地在原地,就像没有换过服务器一样。

例行做完这一切就完成站点搭建了,但还剩下一个问题—怎么能确保自己的服务器定时备份。Linode 上已经原生支持定时备份,非常好用,但 AWS 上只有 snapshot 而不原生支持定时备份。难道我要每天登上 AWS 后台点击一下吗?显然太愚蠢了。只要有一台服务器就有无限可能。于是再次借助网上冲浪我找到了完美的解决方案。

我们可以参照这篇文章来完成自动创建新的 snapshot 同时定时删除旧的,创建新的好理解,但为什么要删除旧的呢?因为亚马逊的每个 snapshot 都要花钱的,虽然是按照容量计费,同时亚马逊会对每个 snapshot 只做增量备份,但积少成多呀。既然都自己搭建服务器了当然要找一个一劳永逸的方法啦(虽然基本上没过多久就又开始折腾了)。

脚本里有一点需要改进的地方,我的服务器在 crontab 运行时无法识别 aws 这条命令,所以要把第 12、25、29 行的 aws lightsail 改成 /usr/local/bin/aws lightsail1。之后设置成每天运行就可以啦。

和 Linode 相比 Lightsail 没有 Swap Partition,所以同样是 1G 内存 AWS 会更加吃力,不过我也不需要跑很多程序,同时访问速度 AWS 还是相当喜人的,实测在电信下 scp 可以到 5MB/s 的速度,再也不愁访问速度啦。

折腾完这些就是真正完成服务器的搭建了,同为 blog 圈的朋友无须赘述我们对个人 blog 的执着,只是觉得这一步步下来的确像是一种仪式感十足的祭奠。我也会在 RSS 上订阅许多个人 blog,然后在发现许久不更新后感到惋惜,像是看到一座座陌生的墓碑一样,回看旧文如灵魂对读者的唠叨。既然总要相忘于江湖,这执着又能称得上浪漫吗?

外人大概很难懂,所以是外人。

  1. 可以用 which aws 来获取路径。

一个陌生男人的来信

「您好!我是今天为您服务的 Apple 人员,您还有印象吗?不知道您的问题现在是否得到解决了……」

一、

「您好!我是今天为您服务的 Apple 人员,您还有印象吗?不知道您的问题现在是否得到解决了……」

这是一封再普通不过的回访邮件了,蹊跷的是,这封邮件来自一个私人邮箱。我的确有印象,那天早上我给苹果打了个客服电话,预约 Genius Bar。打过苹果客服电话的人应该知道咨询客服的流程──在苹果官网填写姓名、邮箱、电话号码,之后两分钟内会有苹果的客服打电话给你(奇怪的是移动总是提醒我这是骚扰电话,这么大的公司的客服电话难道没有给移动打过招呼吗)。出于对苹果在隐私保护方面的信赖,在提供私人信息时我的戒心并不重,所以那天这封邮件发过来的时候我的确有些震惊。此前我有过不止一次咨询客服的经历,每次预约时我都需要重新提供个人信息。我还记得在第一次预约时,客服说看不到我的电话号码。这首先是让我有些疑惑──既然我已经在官网上提供了这些信息了,为何不直接从数据库中调用?但我那时也没仔细想,觉得这不过是苹果出于隐私保护的角度不给客服人员获取信息的权限。既然电话号码不得而知,那邮箱自然也该相同才对(那我提供邮箱的作用难道只是发送给我后续问卷调查吗)。

而那封邮件让我意识到并不如此。

这在大多数人看来并不是多大的一件事,客服不过是拿到邮箱,这又有什么关系?何况我的邮箱地址在我的博客也是公开的,但我最大的疑虑并不在此。苹果在隐私保护方面做出的承诺几乎是全球大型科技公司中的异类──设备的解锁密码存在本地、Siri 的唤醒依靠本地的计算、Safari 的阻止跨站跟踪…… 这当然会让很多科技爱好者对这家全球市值最高的企业产生好感。但既然如此,它理应做得更好,至少只有在我明确授权的情况下才能将我的信息交付给客服人员,或者保证我的信息不被滥用,而不是让我收到这封邮件。

在邮件的后面,陌生男人希望我在问卷中填写好评,我一方面考虑到他和我是同龄人不忍拒绝,另一方面我又对这种行为感到不安。我相信在公司的规章制度里一定会提到所有跟进都要通过官方渠道──不论是邮箱还是电话──来完成,只是执行层面上总会有各种各样的问题。既然如此,为何在系统设计时不从根本上杜绝这一行为──在客服那边只能看到姓氏,所有预约信息在网站上提供,客服只用和客户确认──而不是无效地追问是「宏」还是「红」呢?

二、

在扎克伯格的道歉信里我注意到的是这一句:

I’ve been working to understand exactly what happened and how to make sure this doesn’t happen again.

在一家如 Facebook 这样体量的公司里,最高决策层所做的就是在大方向上的决定──我们是否要做成一个平台而不仅仅是广告公司(Facebook Platform)、时间线是应该好友优先还是机构优先、是否要在对方变成竞争对手前将其收购(Instagram)…… 但相比于这些,企业制度建设才是更为重要的事情。在推出 Facebook Platform 的时候为何没人提出数据的属性就决定了它是倾向于流通的?将用户甚至用户的朋友的数据拱手交出后是否有能力控制接收方一定会遵守协议执行?如果开发者破产了他们会对数据如何处理?仅仅将负责人告上法庭就足够了吗?用户失去的隐私如何解决?这是否会反过来侵蚀公司品牌公信力?

我们当然可以争辩说这些信息都是用户自愿提供的,但这些自愿是真正的逐字看完隐私协议后可选择的自愿,还是找到 checkbox 直接点的自愿呢?

Facebook 本该有更好的制度建设,在开发者获取用户数据的时候只获取用户授权给出的数据,而不是 A 用户可以授权开发者获取朋友 B 的数据(这条听起来简直太魔幻了,设想你的微信好友可以让某些不知名应用读到你的朋友圈)。像 iPhone 那样在需要获取部分权限时由用户手动点击允许而不是将敏感和不敏感的打包送走(这里的敏感不敏感是一个相对概念,比如有些人认为生日不是敏感而真实姓名是,有些人相反)。这当然不是说该彻底阻绝开发者和用户的渠道,而是至少让这条渠道不像洪水那样无法掌控。没有制度并不是最好的制度,那只是最不负责任的制度罢了。

是的,从法律上来看 Facebook 其实没有错,但这不是对与错的问题。

三、

在我去苹果店取回电脑前,一个客服打电话给我说他需要做一轮测试,但是需要用到我的固件菜单密码(与开机密码不同,这个密码可以防止不知道开机密码的人重装系统)。我很惊讶的是一个测试人员至少对技术有一定的敏感度,知道密码是非常重要的隐私,却打电话向客户索要,而且听起来的语气并无感觉不妥,这是对隐私不屑到什么程度?

但我突然又意识到另一个问题:在上层设计人员无论多么处心积虑地从大方向建设完善的制度时,又有多少下面的人对这一努力熟视无睹。这甚至不是他们故意要违反公司的规定,只是觉得这并没有什么大不了的而已。苹果的隐私保护如果真的是企业文化中的一个重要组成部分,就不该出现向客户索要密码这一行为──这可是和 FBI 对抗坚决不开后门的公司啊。

正如一个政权的崩溃大多不是因为外部侵略,一家企业文化的衰亡也是因为公司内部的犬儒。如果不在制度上阻止漠视规程的蔓延,到了真正发生事故的时候,造成的损失是多年积淀下的惩罚。千里之堤,毁于蚁穴。在明面上加固的同时,是否也该清看底部的隐患?罗马不是一天建成的,堤坝也不是一天被冲垮的。Facebook 是百亿美金市值的流失,那其他的公司呢?

在可宣传方面的隐私保护做到的同时,是否在阴暗的角落,依然是自由的捍卫者──而不是把这当成宣传词而已?

我不知道,尤其是看了苹果在中国的种种举动,只会让人更忧伤。


延伸阅读:苹果官方技术顾问非法窃取用户个人信息和资料并敲诈勒索的事件