外观
密码管理与账号安全
约 1145 字
密码管理与账号安全
程序员是「账号密集型职业」:GitHub、云平台、服务器、 几十个 SaaS。密码管理混乱 = 定时炸弹。这篇讲 密码管理器 + 2FA + 检测三件套。
一、为什么不能「一个密码走天下」
数据泄露是常态:某个小网站被拖库 → 你的 「邮箱+常用密码」进了黑产字典 → 撞库你所有的重要账号 (邮箱、GitHub、云平台、银行)。
程序员尤其危险:
- GitHub 账号 = 代码资产 + 社交信誉;
- 云平台账号 = 服务器控制权(被入侵变成肉肉);
- 域名注册商 = 域名所有权。
一个密码的思路在现代等于「裸奔但有仪式感」。
二、密码管理器:唯一正解
选型
| 工具 | 特点 |
|---|---|
| Bitwarden | 开源、免费档 generous、全平台。个人首选 |
| 1Password | 体验最好,付费(家庭档划算) |
| KeePassXC | 本地数据库文件,极客/离线党 |
| Chrome/Edge 内置 | 方便但生态锁定、功能弱 |
| iCloud 钥匙串 | 苹果生态内省心 |
本站作者用 Bitwarden(免费 + 开源 + 自托管可选)。 1Password 体验更丝滑,看预算。
用法要点
- 主密码:长短语(
correct-horse-battery-staple风格),这是唯一要记的密码,别在任何网站用; - 每个账号独立随机密码:让管理器生成 (20 位随机,你永远不用记);
- 填密码用浏览器扩展/自动填充 —— 养成习惯, 「手打密码」是过时的勇敢;
- 应急包:主密码 + 恢复码,物理备份 (打印/放保险箱)—— 忘了主密码,库就没了;
- 公司密码别存个人库(合规问题)—— 用团队密码管理器(1Password Teams/Bitwarden Organizations)。
三、2FA:第二道锁
密码可能泄漏,2FA 让「有密码也进不去」。
按安全性排序:
硬件密钥(YubiKey) ★★★★★ 物理设备,防钓鱼
TOTP 验证器(Authy/ente) ★★★★ App 生成 6 位码
短信验证码 ★★ 能被 SIM 卡交换攻击(别用!)行动:
- 装 Authy(多设备同步)或 ente(开源) 或 1Password/Bitwarden 自带的 TOTP;
- GitHub、邮箱、云平台、域名商、银行全开;
- 恢复码保存好(换手机时救命);
- 有条件上硬件密钥(GitHub/Google 都支持)。
TOTP 的原理(30 秒换一次的 6 位数):服务器和 你的 App 共享密钥 + 当前时间算同一个值 —— 时间同步 是关键(设备时间不准会失效)。
四、检测你有没有被脱裤
- Have I Been Pwned: 输邮箱,查它在哪些泄露事件里出现过;
- Firefox Monitor (同一数据源,界面更友好);
- 查到过 → 那个站 + 同密码的站,全改密码。
程序员定期自查:每季度查一次主力邮箱。
五、GitHub 账号专项
GitHub 是程序员的命门,特级保护:
六、泄露了怎么办
① 立刻改密码(从邮箱开始 —— 邮箱是总钥匙)
② 吊销可能暴露的 token/密钥
③ 检查账号活动记录(GitHub 的 Security log、
云平台的登录记录)
④ 通知相关方(公司安全、平台方)
⑤ 复盘泄漏路径(代码提交?钓鱼?弱密码?)「删除 commit 以为没事」是错的 —— 历史里还在,fork/克隆过的都有。泄漏了只能「当已公开」处理: 吊销换新,没有中间态。
七、防钓鱼:最后一关
再强的密码也怕钓鱼:
- 登录页看域名(
gith ub.com这种仔细看); - 重要操作(给 token、输密码)前,确认是官方 App/页面;
- 邮件里的链接,悬停看真实地址;
- 硬件密钥/部分 TOTP 有「域名绑定」 —— 钓鱼网站拿不到码,这是它们防钓鱼的原因。
小结
账号安全三件套:密码管理器(Bitwarden,唯一主密码)+ 2FA(TOTP 起步,硬件最佳)+ 定期自查(HIBP)。 GitHub 账号按「特级保护」配置(2FA + 最小权限 token + 签名提交)。安全是习惯不是配置 —— 一次配好,受惠到下次大泄露。