环境配置之Keepass
前言
很久以前,就有了想要一个自己密码管理器的念头。毕竟,即使浏览器能记住各个网站的账号密码,但是在登录单独客户端的时候,仍然要翻找密码。
为了省事,也曾经是一个密码走天下。然后被劫持了QQ给同学发黄色小网站???

环境配置
最后在网上浏览了多个密码管理器的应用后,最后选中keepass。
选中他的原因有三点:
密码数据库默认是本地存储
加密算法安全性较高
多平台支持
最强的优点就是缺点,因为是本地存储数据,想要做到多平台同步就得用第三方网盘了。
MAC平台
对应的工具,我是选择了keepassxc这个工具,本身这个工具也是跨平台的。支持Linux、Mac和Win。
brew install --cask keepassxc
安装后可以查看版本号
/Users/keen/Applications/KeePassXC.app/Contents/MacOS/keepassxc-cli -v

image-20230307232109337
强烈不建议使用keepass2,虽然有解决CVE-2023-24055 的方案。
浏览器扩展
KeePassNatMsg:由smorks大佬基于KeePassHttp开发的安全性能较强的插件,支持和keepassxc-browser 搭配实现自动填充。
如果你习惯用keepass 2.x,还想要去实现安全性能更强的自动填充,那么推荐你用keepassnatmsg插件+keepassxc-browser浏览器扩展的组合。
而如果你正在用keepassXC,那么你不用安装任何所谓的软件插件,直接在浏览器上安装相应的扩展程序,以及在keepassXC软件上做出浏览器集成配置,就可以使用自动填充功能了。————————————————版权声明:本文为CSDN博主「键盘即钢琴」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
所以直接去浏览器的扩展中心安装了KeePassXC-Browser插件。
配置KeePassXC
在keepassxc中进行浏览器集成配置。
下图取自网络。
2是勾选启用浏览器集成功能
3是勾选为哪些浏览器开启集成
4是可选项,建议也勾选

之后,在设置->常规->自动输入中,勾选全局自动输入,并且取消勾选总在执行自动输入前询问。保存后
更改配置后重启应用KeePassXC,然后在浏览器中点击扩展程序。重新连接后,扩展图标不显示叉叉表示连接成功。
引用替换
很多平台都是拥有多个不同品牌的网站,而且账号和密码是完全相同的。
为了只维护一个记录,可以用“以引用方式替换用户名和密码”的方式,更简单方便。
右键单击某条记录→【复制记录】→勾选【以引用方式替换用户名和密码】→【确定】
云存储
坚果云
访问坚果云官网注册一个账号,官网:https://www.jianguoyun.com/
然后在手机和Mac电脑上分别安装好客户端软件,登录注册的账号。下载地址:https://www.jianguoyun.com/s/downloads
手机端设置:设置-第三方应用管理-添加应用密码->记住服务器地址和应用密码
在安卓端可以用https来链接,实现全平台的文件同步。
百度云
百度云本身是存在文件夹自动同步这个功能的,但是只有在Mac和Win平台支持的,在安卓端是不支持的,只能下载没办法自动同步文件的变化内容。
个人使用的时候,安卓端只是读取功能就可以满足我了,我不会在安卓端进行修改和添加删除。所以,看个人使用习惯吧。
安卓平台
keepassDX
keepassDX是官方推荐的APP。优点是现在很多人还在后面支持,缺点是现在测试之后,这款只能用本地的数据库,没办法使用网盘的。
不确定是不是有未来的开发计划去支持网盘,因为本身keepass这个产品的定位本就是存储在单一设备里的密码管理器。
有一个只读模式,很得我心。
遗憾的是,他在切换输入法的时候很麻烦,所以我放弃了他。当然,在1.15日我看到开发者说将会在4.10版本中进行一定的优化,我还是很期待的。
换了新手机一加的ACE2,发现手机系统支持在快捷操作里进行输入法切换,一下子就戳中了我的心。所以我现在是在用这个方式。
keepass2android
keepass2android是众人推荐的,功能很棒,许多人推荐,并且支持多种方式来链接数据库。
搭配坚果云、onedrive等云存储平台,可以实现多平台同步。
比较适合会有在安卓端更新数据库的操作的伙伴。
注意,提供一个非Root的插件KeyboardSwap,可以用ADB工具安装到手机上,能在需要的时候自动切换输入法。
KeyboardSwap
在Android中,几乎所有的密码管理器都提供了自己独特的输入法,因为Android系统的剪贴板是众所周知的不安全因素。
平时我们都在使用其他输入法来聊天交流,只有在输入账号密码的时候,才需要打开应用切换到特别的输入法。
KeyboardSwap本身只是一个很简单的插件,允许切换输入法而已。
下面以电脑MAC系统、手机OPPO R9S为例,进行演示。
下载ADB工具
ADB和Fastboot for Windows
https://dl.google.com/android/repository/platform-tools-latest-windows.zip
ADB和Fastboot for Mac
https://dl.google.com/android/repository/platform-tools-latest-darwin.zip
ADB和Fastboot for Linux
https://dl.google.com/android/repository/platform-tools-latest-linux.zip
下载后,解压文件夹到指定路径,然后在命令行配置文件中配置。
比如,我就将之解压到了/Users/keen/HackTools/platform-tools路径,然后在/Users/keen/.zshrc文件中新增了一条内容。
alias adb="/Users/keen/HackTools/platform-tools/adb"
然后在命令行中运行命令。
source /Users/keen/.zshrc
连接安卓手机
在手机上安装keepass2android.plugin.keyboardswap2.apk应用。
将电脑与手机用数据线进行连接,之后打开手机的USB调试功能。
在电脑上运行如下命令。
adb shellpm grant keepass2android.plugin.keyboardswap2 android.permission.WRITE_SECURE_SETTINGS

image-20230220201817104
之后退出usb调试状态,断开连接。
打开keyboardswap2应用,可以看到明显的提示。

image-20230220202145270
最后我们可以打开keepass2android工具,在设置->应用->密码输入接口–>切换键盘路径下,开启自动切换键盘、切换为原来的键盘和完成后切换键盘。
于是在手机端使用过程就是打开某一个APP,进入到账户密码输入页面;切换到keepass2android应用,打开数据库后选择对应的条目,点击条目;切换到输入页面,点击按钮输入账号密码,最后自动切换为正常输入法。
完美的体验。
感谢
感谢现在的好奇,为了能成为更好的自己。
通过坚果云、KeePassXC、keepass2android实现跨平台的密码管理方案
KeePass完全入门指南
KeepassXC官网
利用keepassxc浏览器扩展实现密码自动填充
坚果云官网
KeePass安卓端的部署和使用
以引用方式替换用户名和密码
相关文章:

环境配置之Keepass
前言很久以前,就有了想要一个自己密码管理器的念头。毕竟,即使浏览器能记住各个网站的账号密码,但是在登录单独客户端的时候,仍然要翻找密码。为了省事,也曾经是一个密码走天下。然后被劫持了QQ给同学发黄色小网站&…...

Java 电话号码的组合
电话号码的字母组合中等给定一个仅包含数字 2-9 的字符串,返回所有它能表示的字母组合。答案可以按 任意顺序 返回。给出数字到字母的映射如下(与电话按键相同)。注意 1 不对应任何字母。示例 1:输入:digits "23…...

MATLAB——将直接型转化为并联型和级联型
题目1(IIR): 已知一个系统的传递函数为: H(z)8−4z−111z−2−2z−31−1.25z−10.75z−2−0.125z−3H(z)\frac{8-4z^{-1}11z^{-2}-2z^{-3}}{1-1.25z^{-1}0.75z^{-2}-0.125z^{-3}}H(z)…...

.NET Framework .NET Core与 .NET 的区别
我们在创建C#程序时,经常会看到目标框架以下的选项,那么究竟有什么区别? 首先 .NET是一种用于构建多种应用的免费开源开发平台,可以使用多种语言,编辑器和库开发Web应用、Web API和微服务、云中的无服务器函数、云原生应用、移动应用、桌面应用、Windows WPF、Windows窗体…...

carla与ros2的自动驾驶算法-planning与control算法开发与仿真
欢迎仪式 carla与ros2的自动驾驶算法-planning与control算法开发与仿真欢迎大家来到自动驾驶Player(L5Player)的自动驾驶算法与仿真空间,在这个空间我们将一起完成这些事情: 控制算法构建基础模块并仿真调试:PID、LQR、Stanley 、MPC、滑膜控…...

corn表达式
简单理解corn表达式:在使用定时调度任务的时候,我们最常用的,就是cron表达式了。通过cron表达式来指定任务在某个时间点或者周期性的执行。cron表达式配置起来简洁方便,无论是Spring的Scheduled还是用Quartz框架,都支持…...

推荐系统中对抗性机器学习-文献综述与未来发展整理分享
对抗学习是一种机器学习技术,旨在通过提供欺骗性输入来欺骗模型。最常见的原因是导致机器学习模型出现故障。大多数机器学习技术旨在处理特定的问题集,其中从相同的统计分布(IID)生成训练和测试数据。当这些模型应用于现实世界时&…...

Proteus8.15安装教程
1、解压Proteus8.15 安装包,然后双击进去,找到setup文件,右键,以管理员身份运行。 2、需要安装一些插件,点击“next”。把插件安装完成。 点击“finfish” 点击“install” 点击“Cancel” 3、如果没有上面步骤&…...

Shell 基本运算符
Shell 和其他编程语言一样,支持多种运算符,包括: 算数运算符关系运算符布尔运算符字符串运算符文件测试运算符 原生bash不支持简单的数学运算,但是可以通过其他命令来实现,例如 awk 和 expr,expr 最常用。…...

Linux基础命令-sed流编辑器
Linux三剑客-grep命令 Sed 一. 命令介绍 先到帮助文档中查看命令的描述信息 NAME sed - stream editor for filtering and transforming text sed命令是操作、过滤和转换文本内容的强大工具,常用功能包括结合正则表达式对文件实现快速增删改查,其中查询…...
C语言笔试题(1)
#include <stdio.h> #include <stdlib.h> #include <string.h> void getmemory(char *p) { p(char *) malloc(100); strcpy(p,“hello world”); } int main(void) { char *strNULL; getmemory(str); printf(“%s/n”,str); free(str); return 0; } 上述程序…...

网络连接的三种模式
文章目录前言一、三种连接模式介绍二、三种网络连接模式的区别前言 在进行虚拟机配置时,网络连接分为三种模式:桥接模式,NAT模式,主机模式 一、三种连接模式介绍 张三、李四、王五在同一个网段,所以他们之间可以相互…...

大学模拟电路期末考试模拟题详解
(一)选择题 3.4.5.6.7.8.9.10. (二)填空题 1.漂流电流是温度电流,它由少数、载流子形成、其大小与温度有关,而与外加电压无关。 反向电流是由少数载流子形成、其大小与温度有关,而与外加电压无…...

C/C++内存管理讲解
c/C内存管理讲解 C/C内存分布 首先通过一些题目的引入讲解带大家走进C/C的内存分布。 eg1: 根据上述变量的定义,来判断它们所在的内存位置。 从接下来的4个选项中选出最佳答案填入(注:可重复选)。 A、栈 B、堆 C、数…...

【Linux】网络原理
本篇博客让我们一起来了解一下网络的基本原理 1.网络发展背景 关于网络发展的历史背景这种东西就不多bb了,网上很容易就能找到参考资料,我的专业性欠缺,文章参考意义也不大。这里只做简单说明。 网络发展经过了如下几个模式 独立模式&…...

list模拟实现
list模拟实现list原理讲解节点结构list类设计push_backIterators:begin与endconst对象的迭代器重载->运算符反向迭代器迭代器所有代码迭代器总结constructor:clear~listfront与backinsert与erasesize与empty与swappop_back()总代码:节点类正向迭代器类反向迭代器类list类lis…...

CSS看这一篇就够啦,CSS基础大全,可用于快速回顾知识,面试首选
1 CSS简介 CSS 是层叠样式表 ( Cascading Style Sheets ) 的简称。 CSS 是也是一种标记语言,主要用于设置 HTML 页面中的文本内容(字体、大小、对齐方式等)、图片的外形(宽高、边框样式、 边距等)以及版面的布局和外观…...

Canvas详细使用方法(一)
Canvas Canvas的注意事项 < canvas > 和 < img > 元素很相像,唯一的不同就是它并没有 src 和 alt 属性。 -< canvas > 标签只有两个属性——width和height( 单位默认为px )。当没有设置宽度和高度时,canvas 会初始化宽为 300px 和高…...

CentOS定时任务——crontab
crontab Linux crontab 是用来定期执行程序的命令。 crond 命令每分钟会定期检查是否有要执行的工作,如果有要执行的工作便会自动执行该工作。 注意:新创建的 cron 任务,不会马上执行,至少要过 2 分钟后才可以,当然你…...

C51---蓝牙模块---连接软件---控制LED灯
1.器件:C51、HC-08蓝牙模块、Ty-C数据线、杜邦线 2.软件:HC蓝牙助手 3.接线:VCC-VCC、GND-GND、RXD-TXD、TXD-RXD 4.烧写:STC-ISP串口助手 5.代码: #include "reg52.h" #include "intrins.h" …...
DockerHub与私有镜像仓库在容器化中的应用与管理
哈喽,大家好,我是左手python! Docker Hub的应用与管理 Docker Hub的基本概念与使用方法 Docker Hub是Docker官方提供的一个公共镜像仓库,用户可以在其中找到各种操作系统、软件和应用的镜像。开发者可以通过Docker Hub轻松获取所…...
unix/linux,sudo,其发展历程详细时间线、由来、历史背景
sudo 的诞生和演化,本身就是一部 Unix/Linux 系统管理哲学变迁的微缩史。来,让我们拨开时间的迷雾,一同探寻 sudo 那波澜壮阔(也颇为实用主义)的发展历程。 历史背景:su的时代与困境 ( 20 世纪 70 年代 - 80 年代初) 在 sudo 出现之前,Unix 系统管理员和需要特权操作的…...
什么?连接服务器也能可视化显示界面?:基于X11 Forwarding + CentOS + MobaXterm实战指南
文章目录 什么是X11?环境准备实战步骤1️⃣ 服务器端配置(CentOS)2️⃣ 客户端配置(MobaXterm)3️⃣ 验证X11 Forwarding4️⃣ 运行自定义GUI程序(Python示例)5️⃣ 成功效果,并通过实时消息推送更新车…...
【前端异常】JavaScript错误处理:分析 Uncaught (in promise) error
在前端开发中,JavaScript 异常是不可避免的。随着现代前端应用越来越多地使用异步操作(如 Promise、async/await 等),开发者常常会遇到 Uncaught (in promise) error 错误。这个错误是由于未正确处理 Promise 的拒绝(r…...

认识CMake并使用CMake构建自己的第一个项目
1.CMake的作用和优势 跨平台支持:CMake支持多种操作系统和编译器,使用同一份构建配置可以在不同的环境中使用 简化配置:通过CMakeLists.txt文件,用户可以定义项目结构、依赖项、编译选项等,无需手动编写复杂的构建脚本…...
深度剖析 DeepSeek 开源模型部署与应用:策略、权衡与未来走向
在人工智能技术呈指数级发展的当下,大模型已然成为推动各行业变革的核心驱动力。DeepSeek 开源模型以其卓越的性能和灵活的开源特性,吸引了众多企业与开发者的目光。如何高效且合理地部署与运用 DeepSeek 模型,成为释放其巨大潜力的关键所在&…...

C++实现分布式网络通信框架RPC(2)——rpc发布端
有了上篇文章的项目的基本知识的了解,现在我们就开始构建项目。 目录 一、构建工程目录 二、本地服务发布成RPC服务 2.1理解RPC发布 2.2实现 三、Mprpc框架的基础类设计 3.1框架的初始化类 MprpcApplication 代码实现 3.2读取配置文件类 MprpcConfig 代码实现…...

6.9-QT模拟计算器
源码: 头文件: widget.h #ifndef WIDGET_H #define WIDGET_H#include <QWidget> #include <QMouseEvent>QT_BEGIN_NAMESPACE namespace Ui { class Widget; } QT_END_NAMESPACEclass Widget : public QWidget {Q_OBJECTpublic:Widget(QWidget *parent nullptr);…...
数据库——redis
一、Redis 介绍 1. 概述 Redis(Remote Dictionary Server)是一个开源的、高性能的内存键值数据库系统,具有以下核心特点: 内存存储架构:数据主要存储在内存中,提供微秒级的读写响应 多数据结构支持&…...