Keepass+坚果云:多平台密码无缝同步
追加修改(2021-02-20 11:06:12):
上边触发器的链接失效了,这里补一个
前情
首先说一下这篇拖了好久文章的由来:有几个人都问我是怎么实现密码管理+多平台同步的。
每个网站都用不同密码的主要原因还是每年都有不少网站被攻击然后泄露数据库,密码都一样的话很容易就被撞库了。
市面上常用的密码管理软件有 Keepass、LastPass、1Password 三剑客,这三兄弟算是各有利弊吧:
LastPass 和 1PassWord 默认是收费的,貌似只有 Keepass 是免费的。如果不想额外花钱的话,需要单独为Keepass找同步平台。
一开始我用快盘负责同步,速度还不错,而且我的小米手机原生支持快盘,这点倒是挺舒服的,只可惜后来快盘倒闭了。
无奈之下只能想其他办法,中间停了有两个月没有同步,搞得每次找密码都很**,主要是单位跟家里都会有密码录入,如果不同步的话真心崩溃。
再后来 Keepass 发布了 2.0 版本,原生有了版本同步的功能,而且支持 FTP 和 WebDAV 文件路径,这样就为云同步提供了一套新思路,在网上爬了一圈我找到了“坚果云”,网站原生支持 WebDAV 。
当然还有备选项啦,比如OneDrive,但是貌似版本控制会有问题,别人测试时候出现过版本冲突的情况,所以暂时先不考虑了。
准备工作
1、下载一个Keepass
2、注册一个坚果云账号
Keepass在不同平台都有客户端可以用,Android端的 KeePass2Android 可以直接打开 WebDAV,iOS平台目前还没有找到功能很齐全的,我用的是坚果云客户端+MiniKeePass。
参考资料如下:
1、
2、
3、
基础设置
1、创建一个Keepass的密码数据库,可以参考第一个资料,不过楼主比较懒,直接换成 Key 文件加密,见下图:
先点击右边“创建”创建一个密匙文件,勾上左边的选项,然后点击“浏览”选中刚刚创建的文件,就可以创建一个数据库了。
2、在坚果云上创建一个同步专用的文件夹(建议勾上“默认不同步到电脑”选项)
创建之后可以把刚才创建的数据库文件上传一份进来,最终效果如下:
开始准备WebDAV的权限,点击网页右上角>账户信息,然后切换到安全选项,点击最下面的添加应用密码,就可以开启WebDAV的访问权限,你也可以为不同的客户端设置不同的密码,方便修改。最终效果跟下面类似:
这里可以先记录一下你的WebDAV信息:
账号:你的坚果云登陆邮箱
密码:刚刚创建的应用密码
文件同步
然后就是设置文件同步功能了,可以直接通过Keepass原生的同步功能进行同步,但是这样操作起来太麻烦了,每次同步都要点击好几下鼠标。让我们换一个思路,能不能自动同步一下,没错就是用触发器来自动同步。
上面的参考资料里已经说得很详细了,这里主要有两个问题:
1、需要设置自动同步的路径、账号及密码
2、自动同步时需要防止触发器死循环的问题
我已经写好脚本了,在Keepass保存的时候直接同步到坚果云上,复制代码直接导入即可,代码地址如下:
具体步骤为:复制触发器代码后,打开工具>触发器,点击工具>从剪贴板粘贴触发器,可以参考下面:
导入完成后就会多一个 SaveSync 的触发器,双击进入编辑,切到动作页面
这里主要修改的是同步信息,双击第二条编辑,把URL、用户名、密码修改为你自己的
一路确定回到主界面,这里还有一个设置需要改一下,要不会导致同步错误,我无法确定是不是Keepass的BUG
在主界面上点击工具>选项,切到最后一个高级页面,在文件输入输出里
不勾选将写入数据库时使用文件交换
不勾选将写入数据库时使用文件交换
不勾选将写入数据库时使用文件交换
点击确定保存,然后按下Ctrl+S保存一下数据库,会弹出一个正在同步的窗口
没有报错的话表明同步完成了,这时候再回到坚果云,可以看到文件的修改时间已经变了
当然点击三角符号在弹出菜单里可以看到文件历史版本,也算是多了一个保障,貌似坚果云的文件历史不是介绍里说的一个月,至少我能看到三四个月以前的版本,不知道什么原因
Okay,这篇文章也算是结束了,有什么问题的话请留言,我尽力解答哈。
后记
一篇文章改了好几遍才算是弄好,感觉还是没有视频教程弄起来流畅舒服,不知道张大妈是不是支持直接上视频教程。
在路上o
校验提示文案
NoneZK
校验提示文案
leon_z79
校验提示文案
冰冰虫
请教一下:
前提:我电脑安装了坚果云同步客户端,在几台电脑间同步数据
问题:由于数据库是可以随便选择位置存放的,我直接存放到坚果云在我电脑中的同步文件夹,这样实现了多台电脑间数据库同步,并且,不需要什么触发器,因为坚果云是监视同步文件夹的,所以这种方式更简单吧?手机也能访问这个数据库。
当然,缺点也很明显:
多台电脑如果同时打开,同时运行keepass,都占用数据库文件,可能会造成文件冲突形成多版本。
校验提示文案
馒饅慢慢
校验提示文案
Gravityman
校验提示文案
法行天下
校验提示文案
sturdust
校验提示文案
x1u4a6n9
校验提示文案
法行天下
校验提示文案
法行天下
校验提示文案
[已注销]
校验提示文案
云在流浪
校验提示文案
没胡子的胡子
校验提示文案
yaee
校验提示文案
披星戴月Dv
校验提示文案
泡杯咖啡
校验提示文案
火页
校验提示文案
Kratoshy
校验提示文案
麓山
校验提示文案
小钦哥
校验提示文案
值友4705593666
校验提示文案
法行天下
校验提示文案
法行天下
校验提示文案
x1u4a6n9
校验提示文案
sturdust
校验提示文案
法行天下
校验提示文案
值友1383795814
另外可不可以把动作1和动作3删除,然后勾选执行动作后关闭?这样效果是不是一样?
校验提示文案
值友1383795814
校验提示文案
馒饅慢慢
校验提示文案
有礼尚往来无白丁
校验提示文案
NoneZK
校验提示文案
冰冰虫
请教一下:
前提:我电脑安装了坚果云同步客户端,在几台电脑间同步数据
问题:由于数据库是可以随便选择位置存放的,我直接存放到坚果云在我电脑中的同步文件夹,这样实现了多台电脑间数据库同步,并且,不需要什么触发器,因为坚果云是监视同步文件夹的,所以这种方式更简单吧?手机也能访问这个数据库。
当然,缺点也很明显:
多台电脑如果同时打开,同时运行keepass,都占用数据库文件,可能会造成文件冲突形成多版本。
校验提示文案
leon_z79
校验提示文案
leon_z79
校验提示文案
在路上o
校验提示文案
Mr麦子
校验提示文案
mac100
校验提示文案
simplebird
校验提示文案
dengyl
校验提示文案