一个将chrome密码导入gopass的简单工具。
gopass-chrome-importer的Python项目详细描述
gopass chrome导入器6173732D6368726F6D652D696D706F727465722E7376673F6272616E63683D6D6173D6173746572" />
一个将chrome密码导入gopass的简单工具。
工作原理
gopass chrome导入程序分析可以从chrome导出的.csv
文件
并在列表中提供
- (条目的)名称
- 网址
- 用户名
- 密码
确定机密文件路径
- 因为不仅网站的密码存储在chrome中,所有的条目都被分为不同的类别 以后在gopass中创建实际机密时用作子文件夹。
- 接下来,根据类别简化url,为机密提供一个人类可读的名称。
- 为了提高gopass chrome和firefox插件的可用性,将用户名用作机密的文件名。 < > >
网站
- 该url被拆分为仅包含域(和所有子域)f.ex.
import/website/smile.amazon.com/your@mail.com
- 该url被拆分为仅包含域(和所有子域)f.ex.
ip
- 因为保存的IP密码可以根据您所在的网络进行复制 这些密码被分类到各自的类别中,url被剥离,只包含ip(v4)
- 目前未检测到IPv6,将作为网站处理
android
- 该URL被剥离为仅包含应用程序F.EX.<代码>导入/ Android /com。
机密文件内容
秘密的第一行应该是密码 在下面添加的附加信息由分隔符分隔。 当用户名可用时,它将被添加到附加信息部分 然后Chrome和Firefox插件可以使用它:
mypassword1234 --- user: myuser
如果没有用户可用,则只将密码写入文件:
mypassword1234
创建机密
因为gopass不提供创建或修改机密的非交互方式
不仅可以编辑机密,还可以使用gopass edit命令创建机密
(安全相关)限制。当执行gopass edit/some/secret时
文件位于这个秘密的/dev/shm
中,然后传递给$editor
。gopass chrome导入程序
它的优点是将自身写入该env变量中,以处理临时解密的文件。
首先检查现有文件以防止覆盖现有机密数据。
如果这些检查成功,则机密将以上述格式写入文件。
之后,gopass用选定的收件人和(如果远程可用)加密临时文件。
将其推送到服务器。
安装
既然你对这个工具的工作原理有了很好的理解,那就让我们来试试吧!
由于此软件包并非完全没有依赖关系,建议将其安装在虚拟机中
python3 -m venv ~/path/to/new/virtual/environment
source ~/path/to/new/virtual/environment/bin/activate
pip3 install gopass-chrome-importer
用法
对于基本用法,import
命令应该是您所需要的全部。
gopass chrome导入程序有两个参数可自定义导入结果
在实际进口任何东西之前,你应该先看看他们提供什么。
快速概览电话:
gopass-chrome-importer import --help
干运行
在实际将密码导入gopass之前进行测试
将它们推到原点)可以使用-d
或--dry run
选项。这将只输出
密码隐藏为星号的秘密路径和内容,让您了解
发生。
示例输出与以下类似:
Would import: /import/ip/127.0.0.1/joe ****** --- user: joe Would import: /import/ip/192.168.0.1/admin ******************** --- user: admin
为了安全起见,本页的所有示例都将包含此选项。
设置chrome password export.csv的路径
要设置导出.csv文件的路径,只需使用-p
或--path
选项:
gopass-chrome-importer import --path "~/Downloads/Chrome Passwords.csv" --dry-run
更改基本导入路径
默认情况下,gopass chrome导入器会将机密导入到import/
文件夹中。简单地改变这个
使用-gb
或--gopass basepath
选项:
gopass-chrome-importer import --path "~/Downloads/Chrome Passwords.csv" --gopass-basepath /test/ --dry-run
--是
默认情况下,gopass在创建机密时会问您一些问题,比如该机密要使用哪些收件人。
对于大量的密码列表,这可能是一个相当麻烦的问题。gopass有一个内置的--yes
选项来避免这种情况
始终使用"y"或默认值(如果yes不是选项)。也可以使用此参数(除了-y
)
在gopass chrome导入程序中,并将其传递给gopass。
gopass-chrome-importer import --path "~/Downloads/Chrome Passwords.csv" --gopass-basepath /test/ --yes --dry-run
覆盖现有密码/文件内容
当gopass chrome导入程序试图将密码保存在 已存在且该文件不为空它将(默认情况下)不更改文件内容 以防止意外覆盖现有密码。
您可以使用-f
或--force
选项强制gopass chrome导入程序忽略此检查。
尽管您的现有密码是在git中备份的,并且(希望)同步到 服务器端后端使用此选项前请小心并三思。
gopass-chrome-importer import --path "~/Downloads/Chrome Passwords.csv" --gopass-basepath /test/ --yes --force --dry-run
贡献
github是用于社会编码的:如果您想编写代码,我鼓励通过forks的pull请求进行贡献 关于这个仓库。为bug和新功能创建github票证,并对您感兴趣的功能进行评论。
许可证
mypassword1234 --- user: myuser0