OpenBSD——默认安全不过如此
今天又上了一课,其实还是那句话——安全总是从最薄弱的环节突破的,操作系统能帮你解决的都是它必须解决的问题(当然,那种每季度都能出内核缓冲区溢出的除外,比如Linux),而此后真正的安全性则取决于用户对安全到底有多少了解。
传统上,FreeBSD默认是不允许root透过ssh登录的,于是我想当然地认为OpenBSD也是如此,结果发现OpenBSD不仅默认允许root登录,而且允许密码登录。这种做法我认为是欠妥的:
- root用户的存在是一个众所周知的事实。允许root登录,事实上给对方提供了一个已知用户名的可攻击点。同时穷举用户名和口令,与只需穷举口令,无疑不是一个量级的工作强度。
- 口令认证方式__太__危险了。一般来说,我们生成的随机密钥至少是2048bit,其中有两个已知bit,这相当于大约256个字符的随机性(当然严格说来没这么多,可是穷举也非常的困难)。而密码呢?你会去背一个随机生成的64位密码吗(注意通常还只有字母、数字、特殊符号,而没有8bit字符,从而使穷举范围进一步打折)?
也许我们应该把root的口令改为*(不允许口令登录)?