更改登录密码而不更改密钥环

更改登录密码而不更改密钥环

我忘记了登录密码。所以我启动进入恢复模式并使用passwd命令更改密码。我现在可以登录,但显然我没有更新我的 Gnome 密钥环密码。

我知道我的旧密码足够接近,可以在需要时暴力破解它,但我不知道如何在命令行上执行此操作。

是否可以在命令行上登录 Gnome 密钥环(Seahorse)? (或类似的东西)?

我的设置是 Debian 9,Gnome 3.22.2。

答案1

有一个 Python 脚本 ,gkeyring它允许与 GNOME 密钥环守护程序交互。

一个小型 Python 工具,用于 shell 访问 GNOME 密钥环。它提供了对密钥环项目的简单查询和创建。

用法

Example usage:

$ gkeyring.py --all

         List all keyring items in the default keyring.

$ gkeyring.py --id 12

         Get keyring item with ID 12 in default keyring.

$ gkeyring.py --name 'backup'

         Search for keyring item with name 'backup'. You can easily see item names e.g.
         in the overview of Seahorse application.

$ gkeyring.py -p [email protected] -i gajim=1 -1

         Search for keyring item with property 'account_name' with value '[email protected]'
         and property 'gajim' with integer value '1'. Output only the secret(s).

$ gkeyring.py --type network -p server=my.com,protocol=ftp --output user,secret
         Search for network keyring item with 'server' and 'protocol' properties. Output
         property 'user' followed by item's secret.

$ gkeyring.py --set --name 'foo' -p bar=baz --keyring login

         Create a new item in keyring 'login' with name 'foo' and property 'bar'.

$ gkeyring.py --delete --id 12

         Delete a keyring item with ID 12.

$ gkeyring.py --lock --keyring login

         Lock keyring 'login'.

答案2

所有命令行工具(包括在另一个答案中找到的工具)都无法与密钥环本身的密码进行交互,这可能是设计使然。您几乎肯定必须查看“gnome-keyring-daemon”的文件格式和代码并推出您自己的。这可能不太难,但您可能不必走那么远。

我能找到的最接近的工具称为“seahorse”,我不知道为什么它被称为“gnome-keyring-manager”或其他东西,但这是用于 gnome keyring 访问的 GUI。

它是一个 GUI,但我在不到二十次的尝试内就猜出了我的密码,所以没有费心去发现是否可以通过某种形式的 X 宏命令来自动化它。 (出于安全考虑,这在 Linux 上比 Windows 上要困难得多。)

编写一些 python 来直接访问密钥环文件本身可能更容易。使用现有工具很可能根本不可能实现这一点,而且这是设计使然。 gnome-keyring-daemon 可能不直接提供对密钥环的访问。也就是说,“海马”GUI 实际上可能不会提示输入密码和解锁内容,而是向守护进程发出请求,然后守护进程直接提示用户。

但这只是猜测。

相关内容