楼主自己在用 Bitwarden_rs 自建,但是本着二次验证不能和密码管理器放在一起的原则(安全性考虑),同时在使用andOTP来存储 TOTP,不支持自动云端备份( GoogleDrive,Dropbox...),但是可以自动本地备份(备份到内置存储的文件夹下)。我的解决方案是定期手动导出加密后的数据到 GoogleDrive,这样即使手机遗失也可以恢复数据
之前使用过Authy,支持云端自动同步(但是不支持同步到各大网盘 /WebDav )但是它本身不开源所以不是很信任。另外它使用手机号作为登录凭证也比较反感
除了 Authy 以外,其他客户端都不支持跨平台同步,无法一有改动立即同步云端备份
综上,如果可以造论子的话,大家希望理想的 OTP 客户端是什么样的?我有几个备选想法:
Authy 的开源实现版本,除了客户端以外实现一个后端,用来完成登录和同步。不使用手机号作为二次验证,只使用Master Password
来鉴权 (如此的话安全性会打折扣,这里如果各位 V 友有更好地二次验证解决方案可以留言)。实现起来类似 Bitwarden 自建,可以自行搭建,客户端指定后端同步地址
实现一套加密方案,在各平台客户端的基础上支持对接各大网盘存储 /WebDav 的 API,实现自动更新和跨平台同步
想了解一下各位大佬的 OTP 客户端,看看有没有更好地解决方案
1
iphoneXr 2020-12-06 18:21:10 +08:00 via iPhone
bitwarden 付费 60 元一年,mfa 用起来太方便了。
注意备份 proxmox 的虚拟机就好了。 |
2
imn1 2020-12-06 18:30:55 +08:00
pip install pyotp
|
3
Hackerchai OP @iphoneXr bitwarden_rs 自建不是更香
|
4
Hackerchai OP @imn1 手机上就没法用了呀
|
5
imn1 2020-12-06 19:37:22 +08:00
|
6
wooyuntest 2020-12-06 20:25:03 +08:00 1
yubikey fido2
|
7
Windelight 2020-12-06 21:09:07 +08:00 via Android
一个微软验证器解决多数你想要的,只要你信任微软可以保护你的信息😂
|
8
justin2018 2020-12-06 21:38:17 +08:00
微软的那个~~ 同步 iOS 安卓 都有~
|
9
HertzHz 2020-12-06 21:59:01 +08:00
对于丢失 OTP 可用其他方式恢复的就不用担心了,如果丢了 OTP 就废掉的话,可以把密钥塞 1Password 之类的地方
|
10
nieyujiang 2020-12-06 22:05:58 +08:00 via iPhone 1
1password,只记一个主密码就行了
|
11
moooonb 2020-12-06 22:28:43 +08:00
fido
|
12
wb14123 2020-12-06 22:29:28 +08:00
可靠的还是物理密钥如 Yubikey,可以对服务注册多个 Yubikey 来防止丢失。
|
13
CrazyBoyFeng 2020-12-06 23:40:57 +08:00
密码 bitwarden,2fa 用微软身份验证器,带同步。
|
14
baobao1270 2020-12-07 02:06:08 +08:00 via Android 1
我用 Microsoft Authenticator
|
15
ericgui 2020-12-07 06:29:50 +08:00
你有个后端,就意味着你被黑的风险增加了好几分,毕竟你自己维护一个服务器,你觉得安全性多高?
|
16
Aoang 2020-12-07 09:16:54 +08:00 via Android 2
@ericgui 这个观点不能苟同。
和公司比,个人的体量更小,除开针对个人的情况下,黑公司的服务器不是比黑个人的服务器可能性更大么? 这点就不说了,毕竟无论怎么扯都是半斤八两的。 自建的安全性并不意味着会很低,风险增加…不能很懂为什么会这么想。 服务器防火墙别乱开端口,服务器登录做好安全措施,都用 bitwarden 了,不至于还是个弱密码吧? 套一个 nginx,然后再套一层 cf,只允许 cf 回源。 加一个脚本,定期备份数据文件,上传到各个地方。我是直接用 git 做的。 服务器随时可换,数据文件丢失也没什么,那是加密的。 但是,即使是这样,这么一个服务器除非出现 0day 怎么会被黑? |
17
tsukiikekaoru 2020-12-07 09:34:02 +08:00 via iPhone 1
为什么不能和密码放一起呢? otp 的作用是在密码被攻破的情况下加一层防护,而不是服务器被攻破
|
18
lijinma 2020-12-07 09:38:17 +08:00
1password 挺好的。
|
19
Hackerchai OP @wooyuntest 感谢 我去了解一下
|
20
Hackerchai OP @wb14123 感谢
|
21
Hackerchai OP @nieyujiang 那 1pass 的二次验证怎么解决呢
|
22
tsukiikekaoru 2020-12-07 09:46:13 +08:00 via iPhone
虽然分开放的确会增加一重安全性,但使用上也会更加不方便。这就是安全性和方便性的选择了,个人观点是没有必要去追求绝对的安全性。即便是传统的单一密码机制绝大多数被攻破也是因为简单密码、多网站同一密码、微博等厂商自己被人攻击盗窃,而这些在使用不同网站不同复杂密码加 OTP 后都已经能够杜绝,也就是说使用密码管理软件后已经解决了上述问题。不要总想着有人来攻击你的服务器并且还真的攻破了,先想想自己服务器和网站有几次被人攻破的记录,没那么容易的。
|
23
tabris17 2020-12-07 09:46:13 +08:00
google authenticator
|
24
Hackerchai OP @tsukiikekaoru 那如果我的 bitwarden 服务器被攻破了,那 otp 和密码放在一起,这时候不就完全崩溃了
|
25
d0m2o08 2020-12-07 09:57:02 +08:00
iOS 用 jsbox 自己撸了一个,通过 dropbox 备份
|
26
petercui 2020-12-07 10:06:44 +08:00
1password +1
|
27
no1xsyzy 2020-12-07 10:10:49 +08:00
OTP 不得同步、不得备份。
顺便,这似乎是方便、安全、预算不可能三角。想要又方便又安全就上强密码独立计算随身设备(比如 Yubikey ),在该设备的基础上生成一切。 另,我有不少 OTP 只是为了骗过平台解除一些限制。不少平台只要不在不信任的设备(比如网吧)上登录、登录时看准域名、密码够强就行,没上 MFA 的必要,有其他更脆弱的验证方式,MFA 上了也不够安全,OTP 就是防呆。 但这些平台又自作聪明地要求你添加 OTP 才能进行某些操作,那我只好骗过了。 |
28
janxin 2020-12-07 10:11:57 +08:00
Microsoft Authenticator
|
29
no1xsyzy 2020-12-07 10:13:14 +08:00
@Hackerchai 你 A 被攻破了,有 C 在没事儿啊,别人拿到手也破译不了就行了(指信息安全 CIA 模型)
但我不清楚 bitwarden 是否端到端加密 |
30
zzyzxd 2020-12-07 10:13:50 +08:00
我发现懂一些技术、或者有一些动手能力的人,总有一种幻觉,就是“我自建服务器比云服务安全”。bitwarden 软件给你了,接下来,你真的有能力、以及这个精力,保证在整个部署和后期维护的过程中永远遵循所有安全规范吗?你家或者你租的云上的 infra,有没有专业机构帮你做 security audit ?
目前读下来你一直担心自己的服务器被攻陷,那么你可能不适合自己部署密码管理器。 另外, > 本着二次验证不能和密码管理器放在一起的原则(安全性考虑) 为什么会有这样的原则?两步验证中的第二步存在的意义,是在第一步(密码)被攻陷的情况下给账号提供第二重保护。那么什么时候攻击者能攻陷你的密码呢? 1. 通过密码管理器之外的任何途径知道了你的密码,包括但不限于:多网站复用密码,social engineering…… 2. 密码管理器被攻陷。 对于 1,使用密码管理器就能避免。 对于 2,密码管理器自身应该已经有两步验证,这时候你再把 TOTP 凭证放在另一个地方,相当于你把登陆某网站的流程提高到了三步验证。这样当然更安全,但是也要自己考虑考虑是否需要安全到那种程度。 |
31
vain 2020-12-07 10:15:55 +08:00
|
32
vain 2020-12-07 10:19:39 +08:00
使用 bitwarden,然后将登陆 bitwarden 账号的信息(含 2ND FACTOR )保存在我上边提到的产品中,安全性和便利性一次满足。
|
33
tsukiikekaoru 2020-12-07 11:12:00 +08:00 via iPhone
@no1xsyzy 我也是。2FA 除非特殊情况我一般不会开,Google 开了是为了解除异地登录锁定,馒头是为了魔力值加成,其他还真没几个开的,开了也是增加不便,大多数情况单一复杂密码足够了。
|
34
olaloong 2020-12-07 11:17:24 +08:00
所以,还有哪家 TOTP 支持 Steam 令牌?目前用的 KeePass + KeeTrayTOTP 插件
|
35
tsukiikekaoru 2020-12-07 11:19:37 +08:00 via iPhone
@Hackerchai 我之前的最后一段话说了啊,哪有那么容易攻破服务器,做好服务器登录防护,非必要端口不开,ssh 复杂密码或者密钥登录,乱七八糟的服务不乱跑在上面,做好升级,即便公网环境很恶劣也没那么容易攻破一台服务器,大多数时候还是因为简单密码和服务端口漏洞被人黑进去了。再者退一万步真的被人黑了服务器,没有主密码也很难获得其中的内容。或者像其他人说的与其单独保存每个网站的 2FA,不如只开密码管理软件的 2FA 。
|
36
Hackerchai OP @zzyzxd otp 不和密码管理器放在一起的考虑就是自建密码管理器有被入侵的风险
|
37
lovehigh 2020-12-07 11:37:50 +08:00
用的 keepass+KeeTrayTOTP,steam 也能支持。手机端用 keepass2android,配合坚果云的 webdav 。非常方便。
|
38
johnli 2020-12-07 15:52:37 +08:00
@baobao1270 微软这个 OTP 只能单平台同步,iOS 和安卓不能互通,亲测
|
39
CrazyBoyFeng 2020-12-11 20:28:11 +08:00
除了微软验证器,我有个补充方案是浏览器扩展 https://authenticator.cc/
支持 chrome 、firefox 、edge 三家扩展。 可以绑定 googledrive 、onedrive 、dropbox 的 api 上传数据进行同步。 |
40
tsukiikekaoru 2020-12-19 00:48:54 +08:00 via iPhone
@olaloong bitwarden 就支持 stean totp
|
43
Eyeshr 2021-02-16 10:06:57 +08:00
单纯在用 KeePass
|