July 2012 Archives

SHA512-crypt

| 9 Comments | No TrackBacks

早期的 FreeBSD 版本中采用的是 md5crypt,其作者 Poul Henning-Kamp 最近发表了一篇文章:Md5crypt Password scrambler is no longer considered safe by author,所以 FreeBSD 预设的密码格式也就随之改成了 SHA512 crypt。

不过其实这个意义也不是太大,因为这个版本(5000轮,16位salt=96bit)虽然慢的还算可以,可是计算机的速度还是在持续增长的。

前段时间找时间把 FreeBSDChina.org 的密码格式也换成 SHA512-crypt 了。目前采取的方法是用户登录的时候,如果验证通过,则用用户明文口令产生新的 SHA512-crypt 并刷回数据库(因为原先保存的是 hash 值)。这样,几个月后还可以把不活跃用户挑选出来一起砍掉。

今天看到有人问 GMail 为什么会显示一个黄色的三角符号(浏览器在 https 页面包含非 https 内容时的警告)。检查一下发现我的居然也是,心想 Google 大概应该不会干这么缺心眼的事,于是打开 Developer tools 检查,发现这个"不安全"的内容来自于 AdBlock,具体来说是插件在阻止广告时插入到页面中的内容。

AdBlock未必真的会做损害安全的事情,不过,这个让我想起之前在 Facebook 上看到的奇怪的广告,最后发现是安装的一个应用导致的,这个后果确实还是相当可怕的,除了浏览器本身之外,安装的插件也会影响安全,而这些东西做审计还是相当困难的,尤其是在 Chrome 中的自动更新特性,如果 Chrome Market 没有认真审核代码的话,还是相当危险的。

nginx的https压缩

| No Comments | No TrackBacks

官方版本的 nginx 在 https 的时候是不对流量做压缩的,具体原因在这里这里 有解释,它会增加半兆的连接内存开销。

启用 https 压缩除了需要 nginx 本身做少量修改(例如去掉 if[n]def SSL_OP_NO_COMPRESSION 部分的语句块)之外,还需要 OpenSSL 本身编译了加密支持。FreeBSD ports 的 security/openssl 预设启用了 ZLIB 扩展,但基本系统目前没有(由于 zlib 是很大的一片代码,也许需要做了 Capsicum 处理之后才可以放进来用)。

启用 https 压缩通常并不会显著地减少带宽占用,因为多数情况下浏览器会与服务器协商将内容以 deflate 方式在放进 https 流之前做压缩处理。不过,启用压缩可以进一步减少 TLS 协议本身使用对称加密时可能发生的信息泄漏风险,其代价是引入 zlib 可能引入更多漏洞,以及每个连接增加大约 0.5MB 的内存占用。

多年不用 Mac 了,这没有 PgUp 和 PgDn 的死毛病还是没改。我觉得我真是没法接受没有 Page Up 和 Page Down 的键盘的。

当然,设计者关上一道窗的同时,往往又会在另外的地方开一扇门。Mac 上可以用组合键来模拟这些功能:

  • Page Up = Fn + Up
  • Page Down = Fn + Down

另外,由于 Terminal 对这两个键有另外的解释,需要在 Preferences 中重新定义它们的映射:

  • Page Up = \033[5~
  • Page Down = \033[6~

然后就虽不爽,但可用了。

祸不单行。继 老婆 笔记本坏掉之后,我的也在周一突然坏掉了。因为已经过保,找来 Dell 的维修手册做了初步诊断之后认为是主板问题,简单尝试了下没有修好,所以找老板商量,暂时买了一台 Asus G75VW 来用。

这是一款游戏用移动式PC。不兼容的状况包括:

  1. 无线网卡。(此问题高通已经知晓)
  2. GPT。BIOS不支持以MBR启动GPT分区中的 FreeBSD。近期许多采用 (U)EFI 技术的 Award BIOS 都有类似的问题。超微的主板这种问题则很少出现。

我首先在预装的 Windows 系统中制作了一份恢复 DVD(共4张)。当然,如果不打算恢复 Windows 系统的话是可以跳过这一步的,升级 BIOS 可以通过 U 盘来完成。

用 LiveFS 安装 FreeBSD。由于 FreeBSD 目前还没有提供基于 EFI 的引导加载器(2012年的 Google SoC 项目有一个是关于 EFI 引导加载器 的),因此只能先破坏掉硬盘上现有的 GPT 分区。

gpart destroy -F ada0
dd if=/dev/zero of=/dev/ada0 bs=512 count=34
dd if=/dev/zero of=/dev/ada0 bs=512 oseek=/* LBA - 35 */ count=34

接下来的安装就和普通的 MBR 安装一样了。

目前知道的一些其他事项。

由于采用的是 Ivy Bridge 的 Core i7,因此可以用 AES-NI 来加速。向 GELI 卷写 1MB 的随机数块的速度可以稳定在 33MB/s;写 0 数据块的速度可以稳定在大约 60 MB/s。对于全加密的卷来说,第一次使用之前应该覆写一遍加密的随机数,而不是 0。(当然,这个架不住有人拿 $5 的扳手揍你到说出密码为止)(当然,其实根本没人 care 你的硬盘上存的是啥)

nVidia 的 FreeBSD 驱动对这款显卡支持良好。暂时还没测是否可以用 CPU 集成的 Intel 图形控制器来驱动显示器。

Monthly Archives

Pages

OpenID accepted here Learn more about OpenID
Powered by Movable Type 5.2.3